在OSX Leopard上,ld找不到X11库。

5
我有一个基本的X11应用程序在Linux上运行,现在我想在OSX 10.5.8下编译它。我已经安装了X11和X11 SDK,并修改了makefile如下:
CFLAGS = -L/usr/X11/lib -I/usr/X11/include 一切都编译得很好,但链接器找不到X11库。 ld: library not found for -lX11
我在谷歌上搜索过,但目前我发现这个问题的人要么没有安装X11 SDK,要么不知道-L标志。
有什么想法吗?

这实际上是我阅读失误了。在cc行中没有引用CFLAGS。请关闭这个问题。 - Larry Coleman
3个回答

5

2

您可能在错误的位置寻找库文件;在我的OS X系统中,它肯定位于不同的位置。尝试输入:

locate libX11.dylib

并添加适当的路径。例如,在我的系统上,您需要在CFLAGS中加入-L/usr/X11/lib/


尽管这个答案没有直接回答问题,但它让我质疑了我的假设并重新阅读了Makefile,所以我接受了它。 - Larry Coleman

2

-L/usr/X11/lib 在OSX 10.6上无法使用,而 libX11.dylib 可以使用:

% ls -l /usr/X11/lib/libX11.*
lrwxr-xr-x  1 root  wheel       14 Jul 21 17:46 /usr/X11/lib/libX11.6.2.0.dylib@ -> libX11.6.dylib
-rwxr-xr-x  1 root  wheel  3578368 Jul 12  2010 /usr/X11/lib/libX11.6.dylib*
lrwxr-xr-x  1 root  wheel       14 Jul 21 17:46 /usr/X11/lib/libX11.dylib@ -> libX11.6.dylib

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接