Glad to hear you’ve made progress - these things can be frustrating to say the least….
I can’t really remember the issues for old gcc versions (it was 5 years or so ago since I last used 4.x gcc) but there are resources listing abi breakages https://gcc.gnu.org/wiki/Cxx11AbiCompatibility as far as I can remember it was just best to recompile all dependencies making sure the compiler flags didn’t ever differ – later gcc’s were better for this but using clang became our preferred solution.
Once you’ve gone down the line of rebuilding every dep then you may as well use a newer compiler rather than the one used by the particular linux packager.
It does mean you can’t just apt-get X-devel to get X (since that will be built with the wrong compiler and so may or may not work but regardless is a risk) which is a slight pain – but tbh linux packages are always a bit of a hacky solution and don’t fit well with anyone who is building software x-platform (or even X-linux variants)– ie they may make life a bit simpler for a trivial case but generally you need to control how all parts of your solution are built and short cuts like pre-built binaries tend to come back to bite you eventually.
A.
From: mahmood n [mailto:nt_mahmood@yahoo.com]
Sent: 19 October 2017 07:59
To: Alex Perry
I didn’t want to have another pain for “finding how the verbose variable is set in the Makefile”!!!
Not hard that one… just add it to the command line when you call make make verbose=1 …..
The libraries do exist, so why on earth it can not link :( mahmood@vb:AES$ g++ -fPIC -L/home/mahmood/boost_1_54_0/stage/lib -lboost_filesystem -lboost_system -m64 -o /home/mahmood/gpgpu-sim_distribution/ispass2009-benchmarks/bin/release/AES obj/x86_64/release/aescuda.cpp.o obj/x86_64/release/aesCudaUtils.cpp.o obj/x86_64/release/aesHost.cu.o -L/usr/local/cuda/lib64 -L/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src//../lib -L/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src//../common/lib/linux -L/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src//../../shared//lib -lcudart -L/usr/local/cuda/lib64 -L/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src//../lib -L/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src//../common/lib/linux -L/home/mahmood/NVIDIA_GPU_Computing_SDK/C/src//../../shared//lib -lcudart -lcutil_x86_64 -lshrutil_x86_64
…. Nope the computer is telling you they don’t exist on those paths as given – unfortunately the computer is more likely to be correct than you on this! You have a lot of library paths being set there – possibly you have multiple versions of boost libraries so its finding the wrong one first so you have a version conflict Possibly the simplest way is create a noddy test and play with the command line till you work out what the problem is http://rextester.com/live/JDVHT54458 That will give you similar compile errors without -lboost_filesystem -lboost_system added to the compile line. Obviously that is using clang rather than gcc which you are using but the syntax and principles are pretty much the same between any c++ compiler HTH A.