我的系统有一个旧glibc
版本。我将新版本[2.23]编译为/FaF/glibc
。
由于新glibc
版本与SLES 11 SP2和SP3不兼容,我必须使用链接器开关[ --rpath=/FaF/glibc/lib
]才能在程序中使用新版本。这完美地工作!
我无法glibc
在ld.so.confg
文件中设置新版本的路径,因为然后所有系统程序都会尝试加载新glibc
版本,并且系统崩溃至此严重。
我的问题:是否可以glibc
使用--rpath
开关使用新版本编译Apache ?
最后,答案是在Apache构建文档-环境变量中。
就我而言,一个非常严重的问题是我的系统[SLES 11 SP2]在glibc
2.23版中崩溃。
这意味着我无法glibc
在ld.so.conf
文件中设置新库的路径。
对我来说,只有一个解决方案是一套$LDFLAGS
在运行configure
,并make
具有以下值,以便系统能够以正确的顺序加载Apache和所有的新库,并明确设置装载机:
export LDFLAGS="-L/FaF/lib64 -L/FaF/glibc/lib -L/FaF/openssl-curl/lib
-Wl,--rpath=/FaF/glibc/lib -Wl,--rpath=/FaF/lib64
-Wl,--rpath=/FaF/lib -Wl,--rpath=/FaF/openssl-curl/lib
-Wl,--rpath=/usr/local/lib64/ -Wl,--rpath=/usr/lib64
-Wl,--rpath=/lib64/ -Wl,--dynamic-linker=/FaF/glibc/lib/ld-linux-x86-64.so.2"
所有使用新glibc
版本的程序都收集在中/FaF
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句