成功 但出现编译错误时老出这个错误是怎么回事

1、若编译内核时总是出现同一个错误,如下:
在make modules_install时最后几行弹出错误:
if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map 2.6.12.2; fi
/bin/sh: line 1: 3357 已杀死 /sbin/depmod -ae -F System.map 2.6 .12.2
make: *** [_modinst_post] 错误 137
如果继续make install,重启,是进不去刚刚编译安装的那个内核的,显示内核错误。
分析:如果 System.map可读 并且 /sbin/depmod可执行;那么就执行/sbin/depmod -ae -F System.map 2.6.20;结束
depmod(depend module) 功能说明:分析可载入模块的相依性。
语 法:depmod [-adeisvV][-m &文件&][--help][模块名称]
补充说明:depmod可检测模块的相依性,供modprobe在安装模块时使用。
-a或--all 分析所有可用的模块。
-d或debug 执行排错模式。
-e 输出无法参照的符号。
-i 不检查符号表的版本。
-m&文件&或system-map&文件& 使用指定的符号表文件。
-s或--system-log 在系统记录中记录错误。
-v或--verbose 执行时显示详细的信息。
-V或--version 显示版本信息。
--help 显示帮助。
解决方法:make module_install之前你是否关闭了selinux,
该问题是selinux阻止写/lib/modules/ &version& 目录
2、若重启系统后显示: Warning--SElinux relabel is required
Disabling security enforcement
Relabeling could take a very long time
depending on file system size
可以更改grub.conf 将selinux=0添加到如下位置
kernel /vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ selinux=0 rhgb quiet
或者更改/etc/selinux/config,将SELINUX=Disabled,存盘就可以把 selinux 关闭了
3、修改selinux 在新版本中的Red Hat 和 Fedora 上,修改档案/etc/sysconfig/selinux:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
把 SELINUX设定为disable, 下次启动系统后将会停止SElinux.
Linux核心参数(Kernel Parameter)
或者可以在核心参数后加上: selinux=0 (停止) 或 selinux=1 (开启)参数
档案/boot/grub/menu.lst
title Fedora Core (2.6.18-1.2798.fc6)
root (hd0,0)
kernel /vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet selinux=0
initrd /initrd-2.6.18-1.2798.fc6.img
检查SELinux现时况态
要知到你现在是否使用 SELinux:
# getenforce
4、重启后若出现Kernel panic:VFS: Unable to mount root fs on unknown-block(0,0)
从错误信息上看,是没有识别到硬盘。看来,我机器上的SATA硬盘必须在内核中做相应的配置才能识别。
仔细阅读了内核配置时的帮助信息,得知内核支持两种SATA驱动程序:一种是libata,在SCSI子系统中,支持最新的SATA控制器;还有一种是 IDE驱动程序中的SATA,主要是支持第一代的SATA控制器。我的机器应该是比较新的,所以先按libata的方式来配置试试。
先看看我的SATA控制器是什么类型的?运行lspci,输出如下:
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Con troller (rev 01)
就是SATA控制器的类型。
解决方法:在make menuconfig中设置以下选项:
Device Driver
|----&SCSI device support
|----&SCSI disk support
|-----&verbose SCSI error reporting (不是必须的,但可方便问题定位)
|-----&SCSI low-level drivers
|----&Serial ATA (SATA) support
|----&intel PIIX/ICH SATA support
&*& RAM disk support 在 device drivers -& Block devices中
&*& Initial RAM disk (initrd) support 在 device drivers -& Block devices中
&*& Compressed ROM file system support (cramfs) 在file systems -& Miscellaneous filesystems中
5、若重启之后出现网卡不识别,无法激活,出现via-rhine device eth0 does not seem to be present, delaying initialization
缺少VIA 驱动
运行 make menuconfig 在Networking support--&Networking device support --& Ethernet (10 or 100Mbit) 里找到 &M&"VIA Rhine RevB support"
6、若重启后显示如下:
reading all physical volumns, this may take a while…
no volumns group found!
unable to find volumns group "VolGroup00"
ERROR: /bin/lvm exited abnormal with value 5 (pid 335)
error 6 mounting ext3
ERROR OPENING /dev/console!!:2
error dup2ing fd of 0 to 0
error dup2ing fd of 1 to 1
error duping fd of 2 to 2
switchroot:mount failed:22
kernel panic - no syncing: attempted to kill init!
运行make menuconfig时在 device drivers -&[*] Multiple devices driver support (RAID and LVM)
如果有以下选项,也应该启用它们:&*& Logical volume manager (LVM) support他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)VS2015的问题,求大家指教! 编译时出这个错误提示是怎么回事呀???
[问题点数:40分]
VS2015的问题,求大家指教! 编译时出这个错误提示是怎么回事呀???
[问题点数:40分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2016年5月 总版技术专家分月排行榜第二
2016年10月优秀大版主2016年8月论坛优秀大版主
2018年1月 总版技术专家分月排行榜第一2016年12月 总版技术专家分月排行榜第一2016年11月 总版技术专家分月排行榜第一2016年10月 总版技术专家分月排行榜第一
2016年10月优秀大版主2016年8月优秀大版主
2015年1月 VC/MFC大版内专家分月排行榜第三
匿名用户不能发表回复!|编译的时候总是出这种异常,如何解决啊死了! - VC/MFC当前位置:& &&&编译的时候总是出这种异常,如何解决啊死了!编译的时候总是出这种异常,如何解决啊死了!www.MyException.Cn&&网友分享于:&&浏览:6次编译的时候总是出这种错误,怎么解决啊?急死了!!!!Linking...
RevereCardHJDlg.obj & : & error & LNK2005: &
&class & _com_ptr_t &class & _com_IIID &struct & _Connection,&struct & __s_GUID & _GUID_0_aa006d2ea4&
& m_pConnection & & (?m_pConnection@@3V?$_com_ptr_t@V?$_com_IIID@U_Connection@@$1?_GUID_0
_aa006d2ea4@@3U__s_GUID@@A@@@@A) & already & defined & in & RevereCardHJ.obj
Debug/RevereCardHJ.exe & : & fatal & error & LNK1169: & one & or & more & multiply & defined & symbols & found
Error & executing & link.exe.
RevereCardHJ.exe & - & 2 & error(s), & 0 & warning(s) ------解决方案--------------------有一个变量声明在头文件里了,在CPP或C文件里INCLUDE 进来后就会这样,
应该在头文件里加上extern 在CPP 里在定义
------解决方案--------------------m_pConnection重定义.
RevereCardHJDlg与RevereCardHJ都定义了
------解决方案--------------------变量的声明和定义是两个概念。
你定义的是全局变量,链接时要给各全局变量分配空间,而各个cpp文件都包含了头文件中对这个变量的定义,因此出现了重名的全局变量。
如果头文件是全局变量的声明,编译链接时就不会再分配空间,也就没那个重名的错误了
呵呵,大概就是这个意思,表述的不太严格:)
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有

我要回帖

更多关于 pr导出时错误编译影片 的文章

 

随机推荐