生成.o文件失败?

RubOne 2013-08-01 01:45:40

我是用的是Eclipse CDT gcc进行编译,但是错误就只有上面这两个图,没有其他任何提示,由于使用到了第三方的库文件zlib,我怀疑自己导入静态链接库到工程的方式不对,但是又不知道是不是这个,因为之前我用到的另外一个第三方的库openSSL也是这么用的却没有问题。还请路过的大侠帮忙看看,感激不尽!!!
...全文
1331 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
max_min_ 2013-08-02
  • 打赏
  • 举报
回复

 CFLAGS += -O2 -pthread -Wall -D_MXML_ -DXLOCALE_NOT_USED -g
//在makefile中找类是这样的参数依赖,然后除掉 -MMD 参数看看!

JoeBlackzqq 2013-08-02
  • 打赏
  • 举报
回复
上面说错了,那个图里好像没有的。 我估计在参数“${FLAGS}"或“${OUTPUT_FLAGS}”里,一定可以找到的!
JoeBlackzqq 2013-08-02
  • 打赏
  • 举报
回复
理论上-MMD一定是有地方写入了,如果一个工程连编译参数都无法自己控制,又如何做开发呢? 看了下你的截图,这个-MMD好像在5楼第一个图“all options"那个框里,在后面点罢了!
RubOne 2013-08-02
  • 打赏
  • 举报
回复
我自己解决了,原来是参数 -x ,导致 -MMD 无效的,去掉 -x 就好了,不过还是感谢各位热心的大虾们,劳烦你们了。
zhctj159 2013-08-01
  • 打赏
  • 举报
回复
既然提示的是MMD无法识别的错误,又不好去掉,那不如试下用命令行编译,将提示中的完整的命令行去掉MMD后在命令行运行
RubOne 2013-08-01
  • 打赏
  • 举报
回复
但是 -MMD 这个参数也删除不了啊,我的Eclipse里面根本就没有写进去这个选项,gcc版本是4.6.3:

这个是我所有的参数设置,那个 -MMD 怎么去掉我也不知道怎么弄,要是能去掉当然最好了。
nice_cxf 2013-08-01
  • 打赏
  • 举报
回复
-M   生成文件关联的信息。包含目标文件所依赖的所有源代码你可以用gcc -M hello.c 来测试一下,很简单。    -MM   和上面的那个一样,但是它将忽略由#include<file>造成的依赖关系。    -MD   和-M相同,但是输出将导入到.d的文件里面    -MMD   和-MM相同,但是输出将导入到.d的文件里面 这个参数无效,.d文件里面没数据,还怎么能编译通过?
帅得不敢出门 2013-08-01
  • 打赏
  • 举报
回复
-MMD是gcc的参数 这里说无效,会不会是因为gcc版本过低的原因,如果不是,则可能不是由这个参数引起的,个人猜测。 也可以尝试着删除这个选项,修改Makefile啥的。
RubOne 2013-08-01
  • 打赏
  • 举报
回复
这个参数不认识其实没有什么关系,如果有关系,那么之前其他的.o文件也都无法生成才对,这个只是说这个参数无效而已。
nice_cxf 2013-08-01
  • 打赏
  • 举报
回复
不是写的很清楚了么:-MMD这个参数不认识

65,179

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