Mac proj.4编译错误

时间:2011-08-07 08:56:26

标签: c macos homebrew proj

我在Mac 10.7上使用自制软件安装了proj.4库(使用gcc-4.2)。尝试编译以下代码时:

#include <proj_api.h>


int main(void) {
    projPJ pj_merc;
    pj_merc = pj_init_plus("+proj=merc");
    pj_free(pj_merc);
    return 0;
}

我收到了这个错误:

$ gcc-4.2 test.c 
Undefined symbols for architecture x86_64:
  "_pj_init_plus", referenced from:
      _main in cccf4vey.o
  "_pj_free", referenced from:
      _main in cccf4vey.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

修改 库文件是64位(gcc-4.2 -m32 test.c导致相同的错误):

$ file /usr/local/lib/libproj.dylib 
/usr/local/lib/libproj.dylib: Mach-O 64-bit dynamically linked shared library x86_64

任何想法有什么不对?

谢谢!

1 个答案:

答案 0 :(得分:1)

你应该链接到图书馆。

gcc-4.2 test.c -L/usr/local/lib -lproj

这就是错误抱怨