linux - libstdc++.so.6: version not found - NO admin rights -


i trying run executable file - satscanbatch, executable of satscan software - on remote machine terminal.

here error get

/usr/lib64/libstdc++.so.6: version 'glibcxx_3.4.15' not found

the problem similar these: /usr/lib/libstdc++.so.6: version `glibcxx_3.4.15' not found or how fix: /usr/lib/libstdc++.so.6: version `glibcxx_3.4.15' not found or /usr/lib64/libstdc++.so.6: version `glibcxx_3.4.15' not found

what different in case not have admin rights, cannot add libraries in usr/lib file. downloaded libstdc++.6.0.15 in remote repository, , want use execute file.

here possibilities tried

i) modify environment variable ld_library_path or ld_run_path or ld_preload path of libstdc++.so.6.0.15. --> did not change anything

ii) include library in static way

gcc satscanbatch -static-libstdc++ 

--> -static option not recognized, guess remote machine's gcc version old.

iii) try link file additional library:

gcc satscanbatch -l /path/library -l stdc++ 

or similarly

gcc satscanbatch -wl,-rpath,path/to/library 

--> error

/usr/bin/ld: warning: cannot create .eh_frame_hdr section, --eh-frame-hdr ignored. /usr/bin/ld: error in satscanbatch64(.eh_frame); no .eh_frame_hdr table created. /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../lib64/crt1.o: in function _start: (.text+0x20): undefined reference "main" collect2: ld returned 1 exit status 

iv) use patchelf link file , library --> cannot install patchelf because no admin rights

thank suggestion !

modify environment variable ld_library_path or ld_run_path or ld_preload path of libstdc++.so.6.0.15. --> did not change anything

what did try?

ld_library_path should set directory containing new libstdc++.so.6 not the file itself, , need export environment variable it's available child processes, not shell. , need symlink libstdc++.so.6 libstdc++.so.6.0.15 because dynamic loader going name, not libstdc++.so.6.0.15

ld_run_path used during linking bake path executable. nothing @ run-time when trying run executable. if use need set directory contain libstdc++.so.6 file on remote machine. again, needs set directory, not path of file.

ld_preload different again, , not want. use force particular shared library loaded before else when executable runs. can used pre-load newer libstdc++ it's better use ld_library_path set path @ run-time or ld_run_path set path @ link-time.

try link file additional library:

the commands showed nonsense, don't include objects in link, you're trying create executable out of nothing. that's why error undefined reference "main"

for scenario recommend using ld_library_path.