Hi Sean,

GNU Radio is not handling "X" or anything else in names with special
care. (Yes, there's a few blocks that exist as source code templates
that we run python scripts over in the build process to actually
generate the _c, _f, _b and so on, but this is really not the case here).

This looks much more like a linking error – did you add "FILTER" to the
list of "GR_REQUIRED_COMPONENTS" in the main CMakeLists.txt of your OOT?

Note that "howto" sounds a bit like our slightly outdated introduction
to writing OOT blocks – things should work, but I personally prefer the
newer, better-maintained http://tutorials.gnuradio.org .


Best regards,

Marcus


On 17.12.2016 00:35, Sean Horton wrote:
> I have already made some OOT blocks, so I should have the basic
> process down, but I can't find out why using any blocks in a hier
> block with X in the name, which indicates an input, output, and/or
> parameter can be of multiple types, results in undefined references to
> the make functions.
>
> I have tried using the not_bb block in gnuradio/blocks,
> diff_encoder_bb in gnuradio/digital, and freq_xlating_fir_filter_ccf
> in gnuradio/filter. I can use these blocks in python without incident,
> but making a hier block using those types of blocks is not working. I
> run the built in default tests, and they all fail because of an
> undefined references to code in gnuradio, which I have already built
> from source.
>
> For example, this is from the test logs:
>
> undefined symbol:
> _ZN2gr6filter27freq_xlating_fir_filter_ccf4makeEiRKSt6vectorIfSaIfEEdd
>
> After using c++filt:
>
> gr::filter::freq_xlating_fir_filter_ccf::make(int, std::vector<float,
> std::allocator<float> > const&, double, double)
>
> This is the entire contents of a source file I've made trying to
> resolve this issue:
>
> #include "test_xx_impl.h"                                            
>            
>                                                                      
>            
> #ifdef HAVE_CONFIG_H                                                  
>           
> #include "config.h"                                                  
>            
> #endif                                                                
>           
>                                                                      
>            
> #include <gnuradio/filter/freq_xlating_fir_filter_ccf.h>              
>           
> #include <gnuradio/io_signature.h>                                    
>           
> namespace gr {                                                        
>           
> namespace howto {                                                    
>            
>                                                                      
>             
> test_xx::sptr test_xx::make() {                                      
>            
>   return gnuradio::get_initial_sptr(new test_xx_impl());              
>           
> }                                                                    
>            
>                                                                      
>            
> test_xx_impl::test_xx_impl()                                          
>           
>     : gr::hier_block2("test_xx", gr::io_signature::make(1, 1,
> sizeof(uint8_t)),  
>                       gr::io_signature::make(1, 1, sizeof(uint8_t))) {
>           
>   filter::freq_xlating_fir_filter_ccf::sptr testing =                
>            
>       filter::freq_xlating_fir_filter_ccf::make(1, {1}, 10000,
> 1000000);         
> }                                                                    
>            
>  41                                                                  
>                
>  42 } /* namespace howto */                                          
>                
>  43 } /* namespace gr */   
>
> Regards,
> Sean
>
> -- 
> Sean Horton
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to