|
From: | Derek Kozel |
Subject: | Re: [Discuss-gnuradio] [VOLK] Problem building on Fedora 22 |
Date: | Fri, 28 Oct 2016 18:05:29 -0700 |
JoeThanks,Any ideas? The make output is below.I've tried to verify that the CMake configuration is reasonable and as far as I can tell the linker is getting the correct commands.Hi,I'm having a problem building Volk 1.3 or GNU Radio version than 3.7.10 (any) or 3.7.9.3. Versions 3.7.9.2 and older seem to work fine. This is on a Fedora 22 system.
I'm getting a ton of undefined reference errors to various Boost functions. I originally thought maybe the installed version of Boost was not up to date so I removed the version from the repo and built and installed Boost 1.62 from source. No such luck. I've verified that the libraries are installed in the correct locations and used the nm tool to try to validate that the functions exist in the .so files, but that's a bit over my head.
[ 23%] Linking CXX executable volk_profile
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: validation_error::validation_ error(boost::program_options:: validation_error::kind_t, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > const&, int)':
volk_profile.cc:(.text._ZN5boost15program_ options16validation_ errorC2ENS1_6kind_tERKNSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESA_i[_ ZN5boost15program_ options16validation_ errorC5ENS1_6kind_tERKNSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESA_i]+0x21): undefined reference to `boost::program_options:: validation_error::get_ template[abi:cxx11](boost:: program_options::validation_ error::kind_t)'
volk_profile.cc:(.text._ZN5boost15program_ options16validation_ errorC2ENS1_6kind_tERKNSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESA_i[_ ZN5boost15program_ options16validation_ errorC5ENS1_6kind_tERKNSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESA_i]+0x39): undefined reference to `boost::program_options:: error_with_option_name::error_ with_option_name(std::__cxx11: :basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > const&, int)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: typed_value<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::xparse(boost::any&, std::vector<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const':
volk_profile.cc:(.text._ZNK5boost15program_ options11typed_valueINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEEcE6xparseERNS_ 3anyERKSt6vectorIS7_SaIS7_EE[_ ZNK5boost15program_ options11typed_valueINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEEcE6xparseERNS_ 3anyERKSt6vectorIS7_SaIS7_EE]+ 0x1c): undefined reference to `boost::program_options:: validate(boost::any&, std::vector<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> >*, int)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: typed_value<bool, char>::xparse(boost::any&, std::vector<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) const':
volk_profile.cc:(.text._ZNK5boost15program_ options11typed_ valueIbcE6xparseERNS_ 3anyERKSt6vectorINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESaISB_EE[_ ZNK5boost15program_ options11typed_ valueIbcE6xparseERNS_ 3anyERKSt6vectorINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESaISB_EE]+ 0x1c): undefined reference to `boost::program_options:: validate(boost::any&, std::vector<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool*, int)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: basic_command_line_parser< char>::extra_parser(boost:: function1<std::pair<std::__ cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > >, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > const&>)':
volk_profile.cc:(.text._ZN5boost15program_ options25basic_command_line_ parserIcE12extra_parserENS_ 9function1ISt4pairINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESA_ERKSA_EE[_ ZN5boost15program_ options25basic_command_line_ parserIcE12extra_parserENS_ 9function1ISt4pairINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEESA_ERKSA_EE]+ 0x46): undefined reference to `boost::program_options:: detail::cmdline::set_ additional_parser(boost:: function1<std::pair<std::__ cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > >, std::__cxx11::basic_string< char, std::char_traits<char>, std::allocator<char> > const&>)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: basic_command_line_parser< char>::basic_command_line_ parser(int, char const* const*)':
volk_profile.cc:(.text._ZN5boost15program_ options25basic_command_line_ parserIcEC2EiPKPKc[_ ZN5boost15program_ options25basic_command_line_ parserIcEC5EiPKPKc]+0x19c): undefined reference to `boost::program_options::to_ internal(std::__cxx11::basic_ string<char, std::char_traits<char>, std::allocator<char> > const&)'
volk_profile.cc:(.text._ZN5boost15program_ options25basic_command_line_ parserIcEC2EiPKPKc[_ ZN5boost15program_ options25basic_command_line_ parserIcEC5EiPKPKc]+0x1e7): undefined reference to `boost::program_options:: detail::cmdline::cmdline(std:: vector<std::__cxx11::basic_ string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: typed_value<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, char>::name() const':
volk_profile.cc:(.text._ZNK5boost15program_ options11typed_valueINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEEcE4nameEv[_ ZNK5boost15program_ options11typed_valueINSt7__ cxx1112basic_stringIcSt11char_ traitsIcESaIcEEEcE4nameEv]+ 0x1d): undefined reference to `boost::program_options::arg[ abi:cxx11]'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: typed_value<int, char>::name() const':
volk_profile.cc:(.text._ZNK5boost15program_ options11typed_ valueIicE4nameEv[_ ZNK5boost15program_ options11typed_ valueIicE4nameEv]+0x1d): undefined reference to `boost::program_options::arg[ abi:cxx11]'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: typed_value<float, char>::name() const':
volk_profile.cc:(.text._ZNK5boost15program_ options11typed_ valueIfcE4nameEv[_ ZNK5boost15program_ options11typed_ valueIfcE4nameEv]+0x1d): undefined reference to `boost::program_options::arg[ abi:cxx11]'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `boost::program_options:: typed_value<bool, char>::name() const':
volk_profile.cc:(.text._ZNK5boost15program_ options11typed_ valueIbcE4nameEv[_ ZNK5boost15program_ options11typed_ valueIbcE4nameEv]+0x1d): undefined reference to `boost::program_options::arg[ abi:cxx11]'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `main':
volk_profile.cc:(.text.startup+0x4d): undefined reference to `boost::program_options:: options_description::options_ description(std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned int)'
volk_profile.cc:(.text.startup+0x4f1): undefined reference to `boost::program_options:: abstract_variables_map:: operator[](std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
volk_profile.cc:(.text.startup+0x5b3): undefined reference to `boost::program_options:: abstract_variables_map:: operator[](std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
volk_profile.cc:(.text.startup+0x60a): undefined reference to `boost::program_options:: abstract_variables_map:: operator[](std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
volk_profile.cc:(.text.startup+0x6b2): undefined reference to `boost::program_options:: abstract_variables_map:: operator[](std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
volk_profile.cc:(.text.startup+0x6fd): undefined reference to `boost::program_options:: abstract_variables_map:: operator[](std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
CMakeFiles/volk_profile.dir/volk_profile.cc.o:volk_ profile.cc:(.text.startup+ 0x75d): more undefined references to `boost::program_options:: abstract_variables_map:: operator[](std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const' follow
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `void boost::program_options:: validate<float, char>(boost::any&, std::vector<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, float*, long)':
volk_profile.cc:(.text._ZN5boost15program_ options8validateIfcEEvRNS_ 3anyERKSt6vectorINSt7__ cxx1112basic_stringIT0_ St11char_traitsIS7_ESaIS7_ EEESaISB_EEPT_l[_ ZN5boost15program_ options8validateIfcEEvRNS_ 3anyERKSt6vectorINSt7__ cxx1112basic_stringIT0_ St11char_traitsIS7_ESaIS7_ EEESaISB_EEPT_l]+0x4da): undefined reference to `boost::program_options:: invalid_option_value::invalid_ option_value(std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o: In function `void boost::program_options:: validate<int, char>(boost::any&, std::vector<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, int*, long)':
volk_profile.cc:(.text._ZN5boost15program_ options8validateIicEEvRNS_ 3anyERKSt6vectorINSt7__ cxx1112basic_stringIT0_ St11char_traitsIS7_ESaIS7_ EEESaISB_EEPT_l[_ ZN5boost15program_ options8validateIicEEvRNS_ 3anyERKSt6vectorINSt7__ cxx1112basic_stringIT0_ St11char_traitsIS7_ESaIS7_ EEESaISB_EEPT_l]+0x3f8): undefined reference to `boost::program_options:: invalid_option_value::invalid_ option_value(std::__cxx11:: basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/volk_profile.dir/volk_profile.cc.o:(.rodata._ ZTVN5boost16exception_ detail19error_info_ injectorINS_15program_ options20invalid_option_ valueEEE[_ ZTVN5boost16exception_ detail19error_info_ injectorINS_15program_ options20invalid_option_ valueEEE]+0x30): undefined reference to `boost::program_options:: error_with_option_name:: substitute_placeholders(std::_ _cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
CMakeFiles/volk_profile.dir/volk_profile.cc.o:(.rodata._