ROOT build error with -DTMVA-GPU

ROOT Version: 6.18.04
Platform: Linux 4.19
Compiler: GCC 9


Flags used during configuration - cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1 -Dcuda=ON -Dpyroot_experimental=ON -Droot7=ON -DCMAKE_CXX_STANDARD=14 -Dtmva-gpu=ON -DCMAKE_BUILD_TYPE=Debug ../

I know it is the tmva-gpu flag causing the build error because I tried building without that particular flag and that worked.

Error logs -

[ 95%] Building CXX object graf3d/eve/CMakeFiles/Eve.dir/src/TEveTextGL.cxx.o
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<short>(void*, char const*, short const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<float>(void*, char const*, float const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<unsigned int>(void*, char const*, unsigned int const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<unsigned long>(void*, char const*, unsigned long const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Classification.cxx.o: in function `TString TMVA::OptionMap::GetValue<TString>(TString const&) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/OptionMap.h:146: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Classification.cxx.o:/home/reik/test/root-6.18.04/build-dir/include/TMVA/OptionMap.h:81: more undefined references to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Configurable.cxx.o: in function `TMVA::Configurable::PrintOptions() const':
/home/reik/test/root-6.18.04/tmva/tmva/src/Configurable.cxx:313: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: /home/reik/test/root-6.18.04/tmva/tmva/src/Configurable.cxx:326: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Configurable.cxx.o: in function `void TMVA::Tools::AddAttr<int>(void*, char const*, int const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/CrossValidation.cxx.o: in function `TMVA::Option<unsigned int>::GetValue(int) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/CrossValidation.cxx.o: in function `TMVA::Option<TString>::GetValue(int) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DataSetFactory.cxx.o: in function `TMVA::Option<float>::GetValue(int) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DecisionTreeNode.cxx.o: in function `TMVA::DecisionTreeNode::SetPurity()':
/home/reik/test/root-6.18.04/tmva/tmva/src/DecisionTreeNode.cxx:198: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DecisionTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<double>(void*, char const*, double const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DecisionTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<bool>(void*, char const*, bool const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/GeneticFitter.cxx.o: in function `TMVA::Option<double>::GetValue(int) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/GeneticPopulation.cxx.o: in function `TMVA::GeneticPopulation::VariableDistribution(int, int, int, int)':
/home/reik/test/root-6.18.04/tmva/tmva/src/GeneticPopulation.cxx:259: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodANNBase.cxx.o: in function `void TMVA::Tools::AddAttr<TString>(void*, char const*, TString const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodBDT.cxx.o: in function `TMVA::MethodBDT::OptimizeTuningParameters(TString, TString)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MethodBDT.cxx:1107: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodBDT.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::Types::EAnalysisType>(void*, char const*, TMVA::Types::EAnalysisType const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodCategory.cxx.o: in function `void TMVA::Tools::AddAttr<TCut>(void*, char const*, TCut const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodCFMlpANN.cxx.o: in function `TMVA::MethodCFMlpANN::AddWeightsXMLTo(void*) const':
/home/reik/test/root-6.18.04/tmva/tmva/src/MethodCFMlpANN.cxx:546: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root-6.18.04/tmva/tmva/src/MethodCFMlpANN.cxx:552: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root-6.18.04/tmva/tmva/src/MethodCFMlpANN.cxx:563: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodCFMlpANN.cxx.o:/home/reik/test/root-6.18.04/tmva/tmva/src/MethodCFMlpANN.cxx:573: more undefined references to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::MethodSVM::OptimizeTuningParameters(TString, TString)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MethodSVM.cxx:903: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::MethodSVM::SetTuneParameters(std::map<TString, double, std::less<TString>, std::allocator<std::pair<TString const, double> > >)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MethodSVM.cxx:937: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root-6.18.04/tmva/tmva/src/MethodSVM.cxx:976: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::MethodSVM::GetMGamma(std::vector<float, std::allocator<float> > const&)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MethodSVM.cxx:1033: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `void TMVA::Tools::AddAttr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(void*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::Option<unsigned short>::GetValue(int) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::Option<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::GetValue(int) const':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::MsgLogger(TObject const*, TMVA::EMsgType)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:83: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::MsgLogger(TObject const*, TMVA::EMsgType)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:83: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::MsgLogger(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, TMVA::EMsgType)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:95: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::MsgLogger(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, TMVA::EMsgType)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:95: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::MsgLogger(TMVA::EMsgType)':
/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:107: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o:/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:107: more undefined references to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::Send()':
/home/reik/test/root-6.18.04/tmva/tmva/src/MsgLogger.cxx:197: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Node.cxx.o: in function `void TMVA::Tools::AddAttr<char>(void*, char const*, char const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::PDF::EInterpolateMethod>(void*, char const*, TMVA::PDF::EInterpolateMethod const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::KDEKernel::EKernelType>(void*, char const*, TMVA::KDEKernel::EKernelType const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::KDEKernel::EKernelIter>(void*, char const*, TMVA::KDEKernel::EKernelIter const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::KDEKernel::EKernelBorder>(void*, char const*, TMVA::KDEKernel::EKernelBorder const&, int)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Tools.cxx.o:/home/reik/test/root-6.18.04/tmva/tmva/src/Tools.cxx:1237: more undefined references to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/VariableGaussTransform.cxx.o: in function `TMVA::VariableGaussTransform::GetCumulativeDist(std::vector<TMVA::Event*, std::allocator<TMVA::Event*> > const&)':
/home/reik/test/root-6.18.04/tmva/tmva/src/VariableGaussTransform.cxx:301: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/VariableImportance.cxx.o: in function `void TMVA::OptionMap::Binding::ParseValue<double>(TString&, double&, bool)':
/home/reik/test/root-6.18.04/build-dir/include/TMVA/OptionMap.h:81: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/VariablePCATransform.cxx.o: in function `TMVA::VariablePCATransform::CalculatePrincipalComponents(std::vector<TMVA::Event*, std::allocator<TMVA::Event*> > const&)':
/home/reik/test/root-6.18.04/tmva/tmva/src/VariablePCATransform.cxx:238: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
collect2: error: ld returned 1 exit status
make[2]: *** [tmva/tmva/CMakeFiles/TMVA.dir/build.make:2943: lib/libTMVA.so] Error 1
make[1]: *** [CMakeFiles/Makefile2:27601: tmva/tmva/CMakeFiles/TMVA.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

What OS are you using? Are you using the system compiler or your own compiler? It’s apparently a problem of ABI incompatibility between the compiler and libstdc++.

What OS are you using?

I am using Manjaro.

Are you using the system compiler or your own compiler?

I was using the GCC 9.1.0 that is shipped with Manjaro.

[reik@reik-msi ~]$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/9.1.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --enable-multilib --disable-werror --enable-checking=release --enable-default-pie --enable-default-ssp --enable-cet=auto
Thread model: posix
gcc version 9.1.0 (GCC)

It’s apparently a problem of ABI incompatibility between the compiler and libstdc++.

Using clang also causes the build to fail.

[ 95%] Building CXX object roofit/roofit/CMakeFiles/RooFit.dir/src/RooTFnPdfBinding.cxx.o
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<short>(void*, char const*, short const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<float>(void*, char const*, float const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<unsigned int>(void*, char const*, unsigned int const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/BinarySearchTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<unsigned long>(void*, char const*, unsigned long const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Classification.cxx.o: in function `TString TMVA::OptionMap::GetValue<TString>(TString const&) const':
/home/reik/test/root/build-dir2/include/TMVA/OptionMap.h:146: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Classification.cxx.o:/home/reik/test/root/build-dir2/include/TMVA/OptionMap.h:81: more undefined references to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Configurable.cxx.o: in function `TMVA::Configurable::PrintOptions() const':
/home/reik/test/root/tmva/tmva/src/Configurable.cxx:313: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/Configurable.cxx:326: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Configurable.cxx.o: in function `void TMVA::Tools::AddAttr<int>(void*, char const*, int const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/CrossValidation.cxx.o: in function `TMVA::Option<TString>::GetValue(int) const':
/home/reik/test/root/build-dir2/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/CrossValidation.cxx.o: in function `TMVA::Option<unsigned int>::GetValue(int) const':
/home/reik/test/root/build-dir2/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DataSetFactory.cxx.o: in function `TMVA::Option<float>::GetValue(int) const':
/home/reik/test/root/build-dir2/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DecisionTreeNode.cxx.o: in function `TMVA::DecisionTreeNode::SetPurity()':
/home/reik/test/root/tmva/tmva/src/DecisionTreeNode.cxx:198: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DecisionTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<double>(void*, char const*, double const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/DecisionTreeNode.cxx.o: in function `void TMVA::Tools::AddAttr<bool>(void*, char const*, bool const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/GeneticFitter.cxx.o: in function `TMVA::Option<double>::GetValue(int) const':
/home/reik/test/root/build-dir2/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/GeneticPopulation.cxx.o: in function `TMVA::GeneticPopulation::VariableDistribution(int, int, int, int)':
/home/reik/test/root/tmva/tmva/src/GeneticPopulation.cxx:259: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodANNBase.cxx.o: in function `void TMVA::Tools::AddAttr<TString>(void*, char const*, TString const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: [ 95%] Building CXX object roofit/roofit/CMakeFiles/RooFit.dir/src/RooTMathReg.cxx.o
CMakeFiles/TMVA.dir/src/MethodBDT.cxx.o: in function `TMVA::MethodBDT::OptimizeTuningParameters(TString, TString)':
/home/reik/test/root/tmva/tmva/src/MethodBDT.cxx:1107: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodBDT.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::Types::EAnalysisType>(void*, char const*, TMVA::Types::EAnalysisType const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodCategory.cxx.o: in function `void TMVA::Tools::AddAttr<TCut>(void*, char const*, TCut const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodCFMlpANN.cxx.o: in function `TMVA::MethodCFMlpANN::AddWeightsXMLTo(void*) const':
/home/reik/test/root/tmva/tmva/src/MethodCFMlpANN.cxx:546: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodCFMlpANN.cxx:552: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodCFMlpANN.cxx:563: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodCFMlpANN.cxx.o:/home/reik/test/root/tmva/tmva/src/MethodCFMlpANN.cxx:573: more undefined references to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::MethodSVM::GetMGamma(std::vector<float, std::allocator<float> > const&)':
/home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:1033: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::MethodSVM::OptimizeTuningParameters(TString, TString)':
/home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:817: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:827: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:852: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:878: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:903: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::MethodSVM::SetTuneParameters(std::map<TString, double, std::less<TString>, std::allocator<std::pair<TString const, double> > >)':
/home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:937: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MethodSVM.cxx:976: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `void TMVA::Tools::AddAttr<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(void*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::Option<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::GetValue(int) const':
/home/reik/test/root/build-dir2/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MethodSVM.cxx.o: in function `TMVA::Option<unsigned short>::GetValue(int) const':
/home/reik/test/root/build-dir2/include/TMVA/Option.h:177: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `MsgLogger':
/home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:79: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:79: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:91: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:91: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: /home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:103: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o:/home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:103: more undefined references to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/MsgLogger.cxx.o: in function `TMVA::MsgLogger::Send()':
/home/reik/test/root/tmva/tmva/src/MsgLogger.cxx:197: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Node.cxx.o: in function `void TMVA::Tools::AddAttr<char>(void*, char const*, char const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::PDF::EInterpolateMethod>(void*, char const*, TMVA::PDF::EInterpolateMethod const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::KDEKernel::EKernelType>(void*, char const*, TMVA::KDEKernel::EKernelType const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::KDEKernel::EKernelIter>(void*, char const*, TMVA::KDEKernel::EKernelIter const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/PDF.cxx.o: in function `void TMVA::Tools::AddAttr<TMVA::KDEKernel::EKernelBorder>(void*, char const*, TMVA::KDEKernel::EKernelBorder const&, int)':
/home/reik/test/root/build-dir2/include/TMVA/Tools.h:357: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/Tools.cxx.o:/home/reik/test/root/tmva/tmva/src/Tools.cxx:1237: more undefined references to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()' follow
/usr/bin/ld: CMakeFiles/TMVA.dir/src/VariableGaussTransform.cxx.o: in function `TMVA::VariableGaussTransform::GetCumulativeDist(std::vector<TMVA::Event*, std::allocator<TMVA::Event*> > const&)':
/home/reik/test/root/tmva/tmva/src/VariableGaussTransform.cxx:301: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/VariableImportance.cxx.o: in function `void TMVA::OptionMap::Binding::ParseValue<double>(TString&, double&, bool)':
/home/reik/test/root/build-dir2/include/TMVA/OptionMap.h:81: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/bin/ld: CMakeFiles/TMVA.dir/src/VariablePCATransform.cxx.o: in function `TMVA::VariablePCATransform::CalculatePrincipalComponents(std::vector<TMVA::Event*, std::allocator<TMVA::Event*> > const&)':
/home/reik/test/root/tmva/tmva/src/VariablePCATransform.cxx:238: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()'
[ 95%] Building CXX object roofit/roofit/CMakeFiles/RooFit.dir/src/RooUnblindCPAsymVar.cxx.o
clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [tmva/tmva/CMakeFiles/TMVA.dir/build.make:2943: lib/libTMVA.so] Error 1
make[1]: *** [CMakeFiles/Makefile2:27601: tmva/tmva/CMakeFiles/TMVA.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

What version of CUDA do you have? As far as I know, Nvidia does not support GCC 9.x yet.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.