C语言 用于纯数据外部创建的 Eclipse 设置



好的,所以我一直在使用Visual Studio Express 2013为Pure Data开发外部,一切都很好。一切都编译,工作等等。

但是现在我面临着必须对Android的外部进行特定的编译(用于libPD(,这意味着我将不得不使用Android NDK。我找到的所有 NDK 指南都使用 Eclipse,所以我决定将代码放入 Eclipse 并开始使用它。

之前在Android开发中安装过Eclipse,这意味着我只需要安装Make,Gcc和Gdb。通过 Cygwin 这样做,重新启动 Eclipsed,一切似乎都运行良好(当尝试编译一个空项目时,所有调用都没有错误和项目编译(。

将基本的"helloworld"项目源代码导入到新创建的Eclipse C项目中,并在尝试包含"m_pd.h"时(如预期的那样(出现错误。在 google 和 eclipse 文档中搜索库包含,在包含路径、库路径(链接器>库设置(中尝试过,除了将其添加到包含路径之外,无法使其与任何其他解决方案很好地配合使用。将纯数据 src 文件夹添加到项目的包含路径,错误消失。

但是,当我尝试编译项目时,所有 PD 方法和函数都出现未定义的引用错误(post、pd_new、gensym 等(,这表明编译器无法正确访问库......

作为一个完全的 Eclipse 新手用户,我想知道我是否错过了某个步骤,或者我做错了什么......

内部和外部编译器似乎也发生了相同的错误。外部(cygwin gcc(在链接阶段显示错误(在"调用:Cygwin C Linker"行之后(

更新:在我添加包含路径到cygwin链接器库路径后,编译错误消失了。现在在makefile命令上收到"意外标记'(''(附近的语法错误"错误:gcc -shared -o "dataIn.dll" ./src/dataIn.o -lC:/Program\ Files\ (x86(/Pure\ Data/src

是因为路径中的那个"("而变得奇怪吗?

gcc 和 GNU make 以糟糕地处理包含路径中的空格而闻名。

简短的回答是:不要!

很容易将

Pd 解压缩到一个理智的地方,它不包含空格、偏执、星号和可怕的AUX

C:Pd

为了记录,如果有人偶然发现了这个问题,问题在于使用Cygwin,因为它需要一个dll(cygwin1.dll(来运行任何用它编译的东西。最终切换到使用MingW,一切正常。

Umlaute 关于文件路径和目录的建议对于确保正确编译也非常重要。

最新更新