当前位置:首页 » 编程软件 » gedit编辑器可以编译内核吗

gedit编辑器可以编译内核吗

发布时间: 2022-05-05 03:09:08

‘壹’ 如何用ubuntu编译linux内核

1、在http://www.kernel.org/上下载最新的内核源代码linux-2.6.33.1.tar.bz2,放在/liqiong/Linux内核 目录下,liqiong是Linux OS的第一个用户名。
2、进入Linux内核源码所在的目录(cd Linux内核),解压该内核代码到/usr/src下:
sudo tar -xjvf linux-2.6.33.1.tar.bz2 -C /usr/src
3、进入Linux内核源码解压后的目录/usr/src/linux-2.6.33.1(cd /usr/src/linux-2.6.33.1)
4、sudo make mrproper 净化解压后的源代码
5、sudo make menuconfig 对内核选项进行配置
在配置过程中会发生如下错误:
*** Unable to find the ncurses libraries or the
*** required header files.
*** 'make menuconfig' requires the ncurses libraries.
***
*** Install ncurses (ncurses-devel) and try again.
***
make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1
make: *** [menuconfig] 错误2
解决办法:
(1)cd / 进入根目录后,在终端输入:sudo apt-get install ncurses
信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
现在没有可用的软件包 ncurses,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
E: 软件包 ncurses 还没有可供安装的候选者
(2)然后接着在终端输入:sudo apt-get install libncurses*
(3)再cd /usr/src/linux-2.6.33.1进入内核所在目录,再次输入sudo make menuconfig就好了!
6、对于配置可选择General Setup或者选择其他的自定义选项保存后退出。
7、sudo make dep 建立模块间的依赖信息
8、sudo make clean 删除配置时留下的一些不用的文件
(7、8两步可能对于一些PC没有作用)
9、sudo make bzImage 编译内核,内核较小时可以用make zImage
10、sudo make moles 编译内核模块
当然,在编译内核时,可通过make-j<n>来加速内核的编译,n一般等于CPU数量的两倍。单核,n=2;双核,n=4.即执行sudo make -j4就可以编译了!
11、sudo make moles_install 安装内核模块
12、sudo make install 安装内核
13、cd / 后在终端输入:sudo mkinitramfs 2.6.33.1 -o /boot/initrd.img-2.6.33.1-generic
14、到此为止,构建内核完毕,第十二步把内核映象和System.map拷贝到/boot/下
#sudo cp /usr/src/linux-2.6.33.1/arch/i386/boot/bzImage /boot/vmlinuz-2.6.33.1-generic
#sudo cp System.map /boot/System.map-KERNEL_VERSION
#sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map
15、
(1)修改grub配置文件
在终端输入:sudo update-grub2,就会把刚才编译的内核加入了Grub;(此时就可以重启了,重启后在Grub启动项里多了Ubuntu, Linux 2.6.33.1-generic)
若还需修改(在Ubuntu10.04中没有采用menu.lst,而是用的grub.cfg(/boot/grub/)),则修改grub.cfg就可以了,
在终端中输入:sudo gedit /boot/grub/grub.cfg 用root账户进入grub.cfg并编辑
(或用sudo chmod +w /boot/grub/grub.cfg改变grub.cfg的权限后在进行编辑)
如将Grub中的menuentry "Ubuntu, Linux 2.6.33.1-generic"{...}修改为menuentry "Ubuntu, Linux 2.6.33.1-liqiong"{...}(Linux 2.6.33.1-generic是我们刚才编译的内核)
(2)修改default变量
在/boot/grub/grub.cfg中,设置set default="【某个数字】"(设置Grub启动项里的默认启动项)
在Grub启动项里,从0数起,我的XP在第10项,所以set default="10",即XP就是默认的启动项了。
最后重启即可。

‘贰’ 在Linux下编程都是用vim的吗

不是,因个人所好。可供选择的编辑器很多,比如:emacs,gedit,gvim,eclipse,sublime等等。
其中,编辑器之神vim和神之编辑器emacs,是Linux平台上使用率是最高的;据说内核他爹Linus用的emacs。
gedit功能有限;gvim提供给桌面用户的vim;eclipse从window切换到linux用户用的多一点;sublime好像是个付费的编辑器,有免费版对于桌面用户也是不错的选择

