如何从跨 gcc 安装 libcc1.so 到目标相关位置?

如何从跨 gcc 安装 libcc1.so 到目标相关位置?

因此,我正在为一个不常见的目标打包并安装 gcc。默认情况下,所有文件(不包括文档)在其完整路径中都有目标名称。但是 libcc1.so.0.0.0 及其符号链接安装在 /usr/lib 中,(当然--prefix=/usr)与本机编译器发生冲突。为了将它们安装到与目标相关的路径,我指定了,--libdir=/usr/lib/target_name但文件安装到了 /usr/lib/lib。这是因为 libcc1/Makefile 指定了cc1libdir = $(libdir)/$(libsuffix),而 libcc1/configure 定义libsuffix../lib(在我的情况下;在某些配置中也可能是这样的,以便即使具有默认值 ,../lib32也可以将库安装到正确的位置)libdir$PREFIX/lib

完整安装可能会影响更多文件,但我的目标不支持许多库,因此未安装。

我可以手动编辑目录 libcc1 中的 Makefile.am 或 Makefile.in(尚未测试)或使用--libdir=/usr/lib/target_name/dummy(有效)来解决这个问题。但这两种方法似乎都不太好。前者每次更新时都需要手动操作(我是不是在不必要地担心?)。后者会创建令人困惑的深层路径(/usr/lib/target_name/dummy/gcc/target_name/version_number)。

有人能建议更好的解决方法,甚至更好的解决方案吗?

相关内容