/usr/lib/i386-linux-gnu/ 是什么?

Ale*_*ysh 33 filesystem

我正在使用一个应用程序,在搜索已安装的依赖项时,它会在 /usr/lib 和 /usr/local/lib/ 中查找一些 .so 文件。

现在我在 Natty 上迁移,有些文件似乎从 /usr/lib 移动到 /usr/lib/i386-linux-gnu/。

我是否应该向该应用程序开发人员报告一个错误,他们应该更改他们的查找逻辑?是否有解释更改的文档,以便我可以将其提交给他们?

Jam*_*dge 33

进行此更改是为了能够安装为不同体系结构编译的相同库的版本(例如,在 AMD64 系统上,一个版本可能进入/usr/lib/x86_64-linux-gnu而另一个版本进入i386-linux-gnu)。

标准链接器和动态链接器都知道这些目录,因此对于大多数应用程序来说,更改应该是不可见的。如果应用程序正在手动搜索实际的库文件,则需要对其进行修改。

可以在此处找到 Ubuntu 更改的详细信息:

https://wiki.ubuntu.com/MultiarchSpec

  • 虽然 Ubuntu 链接是一个不错的起点,但 https://wiki.debian.org/Multiarch 提供了更多文档(并且预计会更好地保持最新状态;Ubuntu wiki 大约是作为一个废弃的大象墓地的爱)。 (3认同)
  • 我以为我们有 /lib32 用于多架构? (2认同)