‘叁’ linux编译配置好的内核,编译镜像时候出现arm-linux-:命令未找到

解决方法:
1.先打开一个超级用户权限的shell:
命令:sudo –s
2.在当前shell下,设置环境变量:
命令:gedit /etc/profile
在文件末端加上 export PATH=$PATH:/usr/local/arm/4.4.3/bin,并保存。
3. 执行source /etc/profile 这是避免重新启动ubuntu而又使刚刚修改的环境变量生效的方法。
4、再进入到/opt/FriendlyARM/mini2440/linux-2.6.32.2 目录,执行make zImage(有可能加sudo),arm-linux-gcc了,可以编译了。

‘肆’ 如何修改新内核linux下的grub配置

sudo
gedit
/boot/grub/grub.cfg
gedit可以换成nano,vim等看你用什么文本编辑器了。
grub.cfg是新版grub。以前版本的是menu.list(lst??)

‘伍’ linux 下可以用gcc 编译windows可用的 exe文件吗

根据gcc的编译选项可以看出: 不能
由于Linux和windows是完全不兼容的, Linux上不使用文件后缀名来区分文件, 所以同样是gcc编译出来的文件,在Linux上可以执行, 在windows就不能了。

可以安装Cygwin模拟Linux环境,将源代码拷到windows下, 用Cygwin编译出exe文件,可以在Windows上执行。

‘陆’ 在编译内核时修改linux文件系统出现这样的情况,不能保存,怎么破

这个是linux的保护机制,一般配置文件会自动产生一个.old文件。
因为文件非常重要,所以linux的保护机制提示需要备份一个,配置出错也能恢复。
每次操作一些文件的时候不妨 cp /xx/yyyy/aa.bbb /xx/yyyy/aa.bbb.old 后再进行操作。
这样出错了也能自己手动恢复回来,应该养成这样一个良好的习惯。
编辑的话觉得vi用不惯可以用nano。gedit编辑好像会出问题,以前我配置网卡IP的时候nano,vi写出来没问题,gedit写出来就有问题。这个我也就不懂了

‘柒’ 如何利用Linux下的文件编辑器Gedit来编写程序,如C++等语言。

其实在Linux下用什么文本编辑器都可以,但是我推荐使用Vi或者Vim。
因为这两个是最流行的。而且是任何Linux中都会自带的。
Vim是从Vi发展过来的 ,功能更加强大。
创建源代码文件(code.c)命令:vim code.c
编写完成后保存退出:先按ESC,然后按“:”,然后按wq保存键。
然后连接,编译,gcc code.c 生成一个可执行文件,a.out
在命令行中执行./a.out就可以执行文件了。

‘捌’ 交叉编译环境和内核

“redhat9的内核2.4,我也升级到2.6了。”
这样你的系统是不稳定的,在你学习的过程中会有很多很莫名其妙的问题出现的,用的话还是用你的2.4内核吧,要不,你直接用你内核是2.6的linux发行版,比如fedora 或者ubuntu等等。

首先前提是你有arm-linux-gcc的编译工具。这套工具不同的版本用途不大一样,有些用来编译内核,有些用来编译Qt应用程序。

关于Redhat 9.0里面建立一个交叉编译环境的方法如下:

把你的编译工具(以下以arm-linux-gcc-2.95.3.tgz为例)放置某目录。
1、解压:tar -zxvf arm-linux-gcc-2.95.3.tgz
会在当前目录产生上述包的解压文件,在这个目录里面找到bin目录,把这个bin目录的绝对路径记录下载。

2、然后添加交叉编译工具进入系统的环境变量:
gedit /root/.bashrc
编辑/root/.bashrc文件,在最后一行加上
export PATH=$PATH:xxx
xxx是你1、步骤的bin的路径。接着重启或者注销一下就可以了。
重启完成后打开终端输入arm-linux-gcc -v 看看有没有输出相关的版本信息。

注:上述操作是以root身份登录系统的。

祝你好运!!

‘玖’ ubuntu下怎么编译linux内核

