MacPorts和XCode的链接器问题

MacPorts和XCode的链接器问题,xcode,linker,linker-errors,macports,Xcode,Linker,Linker Errors,Macports,我经常会遇到错误,比如ld:building for iOS simulator,但是链接到针对架构x86_64的MacOSX文件'/opt/local/lib/libz.dylib… 由于MacPorts几乎是唯一一个在/opt/local中编写任何内容的程序,我将/opt/的名称改为/opt\uu/,我的项目运行正常,但仍然给我错误的目录,该目录未找到选项'-L/opt/local/lib' 我查看了手册中的ld,而-L参数基本上告诉链接器搜索库的路径。我检查了我的XCode项目,但找不到它

我经常会遇到错误,比如
ld:building for iOS simulator,但是链接到针对架构x86_64的MacOSX文件'/opt/local/lib/libz.dylib…

由于
MacPorts
几乎是唯一一个在
/opt/local
中编写任何内容的程序,我将
/opt/
的名称改为
/opt\uu/
,我的项目运行正常,但仍然给我错误的
目录,该目录未找到选项'-L/opt/local/lib'

我查看了手册中的
ld
,而
-L
参数基本上告诉链接器搜索库的路径。我检查了我的XCode项目,但找不到它的任何痕迹,包括
/opt/local/lib/
甚至
$(某物)/lib

我还可以在哪里删除库的搜索路径
/opt/local/lib/
?或者有没有什么地方可以让我把某些路径排除在搜索之外


顺便说一句:我使用的是最新的XCode测试版6.0(6A313)

你用什么来构建这个项目?这是一个Xcode项目吗?如果是,请检查目标的生成设置,并在搜索字段中搜索“搜索路径”。这将打开您可能无意中设置的各种构建设置,包括库搜索路径、头搜索路径等

您可能只想grep您的项目文件中的“/opt/”并查看它的位置


如果您使用cmake或autoconf作为构建系统,那么您可能已经将LDFLAGS环境变量设置为包含-L/opt/local/lib

,谢谢您的提示。不过,我已经彻底检查了
搜索路径。没有指向
/opt/local/bin
的内容。该项目是一个使用标准Apple LLVM 6.0构建的iOS项目。它并没有真正回答我的观点或问题。构建系统是什么?你在用Xcode吗?至于/opt/local/bin,这与此无关。有些东西正在将-L/opt/local/lib添加到您的LDFLAGS中。如果您使用的是Xcode,那么它将通过库搜索标志或其他链接器标志进入。正如我在回答中提到的,我建议您在项目文件和相关的xconfigs中grep for/opt/local。也许pkg-config也包括在内?在构建之前,请尝试从您的
$PATH
中删除/opt/local/bin(当然,如果它一开始就在那里)。@JeremyHuddlestonSequoia抱歉,我想很明显我正在使用XCode作为构建系统。因此,为了回答您的问题:是的,我使用XCode作为构建系统,我还搜索了{opt/local/lib,/opt/local/,/lib},但在项目中没有找到任何引用,这就是为什么我在原始问题
中说我检查了我的XCode项目,但找不到任何提到/opt/local/lib/甚至$(某物)的痕迹/lib.
@neverpanic我也这么想,只是再次检查了我的$PATH。实际上,在我的
zshrc
config文件中有一个
export LIBRARY_PATH=/opt/local/lib
。但即使删除该行,错误仍然是一样的。我仍然认为错误隐藏在这里的某个地方。