/localtmp/uex/bin/uex: error while loading shared libraries: requires glibc 2.5or later dynamic linker
I don't get this at home, where I have control to update automatically, but I do at work, where they are still running an old version of RHEL 4. I tried downloading and building it, but I couldn't successfully do so.
To be honest, I don't have much clue about the build process, but it fails on these (in case it helps some software guru):
make[4]: Nothing to be done for 'rtld-all'.
make[4]: Leaving directory '/localtmp/glibc/glibc-2.10.1/time'
make[3]: Leaving directory '/localtmp/glibc/glibc-2.10.1/elf'
make[2]: Leaving directory '/localtmp/glibc/glibc-2.10.1/elf'
gcc -shared -static-libgcc -Wl,-O1 -Wl,-z,defs -Wl,-dynamic-linker=/localtmp/glibc/pile/lib/ld-linux.so.2 -B/localtmp/glibc/pile/csu/ -Wl,--version-script=/localtmp/glibc/pile/libc.map -Wl,-soname=libc.so.6 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both -nostdlib -nostartfiles -e __libc_main -L/localtmp/glibc/pile -L/localtmp/glibc/pile/math -L/localtmp/glibc/pile/elf -L/localtmp/glibc/pile/dlfcn -L/localtmp/glibc/pile/nss -L/localtmp/glibc/pile/nis -L/localtmp/glibc/pile/rt -L/localtmp/glibc/pile/resolv -L/localtmp/glibc/pile/crypt -L/localtmp/glibc/pile/nptl -Wl,-rpath-link=/localtmp/glibc/pile:/localtmp/glibc/pile/math:/localtmp/glibc/pile/elf:/localtmp/glibc/pile/dlfcn:/localtmp/glibc/pile/nss:/localtmp/glibc/pile/nis:/localtmp/glibc/pile/rt:/localtmp/glibc/pile/resolv:/localtmp/glibc/pile/crypt:/localtmp/glibc/pile/nptl -o /localtmp/glibc/pile/libc.so -T /localtmp/glibc/pile/shlib.lds /localtmp/glibc/pile/csu/abi-note.o /localtmp/glibc/pile/elf/soinit.os /localtmp/glibc/pile/libc_pic.os /localtmp/glibc/pile/elf/sofini.os /localtmp/glibc/pile/elf/interp.os /localtmp/glibc/pile/elf/ld.so -lgcc
/localtmp/glibc/pile/libc_pic.os: In function '__libc_fork':
/localtmp/glibc/glibc-2.10.1/posix/../nptl/sysdeps/unix/sysv/linux/i386/../fork.c:79: undefined reference to '__sync_bool_compare_and_swap_4'
/localtmp/glibc/pile/libc_pic.os: In function 'fallocate':
/localtmp/glibc/glibc-2.10.1/io/../sysdeps/unix/sysv/linux/i386/fallocate.c:31:undefined reference to '__call_fallocate'
/localtmp/glibc/pile/libc_pic.os: In function '__fallocate64_l64':
/localtmp/glibc/glibc-2.10.1/io/../sysdeps/unix/sysv/linux/i386/fallocate64.c:31: undefined reference to '__call_fallocate'
/localtmp/glibc/pile/libc_pic.os: In function '__nscd_drop_map_ref':
/localtmp/glibc/glibc-2.10.1/nscd/nscd-client.h:320: undefined reference to '__sync_fetch_and_add_4'
/localtmp/glibc/pile/libc_pic.os: In function 'nscd_getpw_r':
/localtmp/glibc/glibc-2.10.1/nscd/nscd_getpw_r.c:232: undefined reference to '__sync_fetch_and_add_4'
/localtmp/glibc/pile/libc_pic.os: In function '__nscd_drop_map_ref':
/localtmp/glibc/glibc-2.10.1/nscd/nscd-client.h:320: undefined reference to '__sync_fetch_and_add_4'
/localtmp/glibc/pile/libc_pic.os: In function 'nscd_getgr_r':
/localtmp/glibc/glibc-2.10.1/nscd/nscd_getgr_r.c:321: undefined reference to '__sync_fetch_and_add_4'
/localtmp/glibc/pile/libc_pic.os: In function '__nscd_drop_map_ref':
/localtmp/glibc/glibc-2.10.1/nscd/nscd-client.h:320: undefined reference to '__sync_fetch_and_add_4'
/localtmp/glibc/pile/libc_pic.os:/localtmp/glibc/glibc-2.10.1/nscd/nscd_gethst_r.c:413: more undefined references to '__sync_fetch_and_add_4' follow
/localtmp/glibc/pile/libc_pic.os: In function '__nscd_get_map_ref':
/localtmp/glibc/glibc-2.10.1/nscd/nscd_helper.c:432: undefined reference to '__sync_val_compare_and_swap_4'
/localtmp/glibc/pile/libc_pic.os: In function '*__GI___libc_freeres':
/localtmp/glibc/glibc-2.10.1/malloc/set-freeres.c:39: undefined reference to '__sync_bool_compare_and_swap_4'
collect2: ld returned 1 exit status
make[1]: *** [/localtmp/glibc/pile/libc.so] Error 1
make[1]: Leaving directory '/localtmp/glibc/glibc-2.10.1'
make: *** [all] Error 2
For Red Hat 4 I use the rpm and extract the files rather than installing the RPM. If you have a Windows machine you can use PeaZip to extract the files. I'm not sure if this runs on Linux.
Thanks for the tip. Extracting from the RPM worked to some extent. It allows the launching of UEX, but the configuration is defaulted incorrectly, so the search paths for toolbars and such is still looking to the default /usr/lib and /usr/share. This, in turn, causes the program to crash whenever opening a project file, or closing UEX itself. I can't find any information on changing these paths, and they don't seem to appear in the Preferences. I did sift through ~/.idm, but couldn't find anything of help there.
I'd like to get UEX up and running at work (on Suse 11), but I don't want to go through the hassle of getting the systems administrators to install it (I'm happy using my personal license for it here).
The RPM won't let me install in a different location, so that leaves me with the tar file.
I can put uex in my ~/bin directory and dump /share in my ~ directory, but then when I run uex it complains that;
05:15:39 PM: can't open file '/opt/local/uex/share/uex/ipms/ipm_bottom.html' (error 2: No such file or directory)
If I cd into ~/bin and run uex then it correctly locates the share directory in "../share" and opens without errors.
Is there any way to install it in such a way that it doesn't search for the share directory in /usr/opt if uex is installed to ~/bin and added to the PATH? Perhaps an environment variable that specifies the location of the share directory?
I got the error about ipm_bottom.html with the beta, but don't think I've seen it with the release version. I had reported this during the beta process. Even when I did see it there was no problem caused by the error. It was only an annoyance.
The error is a result of the rpm version expecting to be installed in a certain way.
It this is causing a problem for you email IDM about it.
Thanks, the error only shows up if I run uex without being in the ~/bin directory where it's installed.
It seems to be searching "../share" for the ipm files, so it finds them when I'm in ~/bin and share is in the root of my ~ directory, but it doesn't find them when I launch uex from any other location.
It looks like it's basically searching a handful of hardcoded paths, which is fine if you're an administrator on the system but is annoying if you just want to install it in your home directory at work.