c/c++语言开发共享从XCode中的C-Programm到SWI-Prolog的接口

我想使用MAC OS X下的XCode IDE到SWI-Prolog从c代码接口。

我已经包含了头文件并使用以下示例代码:

#include  #include  #include  int main(int argc, const char * argv[]) { char *av[10]; int ac = 0; av[ac++] = "/opt/local/lib/swipl-6.2.2/bin/i386-darwin12.2.1/swipl"; av[ac++] = "-x"; av[ac++] = "mystate"; av[ac] = NULL; #ifdef READLINE /* Remove if you don't want readline */ PL_initialise_hook(install_readline); #endif if ( !PL_initialise(ac, av) ) PL_halt(1); PL_halt(PL_toplevel() ? 0 : 1); printf("done...n"); return 0; } 

我还在构建设置中链接到头和lib路径:

标题搜索路径:/opt/local/lib/swipl-6.2.2/include

库搜索路径:/opt/local/lib/swipl-6.2.2/lib/i386-darwin12.2.1

但在运行代码时,我收到以下错误:

 Undefined symbols for architecture x86_64: "_PL_halt", referenced from: _main in main.o "_PL_initialise", referenced from: _main in main.o "_PL_toplevel", referenced from: _main in main.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 

有没有人可以帮助我运行我的代码?

谢谢你提前和亲切的问候

Solick

    即使您在设置中设置了正确的路径,它也不会自动找到要链接的正确库。 您还必须添加实际的库。

    我在Ubuntu工作(是的,在Windows中,仍然),我开始欣赏pkg-config支持。

    如果您已经熟悉它,请注意在本地编译时,SWI-Prolog会生成一个目录〜/ lib / pkgconfig。

    然后你可以将该目录添加到pkg-config配置中,并使用SW与(IMHO)的良好支持。

      以上就是c/c++开发分享从XCode中的C-Programm到SWI-Prolog的接口相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/523086.html

      (0)
      上一篇 2020年12月11日
      下一篇 2020年12月11日

      精彩推荐