免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: joshua83
打印 上一主题 下一主题

makefile 编译错误 [复制链接]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
21 [报告]
发表于 2011-11-23 00:40 |只看该作者
还有,能编译通过,并不代表能正常运行。

比如,你不加入 string.h ,在某些数值运算的情况下,你的程序运行会出现意想不到的结果。

stdio 是标准的输入输出的头文件,一般而言,俺都会加这个咚咚。

论坛徽章:
19
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-05-20 10:46:44CU大牛徽章
日期:2013-05-20 10:46:38CU大牛徽章
日期:2013-05-20 10:46:31CU大牛徽章
日期:2013-05-20 10:46:25CU大牛徽章
日期:2013-05-20 10:46:18CU大牛徽章
日期:2013-04-17 11:19:51CU大牛徽章
日期:2013-04-17 11:19:42CU大牛徽章
日期:2013-04-17 11:19:37CU大牛徽章
日期:2013-04-17 11:19:32CU大牛徽章
日期:2013-04-17 11:19:28
22 [报告]
发表于 2011-11-23 00:42 |只看该作者
回复 20# snow888


   (*^__^*) 嘻嘻…… 主要用的是它的代码提示功能
今天晚了,明天再聊

我的QQ275737694 我加了百湖的那个QQ群的

论坛徽章:
19
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-05-20 10:46:44CU大牛徽章
日期:2013-05-20 10:46:38CU大牛徽章
日期:2013-05-20 10:46:31CU大牛徽章
日期:2013-05-20 10:46:25CU大牛徽章
日期:2013-05-20 10:46:18CU大牛徽章
日期:2013-04-17 11:19:51CU大牛徽章
日期:2013-04-17 11:19:42CU大牛徽章
日期:2013-04-17 11:19:37CU大牛徽章
日期:2013-04-17 11:19:32CU大牛徽章
日期:2013-04-17 11:19:28
23 [报告]
发表于 2011-11-23 00:44 |只看该作者
回复 21# snow888


    这个我深有体会,编译器和IDE 都不敢报错,运行时,运行到半截来一个段错误,还得手动查错

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
24 [报告]
发表于 2011-11-23 00:45 |只看该作者
回复  snow888


    这个我深有体会,编译器和IDE 都不敢报错,运行时,运行到半截来一个段错误,还得 ...
方兆国 发表于 2011-11-23 00:44



    段错误还是好的,最怕的是没有段错误,但运行的结果是错误的。

论坛徽章:
19
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-05-20 10:46:44CU大牛徽章
日期:2013-05-20 10:46:38CU大牛徽章
日期:2013-05-20 10:46:31CU大牛徽章
日期:2013-05-20 10:46:25CU大牛徽章
日期:2013-05-20 10:46:18CU大牛徽章
日期:2013-04-17 11:19:51CU大牛徽章
日期:2013-04-17 11:19:42CU大牛徽章
日期:2013-04-17 11:19:37CU大牛徽章
日期:2013-04-17 11:19:32CU大牛徽章
日期:2013-04-17 11:19:28
25 [报告]
发表于 2011-11-23 00:48 |只看该作者
回复 24# snow888

我可真要睡了,再不关机,这个U盘上的CentOS 6又得让我重装了,(*^__^*) 嘻嘻……

论坛徽章:
0
26 [报告]
发表于 2011-11-23 10:08 |只看该作者
呵呵 知道了

论坛徽章:
19
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-05-20 10:46:44CU大牛徽章
日期:2013-05-20 10:46:38CU大牛徽章
日期:2013-05-20 10:46:31CU大牛徽章
日期:2013-05-20 10:46:25CU大牛徽章
日期:2013-05-20 10:46:18CU大牛徽章
日期:2013-04-17 11:19:51CU大牛徽章
日期:2013-04-17 11:19:42CU大牛徽章
日期:2013-04-17 11:19:37CU大牛徽章
日期:2013-04-17 11:19:32CU大牛徽章
日期:2013-04-17 11:19:28
27 [报告]
发表于 2011-11-23 10:25 |只看该作者
段错误还是好的,最怕的是没有段错误,但运行的结果是错误的。
snow888 发表于 2011-11-23 00:45



    段错误好像是和指针伴随的,我有一次重复删除了指针指向的区域,运行时结果是对的,但是来了一个段错误,查了半天

论坛徽章:
0
28 [报告]
发表于 2011-11-23 22:11 |只看该作者
谢谢两位
我是想学习Makefile的生成和多文件编译。C语言语法的问题也不会到这里来讨论了。
在以前做的项目中,如果想调用另一个文件中定义的函数,只需要在此文件中增加#include函数声明的头文件或者extern一下就可以了,但在linux下不可以,我想知道原因。是不是我的makefile生成的有问题。如果用gcc命令,先编译hello.c,再编译add.c,再把两个.o文件合起来,可以得到最后的输出结果。可是如果文件很多,就不可能一个文件一个文件的编译了,势必用makefile一次编译成功。
不知道这方面有没有人指点一二。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
29 [报告]
发表于 2011-11-23 23:33 |只看该作者
谢谢两位
我是想学习Makefile的生成和多文件编译。C语言语法的问题也不会到这里来讨论了。
在以前做的项目 ...
joshua83 发表于 2011-11-23 22:11



    前面其实已经回答你的问题了,俺贴了图,你可以看看,那个是在 Unix 下面的,在 Linux 下面也一样。

你的这个问题与你的 Makefile 如何写没有任何关系,只与 C 编译器有关。

另外,针对你提出的这个问题,俺写了一篇博文,例子就是用的你的这个例子,地址是:

http://blog.chinaunix.net/space. ... blog&id=3024730

系统环境是 CentOS 6 x86_64 ,希望对你有所帮助。

论坛徽章:
0
30 [报告]
发表于 2011-11-24 22:14 |只看该作者
回复 29# snow888


    大作已拜读,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP