Linux常见问题

1.make menuconfig 时找不到 system type 选项
解决办法:将 mke menuconfig 改成  make ARCH=arm menuconfig

`gcc -print-prog-name=cc1plus` -v

`g++ -print-prog-name=cc1plus` -v
4./root/桌面/linux-2.6.24.4/include/asm-arm/arch-s3c2410/hardware.h

GPIO定义在这里!!!
linux-2.6.24.4/arch/arm/plat-s3c24xx/gpio.c




5.   make[2]: ***[/usr/src/linux-2.6.32.61/usr/include/asm/.check] error 123
make[1]:***[headers_check] error 2

make:***[vmlinux] error 2

解决方法如下:

cd arch/x86/include/asm

vi ptrace.h

注释掉 

#include<linux/linkage.h>

146行的

extern asmregparm long syscall_trace_enter(struct pt_regs *);

extern asmregparm void syscall_trace_leave(struct pt_regs *);

增加如下两行代码

extern long syscall_trace_enter(struct pt_regs *);

extern void syscall_trace_leave(struct pt_regs *);  


6. make[1]: *** [scripts/unifdef] Error 1

make: *** [headers_install] Error 2

这个只需要
[root@mydream-arch linux-2.6.27.4]# vi /usr/include/stdio.h
在第651行中把getline改成get_line即可,改完后就是下面这个样子

extern _IO_ssize_t get_line (char **__restrict __lineptr,
size_t *__restrict __n,
FILE *__restrict __stream) __wur; 

7. CC     arch/x86/boot/tty . o
CC     arch/x86/boot/video .o
arch/x86/boot/boot .h: Assembler messages:
arch/x86/boot/boot .h:112: Error: bad register name `%dil'
make[1]: *** [arch/x86/boot/video .o] Error 1
make: *** [bzImage] Error 2
解决:
在所在行用"=q"替换"=r"即可。(replace "=r" with "=q" in the affected line ."dil" (lower 8 bits part of [RE]DI) register is inexistent underx86-32, only available under x86-64 .) 
8. 关于编译过程遇到的Error: bad register name %dil问题, 找到那个文件的那一行, 内容是这样的:
rdfs8
asm volatile("movb %%fs:%1,%0" : "=r" (v) : "m" (*(u8 *)addr));
这里没有寄存器dil... 准确来说这里是没有显式使用寄存器dil, 但是, 根据http://www.delorie.com/djgpp/doc/brennan/brennan_att_inline_djgpp.html的介绍, 这里的r表示从esi和edi中动态选择, 这里的dil就是从这里来的了. 解决方案, edi不好使, 咱就换一组, 换q就是了, q是在eax, ebx, ecx, edx中间挑一个, 改完搞定, 重新编译通过.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值