<div dir="ltr"><div>Make very sure that your program is actually linking in the library correctly. Linkers are weird and their interaction with build systems is often unpredictable and sometimes perverse. Find the symbols in the compiled library with nm and see that they aren't undefined. Use make VERBOSE=1 to see the library actually being used.</div><div><br></div><div>Nick<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Mar 27, 2019 at 2:55 PM John Medrano <<a href="mailto:john.d.medrano@gmail.com">john.d.medrano@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Thank you for the response.</div><div><br></div><div>I have added to CMakeList.txt:</div><div><br></div><div>find_library(SLADEW_LIB gnuradio-SLADEW)<br>if(NOT SLADEW_LIB)<br>  message(FATAL_ERROR "SLADEW library not found")<br>endif()</div><div><br></div><div>add later I add:</div><div><br></div><div>target_link_libraries(rfnoc_freqmod ${UHD_LIBRARIES} ${Boost_LIBRARIES} ${SLADEW_LIB})</div><div><br></div><div>It compiles fine but I still get same messages on start up.</div><div><br></div><div>Please advise:</div><div>John</div><div><br></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Mar 27, 2019 at 3:00 PM Nick Foster <<a href="mailto:bistromath@gmail.com" target="_blank">bistromath@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Your program needs to be linked against the library which your custom block controller is compiled into, if in fact your block is using a custom block controller. <div><br></div><div>uhd_usrp_probe and the other UHD utilities aren't linked against the custom library. This isn't generally a problem since the utilities and examples don't make use of your custom block. </div><div><br></div><div>Nick<br><br><div class="gmail_quote"><div dir="ltr">On Wed, Mar 27, 2019, 1:26 PM John Medrano via USRP-users <<a href="mailto:usrp-users@lists.ettus.com" target="_blank">usrp-users@lists.ettus.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Hello,</div><div><br></div><div>We have a custom RFNOC block that we have created. When we using GNURadio/Python everything works fine. When follow the examples in uhd/host/examples and generate an executable using C++, we get an error on execution. <br></div><div><br></div><div>We noticed that on start up the python program has no issue locating controllers for all our custom blocks (FreqMod):</div><div><br></div><div>2019-Mar-27 13:52:50.824938,0x7f36d447c740,log.cpp:460,2,UHD,linux; GNU C++ version 7.3.0; Boost_106501; UHD_3.14.0.0-220-g97935b15<br>2019-Mar-27 13:52:50.947109,0x7f36d447c740,x300_impl.cpp:400,2,X300,X300 initialization sequence...<br>2019-Mar-27 13:52:51.229789,0x7f36d447c740,x300_impl.cpp:1731,2,X300,Maximum frame size: 1472 bytes.<br>2019-Mar-27 13:52:51.279558,0x7f36d447c740,x300_impl.cpp:942,2,X300,Radio 1x clock: 200 MHz<br>2019-Mar-27 13:52:51.298743,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/DmaFIFO_0,Initializing block control (NOC ID: 0xF1F0D00000000000)<br>2019-Mar-27 13:52:51.336670,0x7f36d447c740,dma_fifo_block_ctrl_impl.cpp:44,2,0/DmaFIFO_0,BIST passed (Throughput: 1302 MB/s)<br>2019-Mar-27 13:52:51.387156,0x7f36d447c740,dma_fifo_block_ctrl_impl.cpp:44,2,0/DmaFIFO_0,BIST passed (Throughput: 1320 MB/s)<br>2019-Mar-27 13:52:51.430922,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/Radio_0,Initializing block control (NOC ID: 0x12AD100000000001)<br>2019-Mar-27 13:52:51.529115,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/Radio_1,Initializing block control (NOC ID: 0x12AD100000000001)<br>2019-Mar-27 13:52:51.628687,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/DUC_0,Initializing block control (NOC ID: 0xD0C0000000000000)<br>2019-Mar-27 13:52:51.666650,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/DUC_1,Initializing block control (NOC ID: 0xD0C0000000000000)<br>2019-Mar-27 13:52:51.704298,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/DDC_0,Initializing block control (NOC ID: 0xDDC0000000000000)<br>2019-Mar-27 13:52:51.741327,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/DDC_1,Initializing block control (NOC ID: 0xDDC0000000000000)<br>2019-Mar-27 13:52:51.920546,0x7f36d447c740,block_ctrl_base.cpp:60,2,0/FreqMod_0,Initializing block control (NOC ID: 0x2833DDBAA1C8E99C)</div><div><br></div><div>But when we run uhd_usrp_probe or our program we get:</div><div><br></div><div>2019-Mar-27 13:50:48.142811,0x7f489075e7c0,x300_impl.cpp:400,2,X300,X300 initialization sequence...<br>2019-Mar-27 13:50:48.424155,0x7f489075e7c0,x300_impl.cpp:1731,2,X300,Maximum frame size: 1472 bytes.<br>2019-Mar-27 13:50:48.494774,0x7f489075e7c0,x300_impl.cpp:942,2,X300,Radio 1x clock: 200 MHz<br>2019-Mar-27 13:50:48.509901,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/DmaFIFO_0,Initializing block control (NOC ID: 0xF1F0D00000000000)<br>2019-Mar-27 13:50:48.546377,0x7f489075e7c0,dma_fifo_block_ctrl_impl.cpp:44,2,0/DmaFIFO_0,BIST passed (Throughput: 1317 MB/s)<br>2019-Mar-27 13:50:48.596601,0x7f489075e7c0,dma_fifo_block_ctrl_impl.cpp:44,2,0/DmaFIFO_0,BIST passed (Throughput: 1304 MB/s)<br>2019-Mar-27 13:50:48.638428,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/Radio_0,Initializing block control (NOC ID: 0x12AD100000000001)<br>2019-Mar-27 13:50:48.736751,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/Radio_1,Initializing block control (NOC ID: 0x12AD100000000001)<br>2019-Mar-27 13:50:48.838951,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/DUC_0,Initializing block control (NOC ID: 0xD0C0000000000000)<br>2019-Mar-27 13:50:48.877079,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/DUC_1,Initializing block control (NOC ID: 0xD0C0000000000000)<br>2019-Mar-27 13:50:48.916659,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/DDC_0,Initializing block control (NOC ID: 0xDDC0000000000000)<br>2019-Mar-27 13:50:48.957457,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/DDC_1,Initializing block control (NOC ID: 0xDDC0000000000000)<br>2019-Mar-27 13:50:49.135814,0x7f489075e7c0,block_ctrl_base_factory.cpp:77,3,RFNOC,Can't find a block controller for key FreqMod, using default block<br> controller!<br>2019-Mar-27 13:50:49.139122,0x7f489075e7c0,block_ctrl_base.cpp:60,2,0/FreqMod_0,Initializing block control (NOC ID: 0x2833DDBAA1C8E99C)<br></div><div><br></div><div>The error we receive is directly related to the above. Please advise.</div><div><br></div><div>Thank you,</div><div>John<br></div></div></div></div>
_______________________________________________<br>
USRP-users mailing list<br>
<a href="mailto:USRP-users@lists.ettus.com" target="_blank">USRP-users@lists.ettus.com</a><br>
<a href="http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com" rel="noreferrer" target="_blank">http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com</a><br>
</blockquote></div></div>
</blockquote></div>
</blockquote></div>