当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 5 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 在写完自己的一个usb驱动后,编译成模块时出现以下的错误
帖子发表于 : 2007-10-24 10:44 

注册: 2007-03-31 15:53
帖子: 86
送出感谢: 0 次
接收感谢: 0 次
在编译完成后插入该模块时提示:
please compile with -fno-common
这是什么意思,如何在Makefile中修改才能加上-fno-common这一项


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-10-24 13:24 

注册: 2006-09-20 19:56
帖子: 768
送出感谢: 0 次
接收感谢: 1
修改gcc的编译选项,加上-fno-common,就是把未初始化的全局变量分配到目标文件的bss段,很奇怪,为什么非要开启这个选项呢?你确信驱动是你自己写的???


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-10-24 14:13 

注册: 2007-03-31 15:53
帖子: 86
送出感谢: 0 次
接收感谢: 0 次
我按照一个老版本的来进行改写,但是新的模块编译不是用gcc的啊,我在网上看了都说最好用编写makefile,但是在makefile里不能加上这一项,一加这一些就报错,


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-10-24 15:32 

注册: 2006-09-20 19:56
帖子: 768
送出感谢: 0 次
接收感谢: 1
你的驱动不是C或者汇编写的么?不是在linux下完成的么?那应该是用gcc编译的啊,难道你用了intel或者其它的编译器?
Makefile只是一传递给make工具的脚本文件而已,和GCC又不矛盾。
在Makefile文件里指定编译选项-fno-common不就得了。
给个完全是toy的例子:
代码:
FLAGS=-fno-common
COMPILER=gcc
SOURCE=main.c

All: $(SOURCE)
   $(COMPILER) $(FLAGS) $(SOURCE)


哥们儿,写出一驱动不见得特别困难,但要是您这样也能写出一驱动,那我真的不得不佩服一下了。


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-10-24 15:38 

注册: 2006-09-20 19:56
帖子: 768
送出感谢: 0 次
接收感谢: 1
兄弟,我上面最后一行可能有些过火啊,没办法,性格缺陷,谅解一下。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 5 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译