RedHawk 2.0 中 IDL 项目库的安装位置
Install location for libraries from IDL projects in RedHawk 2.0
当在 64 位 CentOS 上构建时,来自 building/installing RedHawk 1.10 中 IDL 项目的库文件安装到 $OSSIEHOME/lib64 中,但对于 RedHawk v 2.0,它们安装到 $OSSIEHOME/lib.它们仍然是 ELF 64 位 x86-64,但不会安装到 lib64 中。这是有意更改还是生成的配置有问题。旧配置具有确定是否将 64 附加到 libdir 的逻辑,但这似乎不在配置生成的 v2.0 中。
从 $OSSIEHOME/lib64 到 $OSSIEHOME/lib 的更改是有意为之的。 /usr 下的 lib 和 lib64 之间的分隔旨在分隔可能相互冲突的 32 位和 64 位构建。对于 REDHAWK,系统上只有一个安装,它位于 $OSSIEHOME 目录下,因此不会出现歧义。此外,lib 和 lib64 之间的区别,因为它是在所有 REDHAWK 项目使用的宏中实现的,也影响了 softpkg 依赖项的生成方式。为了简化系统上的安装和softpkg依赖目录的布局,lib目录合并为一个目录,不考虑架构。
请注意,如果您从 RPM 安装,$OSSIEHOME 上的目标目录是 lib64。那是 Red Hat RPM 构建包的产物。
当在 64 位 CentOS 上构建时,来自 building/installing RedHawk 1.10 中 IDL 项目的库文件安装到 $OSSIEHOME/lib64 中,但对于 RedHawk v 2.0,它们安装到 $OSSIEHOME/lib.它们仍然是 ELF 64 位 x86-64,但不会安装到 lib64 中。这是有意更改还是生成的配置有问题。旧配置具有确定是否将 64 附加到 libdir 的逻辑,但这似乎不在配置生成的 v2.0 中。
从 $OSSIEHOME/lib64 到 $OSSIEHOME/lib 的更改是有意为之的。 /usr 下的 lib 和 lib64 之间的分隔旨在分隔可能相互冲突的 32 位和 64 位构建。对于 REDHAWK,系统上只有一个安装,它位于 $OSSIEHOME 目录下,因此不会出现歧义。此外,lib 和 lib64 之间的区别,因为它是在所有 REDHAWK 项目使用的宏中实现的,也影响了 softpkg 依赖项的生成方式。为了简化系统上的安装和softpkg依赖目录的布局,lib目录合并为一个目录,不考虑架构。
请注意,如果您从 RPM 安装,$OSSIEHOME 上的目标目录是 lib64。那是 Red Hat RPM 构建包的产物。