Boost logo

Boost Users :

Subject: [Boost-users] Many undefined references for libboost_filesystem
From: Mahmood N (nt_mahmood_at_[hidden])
Date: 2017-10-13 18:24:21


Hi,

I am trying to build a suite as described at https://github.com/gpgpu-sim/ispass2009-benchmarks

Some of the benchmarks use boost. For example, AES/Makefile has

 

LINKFLAGS       := -L$(BOOST_LIB) -lboost_filesystem

 

Also, the Makefile.ispass-2009 in the root folder has the following settings

 

SETENV=export BINDIR=$(BINDIR); \

           export ROOTDIR=$(NVIDIA_COMPUTE_SDK_LOCATION)/C/src/; \

           export BINSUBDIR=$(BINSUBDIR); \

           export BOOST_LIB=/home/mahmood/boost_1_46_0/lib; \

           export BOOST_ROOT=/home/mahmood/boost_1_46_0/include; \

           export BOOST_VER=""; \

           export OPENMPI_BINDIR=/usr/bin/;

 

 

I manually built boost_1_46_0 with the steps described at http://www.boost.org/doc/libs/1_46_1/doc/html/bbv2/installation.html

The installations was successful and I can see lib/ and include/ folders

 

mahmood_at_vb:boost_1_46_0$ find lib -name libboost_system*

lib/libboost_system.so.1.46.0

lib/libboost_system.so

lib/libboost_system.a

mahmood_at_vb:boost_1_46_0$ find lib -name libboost_filesystem*

lib/libboost_filesystem.so

lib/libboost_filesystem.a

lib/libboost_filesystem.so.1.46.0

 

 

 

However, as I run “make -f Makefile.ispass-2009”, I get many undefined errors about libboost_filesystem. Please see below

 

 

 

export BINDIR=/home/mahmood/gpgpu-sim_distribution/ispass2009-benchmarks/bin/; export ROOTDIR=/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src/; export BINSUBDIR=release; export BOOST_LIB=/home/mahmood/boost_1_46_0/lib; export BOOST_ROOT=/home/mahmood/boost_1_46_0/include; export BOOST_VER=""; export OPENMPI_BINDIR=/usr/bin/;  make noinline=0 -C AES

make[1]: Entering directory `/home/mahmood/gpgpu-sim_distribution/ispass2009-benchmarks/AES'

obj/x86_64/release/aesCudaUtils.cpp.o: In function `readFromFileForm(boost::filesystem3::path&, std::vector<unsigned int, std::allocator<unsigned int> >&)':

aesCudaUtils.cpp:(.text+0x97d): undefined reference to `boost::filesystem3::detail::status(boost::filesystem3::path const&, boost::system::error_code*)'

obj/x86_64/release/aesCudaUtils.cpp.o: In function `readFromFileNotForm(boost::filesystem3::path&, char*, unsigned int)':

aesCudaUtils.cpp:(.text+0xe81): undefined reference to `boost::filesystem3::detail::status(boost::filesystem3::path const&, boost::system::error_code*)'

obj/x86_64/release/aesCudaUtils.cpp.o: In function `getFileSize(boost::filesystem3::path&)':

aesCudaUtils.cpp:(.text+0x1244): undefined reference to `boost::filesystem3::detail::status(boost::filesystem3::path const&, boost::system::error_code*)'

aesCudaUtils.cpp:(.text+0x1257): undefined reference to `boost::filesystem3::detail::file_size(boost::filesystem3::path const&, boost::system::error_code*)'

obj/x86_64/release/aesCudaUtils.cpp.o: In function `initAesCuda(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unsigned char*, unsigned int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, char*, unsigned int)':

aesCudaUtils.cpp:(.text+0x1c54): undefined reference to `boost::filesystem3::path::wchar_t_codecvt_facet()'

aesCudaUtils.cpp:(.text+0x1cab): undefined reference to `boost::filesystem3::path::wchar_t_codecvt_facet()'

aesCudaUtils.cpp:(.text+0x1ce5): undefined reference to `boost::filesystem3::detail::status(boost::filesystem3::path const&, boost::system::error_code*)'

aesCudaUtils.cpp:(.text+0x1d02): undefined reference to `boost::filesystem3::detail::status(boost::filesystem3::path const&, boost::system::error_code*)'

obj/x86_64/release/aesCudaUtils.cpp.o: In function `_GLOBAL__sub_I_aesCudaUtils.cpp':

aesCudaUtils.cpp:(.text.startup+0x2b): undefined reference to `boost::system::generic_category()'

aesCudaUtils.cpp:(.text.startup+0x37): undefined reference to `boost::system::generic_category()'

aesCudaUtils.cpp:(.text.startup+0x43): undefined reference to `boost::system::system_category()'

obj/x86_64/release/aescuda.cpp.o: In function `_GLOBAL__sub_I_aescuda.cpp':

aescuda.cpp:(.text.startup+0x68b): undefined reference to `boost::system::generic_category()'

aescuda.cpp:(.text.startup+0x697): undefined reference to `boost::system::generic_category()'

aescuda.cpp:(.text.startup+0x6a3): undefined reference to `boost::system::system_category()'

collect2: ld returned 1 exit status

make[1]: *** [/home/mahmood/gpgpu-sim_distribution/ispass2009-benchmarks/bin//release/AES] Error 1

make[1]: Leaving directory `/home/mahmood/gpgpu-sim_distribution/ispass2009-benchmarks/AES'

make: *** [default] Error 2

 

 

 

Any thought on that?

Regards,
Mahmood



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net