Questions tagged «patchelf»

1
对ld-linux.so黑客使用替代libc;更清洁的方法?
我有一个带有非常老的glibc的遗留系统,如果不进行大量测试/验证工作,就无法升级。 我现在需要多次在该系统上运行较新的程序(例如Java 1.7)。我选择了chroot解决方案,其中打包了所有需要的库,并在chroot中运行服务。 chroot的限制非常大,我宁愿尝试使用LD_LIBRARY_PATH解决问题。不幸的是,我libc.so.6: cannot handle TLS data在尝试时遇到错误。 事实证明,我也需要/lib/ld-linux.so.2chroot的。这有效: LD_LIBRARY_PATH=/home/chroot/lib /home/chroot/lib/ld-linux.so.2 /home/chroot/bin/program 但是,java通过检查/proc/self/cmdline以确定从何处加载其库来挫败我的窍门,如果二进制文件未命名为“ bin / java”,该方法将失败。Java在启动过程中也会执行自身,这使事情变得更加复杂。 在最后努力,使这项工作,我打开了Java二进制,十六进制编辑器和替换字符串/lib/ld-linux.so.2用/home/chroot/ld.so(并作出一个符号链接ld-linux.so.2),和它的工作! 但是我想每个人都会同意,将每个新二进制文件的路径重写为嵌套系统的绝对路径是一个巨大的麻烦。 有谁知道使用自定义库路径(包括自定义ld-linux.so)的更简洁方法?

2
无法在NixOS中执行二进制文件-没有此类文件或目录
我试图在运行NixOS的VM上安装当前的oracle jre。 现在发生以下情况: [michas@cc:~]$ tar xvzf jre-7u40-linux-x64.tar.gz |grep bin/java jre1.7.0_40/bin/javaws jre1.7.0_40/bin/java_vm jre1.7.0_40/bin/java [michas@cc:~]$ ls -l ./jre1.7.0_40/bin/java -rwxr-xr-x 1 michas nogroup 7750 Aug 27 09:17 ./jre1.7.0_40/bin/java [michas@cc:~]$ ./jre1.7.0_40/bin/java bash: ./jre1.7.0_40/bin/java: No such file or directory WTF?命名文件显然在那里。到底是怎么回事? 尝试进一步分析: [michas@cc:~]$ strace ./jre1.7.0_40/bin/java execve("./jre1.7.0_40/bin/java", ["./jre1.7.0_40/bin/java"], [/* 53 vars */]) = -1 ENOENT (No such …

2
执行二进制文件:找不到文件
我知道那里也有类似的问题,但是我还没有找到解决方案,也没有确切的案例。该二进制文件是在Arch Linux上使用其GCC 4.7构建的。该软件包在构建系统上可以正常工作。以下命令在以下位置执行: Linux vbox-ubuntu 3.2.0-29-generic#46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64 x86_64 x86_64 GNU / Linux 有关文件位于此处。它是Linux 64位到Windows 64位交叉编译器。将其解压缩到~/一个~/mingw64包含所需内容的目录。 当我尝试运行时~/mingw64/x86_64-w64-mingw32/bin/as,我得到的是: bash: /home/ruben/mingw64/x86_64-w64-mingw32/bin/as: No such file or directory 跑步file ~/mingw64/x86_64-w64-mingw32/bin/as给我: /home/ruben/mingw64/x86_64-w64-mingw32/bin/as: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0x0b8e50955e7919b76967bac042f49c5876804248, …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.