编译.wxml文件错误的错误编译.wxml文件错误的内核模式程序问题,怎么解决

解决编译内核模块helloworld.c:1: 错误:代码模式‘kernel’在 32 位模式下不受支持问题,未编译对64位的支持
Makefile内容:
KERNELDIR ?=/root/Desktop/work/TI/linux-3.2.0
PWD := $(shell pwd)
obj-m += helloworld.o
default: &
& & $(MAKE) -C $(KERNELDIR) M=$(PWD) modules &
& & @rm -f *.o *.ord* *.sy* *.mod.* *.ko &
clean标记中的@表示,执行命令的时候,终端上面不打印rm -r xxx.xx
make出错信息:
[root@localhost ldd3]# make
make -C /root/Desktop/work/TI/linux-3.2.0 M=/root/Desktop/work/ldd3 modules
make[1]: Entering directory `/root/Desktop/work/TI/linux-3.2.0'
& CC [M] &/root/Desktop/work/ldd3/helloworld.o
/root/Desktop/work/ldd3/helloworld.c:1: 错误:代码模式 &kernel& 在 32 位模式下不受支持
/root/Desktop/work/ldd3/helloworld.c:1: 对不起,尚未实现:未编译入对 64 位模式的支持
make[2]: *** [/root/Desktop/work/ldd3/helloworld.o] 错误 1
make[1]: *** [_module_/root/Desktop/work/ldd3] 错误 2
make[1]: Leaving directory `/root/Desktop/work/TI/linux-3.2.0'
make: *** [default] 错误 2
出错原因:在内核目录中的Makefile,没有指定ARCH、CROSS_COMPILE。因为编译内核的时候,使用的是:make CROSS_COMPILE=arm-linux- ARCH=arm uImage命令,并未修改Makefile文件。
解决:指定ARCH、CROSS_COMPILE内容
CROSS_COMPILE=arm-linux-
在编译通过,生成helloworld.ko评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
第一章 ASP.NET 教程 (基础)
第二章 ASP.NET 教程(高级)中国领先的IT技术网站
51CTO旗下网站
Linux下编译时出现的错误及解决方法
(1)由于是Linux新手,所以现在才开始接触线程编程,照着GUN/Linux编程指南中的一个例子输入编译,结果出现如下错误......
作者:chinaitlab来源:chinaitlab| 10:31
(1)由于是Linux新手,所以现在才开始接触线程编程,照着GUN/Linux编程指南中的一个例子输入编译,结果出现如下错误:
undefined reference to 'pthread_create'
undefined reference to 'pthread_join'
问题原因:
pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程,以及调用 pthread_atfork()函数建立fork处理程序时,需要链接该库。
问题解决:
在编译中要加 -lpthread参数
gcc& -o thread thread.c -lpthread
thread.c为你些的源文件,不要忘了加上头文件#include&pthread.h&
(2)出现警告:内建函数strlen不兼容的隐式声明,内建函数exit不兼容的隐式声明
问题原因:因为函数strlen在string内,exit在stdlib内。在文件中没有添加头文件 string.h和stdlib
问题解决:在文件中添加头文件 string.h和stdlib
(3)出现错误:sem_union的存储大小未知
问题原因:在新版2.6内核中关于union sem_union 这个联合体已经被注释了,需要自己写这个联合体
问题解决:在C文件中先定义
union semun {&& struct semid_ds& *& unsigned short *}& sem_
随后编译时它就能找到预先定义好的sem_union联合体了。
【编辑推荐】
【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条头条热点头条头条
24H热文一周话题本月最赞
讲师:92486人学习过
讲师:97035人学习过
讲师:33650人学习过
精选博文论坛热帖下载排行
本书是一本介绍Windows系统上的用户态程序排错方法和技巧的书。本书分为4个章节,先介绍最重要的、通用的思考方法,以便制定排错步骤;再介...
订阅51CTO邮刊在Visualc++6.0中,为什么我每次编译的时候不论程序是对是错,总是一个错误零警告呢?-CSDN论坛
在Visualc++6.0中,为什么我每次编译的时候不论程序是对是错,总是一个错误零警告呢?
我想问一下,在Visualc++6.0中,为什么我每次编译的时候不论程序是对是错,总是一个错误零警告呢?问题出在什么地方呢,请各路高手指点下!
错误说的什么?
&双击erro行,就跳到出错的代码附近了.
compiling...
error&spawning&c1.exe
文件名.exe-1&error(s),0&warning(0)
compiling...&
error&spawning&c1.exe&
文件名.exe-1&error(s),0&warning(0)
lz反应真够慢的
google&error&spawning&c1.exe
通常是路径没设好
怎么设呢?还想请教下您!
google&到的方法:
可能很多人在安装VC&6.0后有过点击“Compile”或者“Build”后被出现的“Compiling...&,Error&spawning&cl.exe”错误提示给郁闷过。很多人的选择是重装,实际上这个问题很多情况下是由于路径设置的问题引起的,“CL.exe”是VC使用真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,你可以到相应的路径下找到这个应用程序。&
因此问题可以按照以下方法解决:点击VC“TOOLS(工具)”—&“Option(选择)”—&“Directories(目录)”重新设置“Excutable&Fils、Include&Files、Library&Files、Source&Files”的路径。很多情况可能就一个盘符的不同(例如你的VC装在C,但是这些路径全部在D),改过来就OK了。
引用&7&楼&e_sharp&的回复:google&到的方法:&
可能很多人在安装VC&6.0后有过点击“Compile”或者“Build”后被出现的“Compiling...&,Error&spawning&cl.exe”错误提示给郁闷过。很多人的选择是重装,实际上这个问题很多情况下是由于路径设置的问题引起的,“CL.exe”是VC使用真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,你可以到相应的路径下找到这个应用程序。&
因此问题可以按照以下方法解决:点击VC“TOOLS(工具)”—&“O…
还不是很清楚,&&&&&&&&&&&&&&“Excutable&Fils、Include&Files、Library&Files、Source&Files”的路径。很多情况可能就一个盘符的不同(例如你的VC装在C,但是这些路径全部在D),改过来就OK了。”这些文件的路径怎么重设?
我用中文操作系统装韩文版的VC如果不把系统语言改为韩文也会有这种错误
以上仅供参考
韩文版的VC...
汉化版的VC6好像也有这个问题。
ls的问题不明白
个人认为绝对是编译环境设置不正确,重新装一次试试
PS.你是不是用的同事的电脑啊,我刚进公司的时候同事的机器就出现这问题
没有啊&什么机器都是如此!
回复

我要回帖

更多关于 内核模式驱动程序 的文章

 

随机推荐