1

我正在尝试编译 ac 文件,其中包含 Mongo 数据库的驱动程序。我可以从 Cygwin 成功编译它,但是当我转向 Netbeans 时,我得到了这个。我应该提一下,这只有在 C 编译器的附加选项中添加“-std=c99”后才会发生。

更新:
从 Netbeans 成功编译它。但是“-std=c99”让我发疯。如果我有它,它会说(如果我不删除 obj 文件,则在每次编译后):

build/Debug/Cygwin_4.x-Windows/main.o.d:1: *** multiple target patterns.  Stop.  

更新:
main.od 的内容是:

build/Debug/Cygwin_4.x-Windows/main.o: main.c \
 c:/mongodb-driver/src/mongo.h c:/mongodb-driver/src/bson.h \
 c:/mongodb-driver/src/platform.h

c:/mongodb-driver/src/mongo.h:

c:/mongodb-driver/src/bson.h:

c:/mongodb-driver/src/platform.h:
4

2 回答 2

3

引用现有答案,因为您可能有同样的问题

“我在使用 Cygwin 之前已经看到过这个问题——基本上,make 在路径中看到 : 并认为它是另一个目标定义,因此出现了错误。

如果您正在使用 Cygwin 安装,您可以尝试将 c:/ 替换为 /cygdrive/c/。如果没有,您可以尝试使用相对路径或使用网络挂载,看看是否可以修复它”。

应用程序因 Eclipse 的多个目标而失败

于 2012-05-16T09:55:29.733 回答
2

从您的评论中:

@Lumi 我怎样才能安装它而不必每次都编辑它?

修复生成main.o.d(可能还有许多其他.d文件)的脚本以编写相对路径或 Cygwinmake理解的绝对路径。

或者,考虑使用MinGW代替 Cygwin 是否适合您。(但我感觉你在走这条路时会遇到更多问题。)

Ultimately, to cope with Makefiles, you need to read up on how Make works. GNU Make has a comprehensive manual. I found these tips very useful. The best for you, at this stage, would probably be Scott Duckworth's Make tutorial.

于 2012-05-16T11:36:26.293 回答