在OSX Lion上使用swipl-ld进行编译时缺少symbold“_main”

时间:2012-05-25 16:48:58

标签: macos prolog osx-lion swi-prolog ffi

我正在尝试编译要从Prolog外部函数接口调用的C程序。我正在做一些动态编程,这在Prolog中效率不高。但是,当我尝试编译我的文件时,出现以下错误:

Undefined symbols for architecture x86_64:
  "_main", referenced from:
      start in crt1.10.6.o
     (maybe you meant: __main)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
/Developer/usr/bin/clang returned code 256
*** swipl-ld exit status 1

C文件只是找到here的示例。

有人知道是否有办法解决这个问题?

1 个答案:

答案 0 :(得分:0)

听起来您正在尝试链接为可执行文件而不是库(.dylib)。

使用XCode,您应该将项目创建为动态C / C ++库。