相关疑难解决方法(0)

@loader_path解决了什么路径?

我很难理解文件中的绝对路径@loader_path.

user@local:~$ otool -L zlib.so 
zlib.so:
    @loader_path/../../libz.1.dylib (compatibility version 1.0.0, current version 1.2.7)
    /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0)
Run Code Online (Sandbox Code Playgroud)

我想知道系统在哪里找到libz.1.dylib.

从一些Mac文档:

@ loader_path /此变量替换为包含mach-o二进制文件的目录的路径,该二进制文件包含使用@loader_path的load命令.因此,在每个二进制文件中,@ download_path解析为不同的路径

我猜想这意味着@loader_path只是目标文件(zlib.so)的路径,但这似乎不是真的.

是否有任何命令行实用程序将@loader_path解析为尝试打开库时使用的实际路径?

macos mach-o shared-libraries otool dyld

15
推荐指数
1
解决办法
1万
查看次数

Xcode继续在错误的路径上搜索dylib

那是我的错误:

dyld: Library not loaded: /usr/local/lib/libofa.0.dylib
Referenced from: /sers/david/Projekte/Test/build/Debug/Test.app/Contents/MacOS/Test
Reason: image not found
Run Code Online (Sandbox Code Playgroud)

我做了一些研究并使用install_name_tool更改了dylib中的路径:

davids-macbook:Test david$ otool -L libofa.0.0.0.dylib 
libofa.0.0.0.dylib:
@executable_path/../Frameworks/libofa.0.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.1)
/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate (compatibility version 1.0.0, current version 4.0.0)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
Run Code Online (Sandbox Code Playgroud)

但Xcode一直在/ usr/lib /中搜索它:

build/Debug/Test.app/Contents/MacOS/Test:
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0)
/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1.0.0)
/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
@executable_path/../Frameworks/TagLib.framework/Versions/A/TagLib (compatibility version 1.0.0, current version 1.0.0) …
Run Code Online (Sandbox Code Playgroud)

xcode linker dylib

13
推荐指数
2
解决办法
2万
查看次数

标签 统计

dyld ×1

dylib ×1

linker ×1

mach-o ×1

macos ×1

otool ×1

shared-libraries ×1

xcode ×1