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

Reply via email to