gpt4 book ai didi

cocoa - XCode 中的动态库

转载 作者:行者123 更新时间:2023-12-03 16:10:52 29 4
gpt4 key购买 nike

我正在尝试在 XCode 中创建一个 mac 应用程序,该应用程序的一些实现位于动态库中。

我向我的 XCode cocoa 项目添加了一个新目标(动态库),在与框架和预编译头进行了一些斗争之后,让 dynlib 编译 - 并从调试器成功运行。

当独立运行时,很明显 dynlib 位于错误的位置。 “未加载库:/usr/local/lib/teSTLib.dynlib”。在 Windows(我更常用的平台)上,Dll 可以放置在与 exe 相同的文件夹中,以及系统路径上的任何位置。

我希望我的应用程序在其应用程序包中的某个位置查找其 dynlib(某些文档似乎确认这是正确的方法),但我不知道如何进行。

是否可以在 XCode 中配置项目,以便将 dylib 实际上复制到应用程序包中,应用程序将在该位置查找它?

<小时/>

看来我不需要使用otool来重置搜索路径。如果我编辑目标信息 -> 构建 -> 部署 -> 安装目录,我可以从 XCode 内部更改 dyld 将查找 dylib 的路径。默认情况下,对于新的动态库项目,路径设置为 /usr/local/lib。我已将其更改为 ./ - otool 确认 ./现在是 dyld 将查找此特定动态模块的位置。不幸的是 ./似乎实际上并没有引用我的应用程序包中的任何目录:(

所以,我的问题(在其他线程中没有回答)现在是:1. 如何在“目标信息”->“...”->“安装目录”设置中输入有意义的相对路径,以及2.如何让XCode自动将dylib“目标”复制到应用程序包目标的相对位置的包文件夹中?

最佳答案

最后。找到一些official documentation 。完全可以在 XCode 中完成此操作。

我正在修改库的安装目录设置:它需要是: @executable_path/../Frameworks

然后我需要向库添加“复制文件”构建步骤,以将其实际复制到 Frameworks 文件夹。

简单。自动。

关于cocoa - XCode 中的动态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1832316/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com