无线网卡驱动移植的交叉编译问题!
时间:2006-07-27
来源:互联网
我的无线网卡为asus wl-167g 驱动是官方网站下的,已在PC机的linux系统上能正常工作.
现在想把它修改,使它能在ARM板上使用.我修改了Makefile,把编译器修改成了arm-linux-gcc,
make时出现问题
[root@localhost RT25USB-SRC-V2.0.7.0]# ls
assoc.c rt2570sw.h rtusb_info.c
auth.c rt_config.h rtusb_init.c
auth_rsp.c md5.c rtmp_ckipmic.h rtusb_io.c
config.mk md5.h rtmp_def.h rtusb_main.c
config.new mlme.c rtmp_tkip.c sanity.c
Configure mlme.h rtmp_type.h sha1.h
connect.c oid.h rtmp_wep.c Stdincl.h
iwpriv_usage.txt readme rtusb_bulk.c sync.c
LINUX_RACONFIG_V2.0.0.7 ReleaseNote rtusb_data.c wpa.c
Makefile rt2570.h rtusb.h wpa.h
[root@localhost RT25USB-SRC-V2.0.7.0]# make
arm-linux-gcc -DRT2500_DBG -D__KERNEL__ -I/usr/src/linux-2.4.20-8/include -O2 -f
omit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS
-include /usr/src/linux-2.4.20-8/include/linux/modversions.h -Wall -Wstrict-pro
totypes -Wno-trigraphs -c -o rtusb_main.o rtusb_main.c
rtusb_main.c: In function `CMDHandler':
rtusb_main.c:1072: warning: unused variable `i'
rtusb_main.c:1073: warning: unused variable `pkey'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_eax':
/usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `dx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `cx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `bx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_ebx':
/usr/src/linux-2.4.20-8/include/asm/processor.h:161: unknown register name `dx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:161: unknown register name `cx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_ecx':
/usr/src/linux-2.4.20-8/include/asm/processor.h:171: unknown register name `dx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:171: unknown register name `bx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_edx':
/usr/src/linux-2.4.20-8/include/asm/processor.h:181: unknown register name `cx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:181: unknown register name `bx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `set_in_cr4':
/usr/src/linux-2.4.20-8/include/asm/processor.h:217: unknown register name `ax'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `clear_in_cr4':
/usr/src/linux-2.4.20-8/include/asm/processor.h:227: unknown register name `ax'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit':
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit_constant'
:
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit_var':
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/rwsem.h: In function `__up_write_R70ec8bc6':
/usr/src/linux-2.4.20-8/include/asm/rwsem.h:216: unknown register name `edx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/rwsem.h: In function `up_write':
/usr/src/linux-2.4.20-8/include/asm/rwsem.h:216: unknown register name `edx' in
`asm'
{standard input}: Assembler messages:
{standard input}:382: Error: bad instruction `pushfl'
{standard input}:382: Error: bad instruction `popl [r3,#0]'
{standard input}:383: Error: bad instruction `cli'
{standard input}:395: Error: bad instruction `pushl [r3,#0]'
{standard input}:395: Error: bad instruction `popfl'
make: *** [rtusb_main.o] Error 1
[root@localhost RT25USB-SRC-V2.0.7.0]#
好象是汇编的错误,问题可能在那里啊?请高手指点!
Makefile 内容如下:
# Comment/uncomment the following line to enable/disable debugging
CC := arm-linux-gcc
include ./config.mk
WFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs
CFLAGS := -DRT2500_DBG -D__KERNEL__ -I$(LINUX_SRC)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS)
OBJ = rt2570.o
all: $(OBJ)
@touch config.mk
rt2570.o: rtusb_main.o mlme.o connect.o rtusb_bulk.o rtusb_io.o sync.o assoc.o auth.o auth_rsp.o rtusb_data.o rtusb_init.o sanity.o rtmp_wep.o rtusb_info.o rtmp_tkip.o wpa.o md5.o
$(LD) -r $^ -o $@
clean:
rm -f *.o *~ core
install:
@touch config.mk
#mkdir -p $(TARGET_MODDIR)
echo $(TARGET_MODDIR)
install $(OBJ) $(TARGET_MODDIR)
config:
@touch config.mk
@./Configure
现在想把它修改,使它能在ARM板上使用.我修改了Makefile,把编译器修改成了arm-linux-gcc,
make时出现问题
[root@localhost RT25USB-SRC-V2.0.7.0]# ls
assoc.c rt2570sw.h rtusb_info.c
auth.c rt_config.h rtusb_init.c
auth_rsp.c md5.c rtmp_ckipmic.h rtusb_io.c
config.mk md5.h rtmp_def.h rtusb_main.c
config.new mlme.c rtmp_tkip.c sanity.c
Configure mlme.h rtmp_type.h sha1.h
connect.c oid.h rtmp_wep.c Stdincl.h
iwpriv_usage.txt readme rtusb_bulk.c sync.c
LINUX_RACONFIG_V2.0.0.7 ReleaseNote rtusb_data.c wpa.c
Makefile rt2570.h rtusb.h wpa.h
[root@localhost RT25USB-SRC-V2.0.7.0]# make
arm-linux-gcc -DRT2500_DBG -D__KERNEL__ -I/usr/src/linux-2.4.20-8/include -O2 -f
omit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS
-include /usr/src/linux-2.4.20-8/include/linux/modversions.h -Wall -Wstrict-pro
totypes -Wno-trigraphs -c -o rtusb_main.o rtusb_main.c
rtusb_main.c: In function `CMDHandler':
rtusb_main.c:1072: warning: unused variable `i'
rtusb_main.c:1073: warning: unused variable `pkey'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr
aints in an `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_eax':
/usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `dx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `cx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `bx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_ebx':
/usr/src/linux-2.4.20-8/include/asm/processor.h:161: unknown register name `dx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:161: unknown register name `cx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_ecx':
/usr/src/linux-2.4.20-8/include/asm/processor.h:171: unknown register name `dx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:171: unknown register name `bx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_edx':
/usr/src/linux-2.4.20-8/include/asm/processor.h:181: unknown register name `cx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h:181: unknown register name `bx'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `set_in_cr4':
/usr/src/linux-2.4.20-8/include/asm/processor.h:217: unknown register name `ax'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/processor.h: In function `clear_in_cr4':
/usr/src/linux-2.4.20-8/include/asm/processor.h:227: unknown register name `ax'
in `asm'
/usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit':
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit_constant'
:
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit_var':
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/rwsem.h: In function `__up_write_R70ec8bc6':
/usr/src/linux-2.4.20-8/include/asm/rwsem.h:216: unknown register name `edx' in
`asm'
/usr/src/linux-2.4.20-8/include/asm/rwsem.h: In function `up_write':
/usr/src/linux-2.4.20-8/include/asm/rwsem.h:216: unknown register name `edx' in
`asm'
{standard input}: Assembler messages:
{standard input}:382: Error: bad instruction `pushfl'
{standard input}:382: Error: bad instruction `popl [r3,#0]'
{standard input}:383: Error: bad instruction `cli'
{standard input}:395: Error: bad instruction `pushl [r3,#0]'
{standard input}:395: Error: bad instruction `popfl'
make: *** [rtusb_main.o] Error 1
[root@localhost RT25USB-SRC-V2.0.7.0]#
好象是汇编的错误,问题可能在那里啊?请高手指点!
Makefile 内容如下:
# Comment/uncomment the following line to enable/disable debugging
CC := arm-linux-gcc
include ./config.mk
WFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs
CFLAGS := -DRT2500_DBG -D__KERNEL__ -I$(LINUX_SRC)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS)
OBJ = rt2570.o
all: $(OBJ)
@touch config.mk
rt2570.o: rtusb_main.o mlme.o connect.o rtusb_bulk.o rtusb_io.o sync.o assoc.o auth.o auth_rsp.o rtusb_data.o rtusb_init.o sanity.o rtmp_wep.o rtusb_info.o rtmp_tkip.o wpa.o md5.o
$(LD) -r $^ -o $@
clean:
rm -f *.o *~ core
install:
@touch config.mk
#mkdir -p $(TARGET_MODDIR)
echo $(TARGET_MODDIR)
install $(OBJ) $(TARGET_MODDIR)
config:
@touch config.mk
@./Configure
作者: chenjx123 发布时间: 2006-07-27
/usr/src/linux-2.4.20-8这个目录是你潜入式系统里的内核吗?
/usr/src/linux-2.4.20-8/include/asm 这里asm符号连接是指向arm吗
/usr/src/linux-2.4.20-8/include/asm 这里asm符号连接是指向arm吗
作者: xdkui 发布时间: 2006-07-29
暂时路过,还不懂这么高深的理论,呵呵!
作者: bones7456 发布时间: 2006-08-01
要指定板子的内核路径.
引用:
作者: chenjx123
我的无线网卡为asus wl-167g 驱动是官方网站下的,已在PC机的linux系统上能正常工作.
现在想把它修改,使它能在ARM板上使用.我修改了Makefile,把编译器修改成了arm-linux-gcc, make时出现问题 [root@localhost RT25USB-SRC-V2.0.7.0]# ls assoc.c rt2570sw.h rtusb_info.c auth.c rt_config.h rtusb_init.c auth_rsp.c md5.c rtmp_ckipmic.h rtusb_io.c config.mk md5.h rtmp_def.h rtusb_main.c config.new mlme.c rtmp_tkip.c sanity.c Configure mlme.h rtmp_type.h sha1.h connect.c oid.h rtmp_wep.c Stdincl.h iwpriv_usage.txt readme rtusb_bulk.c sync.c LINUX_RACONFIG_V2.0.0.7 ReleaseNote rtusb_data.c wpa.c Makefile rt2570.h rtusb.h wpa.h [root@localhost RT25USB-SRC-V2.0.7.0]# make arm-linux-gcc -DRT2500_DBG -D__KERNEL__ -I/usr/src/linux-2.4.20-8/include -O2 -f omit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.20-8/include/linux/modversions.h -Wall -Wstrict-pro totypes -Wno-trigraphs -c -o rtusb_main.o rtusb_main.c rtusb_main.c: In function `CMDHandler': rtusb_main.c:1072: warning: unused variable `i' rtusb_main.c:1073: warning: unused variable `pkey' /usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr aints in an `asm' /usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr aints in an `asm' /usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr aints in an `asm' /usr/src/linux-2.4.20-8/include/asm/semaphore.h:201: inconsistent operand constr aints in an `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_eax': /usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `dx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `cx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h:151: unknown register name `bx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_ebx': /usr/src/linux-2.4.20-8/include/asm/processor.h:161: unknown register name `dx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h:161: unknown register name `cx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_ecx': /usr/src/linux-2.4.20-8/include/asm/processor.h:171: unknown register name `dx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h:171: unknown register name `bx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h: In function `cpuid_edx': /usr/src/linux-2.4.20-8/include/asm/processor.h:181: unknown register name `cx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h:181: unknown register name `bx' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h: In function `set_in_cr4': /usr/src/linux-2.4.20-8/include/asm/processor.h:217: unknown register name `ax' in `asm' /usr/src/linux-2.4.20-8/include/asm/processor.h: In function `clear_in_cr4': /usr/src/linux-2.4.20-8/include/asm/processor.h:227: unknown register name `ax' in `asm' /usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit': /usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in `asm' /usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in `asm' /usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit_constant' : /usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in `asm' /usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in `asm' /usr/src/linux-2.4.20-8/include/asm/system.h: In function `__set_64bit_var': /usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `dx' in `asm' /usr/src/linux-2.4.20-8/include/asm/system.h:163: unknown register name `ax' in `asm' /usr/src/linux-2.4.20-8/include/asm/rwsem.h: In function `__up_write_R70ec8bc6': /usr/src/linux-2.4.20-8/include/asm/rwsem.h:216: unknown register name `edx' in `asm' /usr/src/linux-2.4.20-8/include/asm/rwsem.h: In function `up_write': /usr/src/linux-2.4.20-8/include/asm/rwsem.h:216: unknown register name `edx' in `asm' {standard input}: Assembler messages: {standard input}:382: Error: bad instruction `pushfl' {standard input}:382: Error: bad instruction `popl [r3,#0]' {standard input}:383: Error: bad instruction `cli' {standard input}:395: Error: bad instruction `pushl [r3,#0]' {standard input}:395: Error: bad instruction `popfl' make: *** [rtusb_main.o] Error 1 [root@localhost RT25USB-SRC-V2.0.7.0]# 好象是汇编的错误,问题可能在那里啊?请高手指点! Makefile 内容如下: # Comment/uncomment the following line to enable/disable debugging CC := arm-linux-gcc include ./config.mk WFLAGS := -Wall -Wstrict-prototypes -Wno-trigraphs CFLAGS := -DRT2500_DBG -D__KERNEL__ -I$(LINUX_SRC)/include -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -DMODULE -DMODVERSIONS -include $(LINUX_SRC)/include/linux/modversions.h $(WFLAGS) OBJ = rt2570.o all: $(OBJ) @touch config.mk rt2570.o: rtusb_main.o mlme.o connect.o rtusb_bulk.o rtusb_io.o sync.o assoc.o auth.o auth_rsp.o rtusb_data.o rtusb_init.o sanity.o rtmp_wep.o rtusb_info.o rtmp_tkip.o wpa.o md5.o $(LD) -r $^ -o $@ clean: rm -f *.o *~ core install: @touch config.mk #mkdir -p $(TARGET_MODDIR) echo $(TARGET_MODDIR) install $(OBJ) $(TARGET_MODDIR) config: @touch config.mk @./Configure |
作者: gpgqqd 发布时间: 2006-08-16
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28