Cubicsdr: Build failure

Created on 4 Dec 2018  路  3Comments  路  Source: cjcliffe/CubicSDR

soapysdr-git 3:0.7.0.r5.g7716dfb-1
liquid-dsp-git v1.3.1.r232.gf7b9928c-1
libicns 0.8.1-5
wxgtk3-dev 3.1.1-1
gcc 8.2.1+20180831-1

[ 95%] Building CXX object CMakeFiles/CubicSDR.dir/external/cubicvr2/math/cubic_math.cpp.o [ 96%] Building CXX object CMakeFiles/CubicSDR.dir/src/sdr/SoapySDRThread.cpp.o [ 97%] Building CXX object CMakeFiles/CubicSDR.dir/src/ui/UITestCanvas.cpp.o [ 98%] Building CXX object CMakeFiles/CubicSDR.dir/src/ui/UITestContext.cpp.o [100%] Linking CXX executable x64/CubicSDR /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/FrequencyDialog.cpp.o: in function `std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::Range> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::Range>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::Range> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::Range> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::Range> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&)': FrequencyDialog.cpp:(.text._ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_N8SoapySDR5RangeEESt10_Select1stISA_ESt4lessIS5_ESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS7_EESL_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_[_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_N8SoapySDR5RangeEESt10_Select1stISA_ESt4lessIS5_ESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS7_EESL_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_]+0x91): undefined reference to `SoapySDR::Range::Range()' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::setSoapyDevice(SoapySDR::Device*)': SDRDeviceInfo.cpp:(.text+0x79a): undefined reference to `SoapySDR::Device::unmake(SoapySDR::Device*)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::getSoapyDevice()': SDRDeviceInfo.cpp:(.text+0x7cd): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::hasCORR(int, unsigned long)': SDRDeviceInfo.cpp:(.text+0x9f9): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::getAntennaNames[abi:cxx11](int, unsigned long)': SDRDeviceInfo.cpp:(.text+0xa82): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::getAntennaName[abi:cxx11](int, unsigned long)': SDRDeviceInfo.cpp:(.text+0xb27): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::getCurrentGain(int, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': SDRDeviceInfo.cpp:(.text+0xdac): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::~SDRDeviceInfo()': SDRDeviceInfo.cpp:(.text+0xf3b): undefined reference to `SoapySDR::Device::unmake(SoapySDR::Device*)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::getSampleRates(int, unsigned long)': SDRDeviceInfo.cpp:(.text+0x1807): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDRDeviceInfo.cpp.o: in function `SDRDeviceInfo::getGains[abi:cxx11](int, unsigned long)': SDRDeviceInfo.cpp:(.text+0x1ece): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/sdr/SDREnumerator.cpp.o: in function `SDREnumerator::enumerate_devices(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)': SDREnumerator.cpp:(.text+0x28ef): undefined reference to `SoapySDR::getAPIVersion[abi:cxx11]()' /usr/bin/ld: SDREnumerator.cpp:(.text+0x2989): undefined reference to `SoapySDR::getABIVersion[abi:cxx11]()' /usr/bin/ld: SDREnumerator.cpp:(.text+0x2a23): undefined reference to `SoapySDR::getRootPath[abi:cxx11]()' /usr/bin/ld: SDREnumerator.cpp:(.text+0x2b95): undefined reference to `SoapySDR::listModules(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x2d66): undefined reference to `SoapySDR::loadModule(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x2e26): undefined reference to `SoapySDR::Registry::listFindFunctions[abi:cxx11]()' /usr/bin/ld: SDREnumerator.cpp:(.text+0x2f04): undefined reference to `SoapySDR::listModules[abi:cxx11]()' /usr/bin/ld: SDREnumerator.cpp:(.text+0x315a): undefined reference to `SoapySDR::Device::enumerate(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x3666): undefined reference to `SoapySDR::Device::enumerate(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x4326): undefined reference to `SoapySDR::Device::make(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x493c): undefined reference to `SoapySDR::Device::unmake(SoapySDR::Device*)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x5ccf): undefined reference to `SoapySDR::Device::enumerate(std::map<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::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<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&)' /usr/bin/ld: SDREnumerator.cpp:(.text+0x5fb2): undefined reference to `SoapySDR::loadModules()' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/forms/SDRDevices/SDRDevices.cpp.o: in function `SDRDevicesDialog::refreshDeviceProperties()': SDRDevices.cpp:(.text+0x505b): undefined reference to `SoapySDR::ArgInfo::ArgInfo()' /usr/bin/ld: SDRDevices.cpp:(.text+0x54ed): undefined reference to `SoapySDR::ArgInfo::ArgInfo()' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/forms/SDRDevices/SDRDevices.cpp.o: in function `std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&)': SDRDevices.cpp:(.text._ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_N8SoapySDR7ArgInfoEESt10_Select1stISA_ESt4lessIS5_ESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJOS5_EESL_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_[_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_N8SoapySDR7ArgInfoEESt10_Select1stISA_ESt4lessIS5_ESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJOS5_EESL_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_]+0x71): undefined reference to `SoapySDR::ArgInfo::ArgInfo()' /usr/bin/ld: CMakeFiles/CubicSDR.dir/src/forms/SDRDevices/SDRDevices.cpp.o: in function `std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, SoapySDR::ArgInfo> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&)': SDRDevices.cpp:(.text._ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_N8SoapySDR7ArgInfoEESt10_Select1stISA_ESt4lessIS5_ESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS7_EESL_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_[_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_N8SoapySDR7ArgInfoEESt10_Select1stISA_ESt4lessIS5_ESaISA_EE22_M_emplace_hint_uniqueIJRKSt21piecewise_construct_tSt5tupleIJRS7_EESL_IJEEEEESt17_Rb_tree_iteratorISA_ESt23_Rb_tree_const_iteratorISA_EDpOT_]+0x50): undefined reference to `SoapySDR::ArgInfo::ArgInfo()' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/CubicSDR.dir/build.make:1332: x64/CubicSDR] Error 1 make[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/CubicSDR.dir/all] Error 2 make: *** [Makefile:130: all] Error 2

Most helpful comment

I had a few bugs fixes for the cmake work since the merge. And while I was at it, I decided to set those variables as well, I guess its easier that way. So If you pull and rebuild SoapySDR (if you are using master), this should be fine again.

All 3 comments

from SoapySDRConfig.cmake

# SoapySDR_LIBRARIES - SoapySDR development libraries
# SoapySDR_INCLUDE_DIRS - SoapySDR development includes

in cubic CMakeLists:

include_directories(${SOAPY_SDR_INCLUDE_DIR})
SET(OTHER_LIBRARIES ${SOAPY_SDR_LIBRARY} ${OTHER_LIBRARIES})

@cjcliffe The project config happened to set variables without the plural name, but it was just for internal use. So i'm no longer setting them after updating some cmake usage with target exports. Can you change these variables or do you want old ones back for "redundancies" sake?

I had a few bugs fixes for the cmake work since the merge. And while I was at it, I decided to set those variables as well, I guess its easier that way. So If you pull and rebuild SoapySDR (if you are using master), this should be fine again.

Cheers. That does work.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

hhrhhr picture hhrhhr  路  5Comments

blrichwine picture blrichwine  路  9Comments

gvanem picture gvanem  路  7Comments

ah1102 picture ah1102  路  5Comments

ifuchs picture ifuchs  路  3Comments