4

我正在为centos 制定一个RPM 规范,如果arch 是64 位,它需要将共享库安装到/usr/lib64,否则需要安装/usr/lib?

4

3 回答 3

6

这不是它应该如何工作的。决定你的库去哪里的不是内核类型,而是库类型本身——64位.so去/usr/lib64,32位去/usr/lib。

你不能让一个 RPM 包含两种架构,结果应该是 2 个不同的 RPM,如果我没记错的话,如果你使用 %_libdir,RPM 宏应该会为你解决这个问题。

于 2010-07-25T16:32:25.917 回答
0

安装库的路径将由您正在创建的包的类型决定。

于 2010-07-03T07:03:20.790 回答
0

对于 Redhat(和 CentOS)6,RPM 宏似乎已经注入了 —libdir=/usr/lib64。

这就是 RH/CentOS 6 通过 RPM SPEC 文件设置 lib64 的方式。

在 RH/CentOS 6 上,在 x86_64 架构类型的情况下,执行 automake/configure 不会(并且根据 RH,不会)将库前缀添加到 /usr/lib64。

所有这些都已在 RH/CentOS 7 及更高版本中得到修复。

于 2017-11-04T19:32:50.660 回答