Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 使用install\u name\u工具修复动态库文件中的路径 我试图在更新OS到EL CAPCAN后编译我的C++项目。然而,在这一过程中,我遇到了一些障碍: dyld: Library not loaded: pathB/libIceUtil.34.dylib Referenced from: pathA/libSlice.34.dylib Reason: image not found_Macos_Dynamic Linking_Dylib_Otool_Install Name Tool - Fatal编程技术网

Macos 使用install\u name\u工具修复动态库文件中的路径 我试图在更新OS到EL CAPCAN后编译我的C++项目。然而,在这一过程中,我遇到了一些障碍: dyld: Library not loaded: pathB/libIceUtil.34.dylib Referenced from: pathA/libSlice.34.dylib Reason: image not found

Macos 使用install\u name\u工具修复动态库文件中的路径 我试图在更新OS到EL CAPCAN后编译我的C++项目。然而,在这一过程中,我遇到了一些障碍: dyld: Library not loaded: pathB/libIceUtil.34.dylib Referenced from: pathA/libSlice.34.dylib Reason: image not found,macos,dynamic-linking,dylib,otool,install-name-tool,Macos,Dynamic Linking,Dylib,Otool,Install Name Tool,问题是pathB不存在。当我运行otool-lpatha/libIceUtil.34.dylib时,我得到 pathA/libIceUtil.34.dylib: pathB/libIceUtil.34.dylib (compatibility version 0.0.0, current version 0.0.0) install_name_tool-更改路径b/libIceUtil.34.dylib pathA/libIceUtil.34.dylib pathA/libIceUtil.34

问题是
pathB
不存在。当我运行
otool-lpatha/libIceUtil.34.dylib
时,我得到

pathA/libIceUtil.34.dylib:
pathB/libIceUtil.34.dylib (compatibility version 0.0.0, current version 0.0.0)

install_name_tool-更改路径b/libIceUtil.34.dylib pathA/libIceUtil.34.dylib pathA/libIceUtil.34.dylib
无法解决问题。提到使用
libtool
。知道如何解决此问题吗?

安装工具名称更改的第一个参数不正确(它与打印的内容不匹配)。使用:


您想将其更改为什么?@特洛伊木马
/Volumes/Data/builder/
前缀-->
/Users/xeroqu/lib/
前缀。我也修改了这个问题。你不想让它相对于可执行文件吗?@trojanfoe不一定。我想修复这些路径…
install\u name\u tool
是要使用的工具。你是对的,因此+1。然而,我犯了一个可怕的错误,复制、更改项目名称并粘贴在这里——所以答案不是我想要的。这次我简化了问题。对不起,麻烦了。我不知道还有什么好建议的。我过去曾成功地使用
install\u name\u tool
解决过此类问题。它可能与库本身中的依赖库有关……有趣的是,它对可执行文件不存在问题,但对dylibs不存在问题。谢谢你的提示
install_name_tool -change \
    /Volumes/Data/builder/Proj/gcc4/thirdparty/Ice-3.4.2-x86_64/lib/libIceUtil.34.dylib \
    /Users/xeroqu/lib/Proj/gcc4/thirdparty/Ice-3.4.2-x86_64/lib/libIceUtil.34.dylib \
    /Users/xeroqu/lib/Proj/gcc4/thirdparty/Ice-3.4.2-x86_64/lib/libIceUtil.34.dylib