Ubuntu 系统
1. 准备工作
切换为管理员权限,sudo –i 输入用户密码 进入root 权限
apt-get install build-essential kernel-package libncurses5-dev libqt3-headers
build-essential (基本的编程库(gcc, make 等)
kernel-package (Debian 系统里生成 kernel-image 的一些配置文件和工具)
libncurses5-dev (meke menuconfig 要调用的)
libqt3-headers (make xconfig 要调用的)
2. 下载特定版本的内核源代码
3. 复制源码linux-3.2.12.tar.bz2 到/usr/src 目录,解压缩
命令.假设源码存放在/home 目录下
cp /home/linux-3.2.12.tar.bz2 /usr/src
cd /usr/src
tar xvjf linux-3.2.12.tar.bz2
解压后生成 linux-3.2.12 目录
4. cd linux-3.2.12
接下来配置内核选项
make menuconfig 这一步比较复杂,内核选项很多,可以使用当前内核的配置选项,
但编译内核的时间会比较长,因为装系统的时候使用的配置是适应大多数系统的,非定
制选项。关于内核配置选项怎么定制,网上很多。
5. 把正在使用系统中的内核配置文件/usr/src/linux-headers-2.6.38-13-generic/.config 拷到
/usr/src/linux-3.2.12 目录下
cp /usr/src/ linux-headers-2.6.38-13-generic/.config /usr/src/ linux-3.2.12
执行:
cd /usr/src/ linux-3.2.12
make menuconfig
终端会弹出一个配置界面
注意主菜单最后有两项:
load a kernel configuration…
save a kernel configuration…
先选第一项load ….,意思是,利用当前的内核配置详单来设置将要编译的内核,然后选save 这一项保存,最后退出配置界面
6. 开如编译安装新内核
执行:make mrproper (清除以前曾经编译过的旧文件,如果是第一次编译,可不执行)
执行:make (编译,加-j4,必须加,双核并行编译,速度快很多,不过使用原先配置
选项)
然后:make install
再:make moles (编译模块)
再:make moles_install (安装模块)
最后创建initrd 文件:
mkinitramfs -o /boot/initrd.img-linux-3.2.12
7. make install 以后,系统自动更新了启动项,可以cat /boot/grub/grub.cfg 看下.之前的启动项不能删除,如果编译内核不成功,之前的启动项又不见了,系统也就跪了
8. reboot

‘拾’ Linux内核编译出错。

你的编译环境有问题。

as 提示不支持某个参数,而且从上面看你应该在编译 arm 架构的内核,但后面的提示是 as 命令,这种名字的命令(没有架构前缀)应该是本地编译器。我想你不太可能在 arm 上本地编译内核吧(实际上确实可以,而且我以前玩 arm 也都倾向于 arm 上本地编译,就是速度慢,需要用 distcc 加速,但兼容好)?
貌似是 -EL 参数 ix86 架构不支持。所以不太可能这步就是应该用本地 as 编译。
如果不是 arm 本地编译,那有可能这步用错了 as 这个汇编器命令。你的台式计算机 as 是 x86 或者 amd64 的,肯定不支持 arm 特有的编译参数和代码。

你看看你的编译文章吧。可能有错,不符合现在内核编译的规范了。或者 GCC 版本太老或者太新不支持这个参数。不排除你的交叉编译环境有问题。

别听那匿名胡扯的,内核源代码根本没有 configure 。

热点内容
优酷怎么给视频加密 发布:2025-05-14 19:31:34 浏览:633
梦三国2副本脚本 发布:2025-05-14 19:29:58 浏览:859
phpxmlhttp 发布:2025-05-14 19:29:58 浏览:432
Pua脚本 发布:2025-05-14 19:24:56 浏览:448
苹果像素低为什么比安卓好 发布:2025-05-14 19:13:23 浏览:460
安卓机微信怎么设置红包提醒 发布:2025-05-14 19:00:15 浏览:271
androidsystem权限设置 发布:2025-05-14 18:56:02 浏览:970
mq脚本 发布:2025-05-14 18:45:37 浏览:25
仙境传说ro解压失败 发布:2025-05-14 18:45:01 浏览:868
betweenand的用法sql 发布:2025-05-14 18:39:25 浏览:250