在编译mpich
时,我收到了一些relinking
警告......
libtool: warning: relinking 'lib/libmpicxx.la'
我无法通过Google搜索错误消息找出这些含义。什么是relinking
?为什么会引起它?我怎么能摆脱它呢?
答案 0 :(得分:9)
安装时会发出“重新链接”警告,而不是在编译时发出。 Libtool警告您,它在安装过程中运行的命令可能很慢。重新安排可能有不同的原因。
如果是mpich
,原因完全是无害的。 libmpicxx
库取决于libmpi
库。两者都是从同一个来源构建的。 Libtool确保如果您在构建目录中运行任何可执行文件,它将使用构建目录中的库而不是已安装的库。
没有办法确保(至少在Linux上)libmpicxx
将使用本地构建的libmpi
库而不将库搜索路径(所谓的RPATH)硬编码到libmpicxx
对于已安装的库,要求是它们永远不会引用构建它们的构建树。因此需要从已安装的libmpicxx
库中删除RPATH。这是通过重新链接来完成的。
再一次,警告不是关于你或包做错了什么,而是关于安装阶段的潜在缓慢操作(预期在构建阶段的运行缓慢而且不需要警告)。