我正在研究MacOSX 10.7.2和
Xcode 4.2.1.我使用端口安装了libpng,我试图在我的应用程序中加载PNG图像,但是我收到链接器错误:
Undefined symbols for architecture x86_64: "_png_create_read_struct",referenced from: loadpngImage(char*,int&,bool&,unsigned char**) in test.o "_png_create_info_struct",unsigned char**) in test.o "_png_destroy_read_struct",unsigned char**) in test.o "_png_set_longjmp_fn",unsigned char**) in test.o "_png_init_io",unsigned char**) in test.o "_png_set_sig_bytes",unsigned char**) in test.o "_png_read_png",unsigned char**) in test.o "_png_get_IHDR",unsigned char**) in test.o "_png_get_rowbytes",unsigned char**) in test.o "_png_get_rows",unsigned char**) in test.o ld: symbol(s) not found for architecture x86_64
我在项目中使用了png.h
#include "/usr/X11/include/png.h"
我知道libpng基于zlib,因此我在“其他链接器标志”中包含了-lz但没有任何改变.
有关如何使其工作的任何建议?
解决方法
我用手动安装libpng解决了:
>从official web site下载源代码
>在终端中,进入下载的文件夹并启动
cp ./scripts/makefile.darwin makefile make sudo make install make clean
>如果它不起作用(在我的情况下)用TextEdit(或等效的)打开makefile并更改行
ARCH =“ – arch i386 -arch x86_64”
在
ARCH = -arch x86_64
(假设,当然,您的系统是64位).
这可能还不够. Xcode仍无法找到该库.我解决了使用
cd /usr/local/lib sudo ln -s libpng15.dylib ./libpng15.15.dylib
这就是诀窍.现在它工作正常.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。