Fedora将libtool打包为64位:
# rpm -qi libtool |grep ^Arch
Architecture: x86_64但是,表面上看包内容并没有显示任何明显的arch特定的二进制文件:
# rpm -ql libtool |xargs file
/usr/bin/libtool: a /usr/bin/sh script, ASCII text executable, with very long lines, with escape sequences
/usr/bin/libtoolize: a /usr/bin/sh script, ASCII text executable, with very long lines, with escape sequences
/usr/share/aclocal/libtool.m4: M4 macro processor script, ASCII text, with very long lines
/usr/share/aclocal/ltargz.m4: M4 macro processor script, ASCII text
/usr/share/aclocal/ltdl.m4: M4 macro processor script, ASCII text
/usr/share/aclocal/ltoptions.m4: M4 macro processor script, ASCII text
/usr/share/aclocal/ltsugar.m4: M4 macro processor script, ASCII text
/usr/share/aclocal/ltversion.m4: M4 macro processor script, ASCII text
/usr/share/aclocal/lt~obsolete.m4: M4 macro processor script, ASCII text
/usr/share/doc/libtool: directory
/usr/share/doc/libtool/AUTHORS: ASCII text
/usr/share/doc/libtool/ChangeLog: Non-ISO extended-ASCII text, with LF, NEL line terminators
/usr/share/doc/libtool/NEWS: ASCII text
/usr/share/doc/libtool/README: ASCII text
/usr/share/doc/libtool/THANKS: UTF-8 Unicode text
/usr/share/doc/libtool/TODO: ReStructuredText file, UTF-8 Unicode text
/usr/share/info/libtool.info-1.gz: gzip compressed data, max compression, from Unix, original size modulo 2^32 312124
/usr/share/info/libtool.info-2.gz: gzip compressed data, max compression, from Unix, original size modulo 2^32 51735
/usr/share/info/libtool.info.gz: gzip compressed data, max compression, from Unix, original size modulo 2^32 4355
/usr/share/libtool: directory
/usr/share/libtool/build-aux: directory
/usr/share/libtool/build-aux/compile: a /usr/bin/sh script, ASCII text executable
/usr/share/libtool/build-aux/config.guess: a /usr/bin/sh script, ASCII text executable
/usr/share/libtool/build-aux/config.sub: a /usr/bin/sh script, ASCII text executable
/usr/share/libtool/build-aux/depcomp: a /usr/bin/sh script, ASCII text executable
/usr/share/libtool/build-aux/install-sh: a /usr/bin/sh script, ASCII text executable
/usr/share/libtool/build-aux/ltmain.sh: POSIX shell script, ASCII text executable, with escape sequences
/usr/share/libtool/build-aux/missing: a /usr/bin/sh script, ASCII text executable
/usr/share/licenses/libtool: directory
/usr/share/licenses/libtool/COPYING: ASCII text
/usr/share/man/man1/libtool.1.gz: gzip compressed data, max compression, from Unix, original size modulo 2^32 3469
/usr/share/man/man1/libtoolize.1.gz: gzip compressed data, max compression, from Unix, original size modulo 2^32 3027这就提出了一些问题:
体系结构的特定部分在哪里?这些宏文件中存在一些编译时间常数吗?一个32位的libtool会意外地打包成noarch,破坏64位的构建吗?
发布于 2021-01-19 15:52:20
libtool脚本本身嵌入它的默认主机和构建体系结构,因此它在构建的每个体系结构上都是不同的。
libtool中至少有两个其他变量与体系结构相关:
libtool的其余部分与体系结构无关,一些其他发行版将包拆分,以便它们能够提供一个只包含libtool脚本的依赖于体系结构的包,以及一个包含所有其他内容的独立于体系结构的包。
使用错误的libtool确实会破坏您的构建(它不会找到正确的库,链接也会失败),除非它们为受影响的变量提供正确的值。
https://unix.stackexchange.com/questions/629896
复制相似问题