最近项目结了,无事可作。尝试编译Linux 内核。平台Ubuntu。一下是步骤:
1.找到一个已经下好的新版Kernel(最后可悲的发现我以前下的kernel,竟然没有我新安的kernel版本高.... 当然我要做的是试验)
2.解压Kernel原代 bzip2 linux-2.6.XX.tar.bz2 | tar xvf
3.配置 make menuconfig
4.编译,make 和 make modules_install
5.将生成的新Kernel,从/linux/arch/i386/boot/bzImage 拷贝到/boot 目录。
6.使用mkXXXX命令,生成一个文件
7.修改Grub的启动
8.重启,检查,是否成功。
.终结:有点失败。
首先我选的平台是Ubuntu desktop版,开始配置make menuconfig的时候。发现缺少很多包。我记得我上次编译的时候,好像是Freebsd平台上,没发现缺包。上网查了一下,找到了缺的两个包。使用menuconfig发现,比光 text 的配置好多了,上次时选的都选烦了。(估计上千个选项)。但这次发现很多东西找不到,哎... 有利有弊吧!
其次,开始编译系统,这也是我比较失败的地方之一。我由于主盘安的Windows,所以给Ubuntu不到10G,加上分区。也不知道怎么的就把/home目录划到5G以下,加之一些其它文件,我发现我第一次编译的时候,出现了磁盘空间不足的问题。可恶!!!我等了一个小时(我的电脑,HT的,我平时认为已经够快了,但干这个还是不行!)。之后不得不先清空,在重编译。这次有大约等了一个多小时,哎...没办法。我都睡着了。醒来发现OK!这次总算是编译通了!!!
最后,我按照文章把它放到了/boot目录下,用mkXXXXX命令生成了,相应的文件(很可能这部错了,因为我找不到书上写的那个命令,换了一个差不多的)。配置了Grub。重启!!!我把他命名为Bybuntu,哈哈!!!很酷的名字!!!但重启发现了很严重的问题。我没办法,黯然的离开了...(明天再试!)
分享到:
相关推荐
`kernel_compile_example.tar.gz` 是一个包含了一个内核模块编译示例的压缩包,旨在教授如何创建和编译自定义的内核模块。 首先,我们来了解一下内核模块的基本概念。内核模块是一种动态链接到运行中的Linux内核的...
3. **环境变量设置**:设置正确的环境变量,如CROSS_COMPILE,以支持交叉编译。 4. **内核配置**:使用menuconfig、xconfig等工具根据需求定制内核配置选项。 **三、编译过程详解** 编译Linux内核主要包括以下几个...
在Linux环境中,内核(Kernel)的编译是系统管理员和开发者经常进行的操作,以便定制和优化内核以适应特定需求。然而,在某些情况下,编译过程中可能会遇到各种问题,如与版本控制工具的冲突。这里我们将深入探讨一...
在尝试将Android内核移植到其他硬件平台时,需要注意以下几点: - **硬件兼容性**:不同硬件平台可能需要不同的内核配置和驱动程序。 - **内核版本**:确保所使用的内核版本与硬件平台相匹配。 - **驱动支持**:...
这个例子中,我们编译了一个不区分大小写的"hello"正则表达式,并尝试在"Hello, world!"字符串中进行匹配。 ### 5. 编译和运行示例 将示例代码添加到一个新项目中,或者使用命令行编译器(如`cl.exe`)直接编译。...
由于你的编译器支持EABI,但内核默认可能不支持,所以要在内核特性中选择`Use the ARM EABI to compile the kernel`和`Allow old ABI binaries to run with this (EXPERIMENTAL) kernel`。 最后,移植YAFFS2文件...
- 初始尝试使用`git clone`命令从官方仓库获取最新源代码,但由于网络问题或大型项目的原因,这种方法可能较慢。 - 作为替代方案,采用`wget`命令下载特定版本(如v3.2)的压缩包,这通常更快。例如:`wget ...
3. **测试键盘功能**:使用USB线连接RK3399开发板到PC,检查是否能够识别为键盘,并尝试输入测试字符。 #### 五、总结 通过以上步骤,我们可以成功地将 RK3399 配置为一个USB HID键盘。这种方式可以用于多种应用...
若未自动开始烧写,需将`references\dv_reference\out\hi3559_imx117\burn\normal`下的`config`文件一并拷入SD卡中再尝试。 #### 四、单独编译mini-kernel mini-kernel是一种轻量级的Linux内核配置方案,适用于...
【移植Linux系统到QQ2440V3实战及出错解决】 移植Linux系统到QQ2440V3是一...遇到问题时,耐心检查、分析错误日志,不断尝试并参考已有的解决方案是解决问题的关键。此外,保持良好的文档记录,有助于后续维护和升级。
在深度学习领域,TensorFlow是一个广泛应用的开源框架,它提供了丰富的工具和库,使得开发者能够...这只是一个起点,随着对TensorFlow和深度学习理解的深入,你可以尝试更多的网络架构和优化策略来解决更复杂的问题。
model.compile(loss='binary_crossentropy', optimizer=sgd, metrics=['accuracy']) return model ``` 这里,我们首先添加了一个具有60个节点的输入层,然后在其后面加入了一个Dropout层,设置丢弃率为0.2。同样...
=arm`)和交叉编译前缀(`CROSS_COMPILE?=arm-none-eabi-`),确保编译器能够正确识别目标平台。 2. **编译内核**:完成上述配置后,即可使用`make`命令开始编译过程。编译完成后,将生成的内核镜像文件烧录到FS2410...
2. 编译完成后,将必要的ko(kernel object)模块复制到板子的特定目录下,如`/customer`,包括`u_ether.ko`、`usb_f_rndis.ko`、`dwc3.ko`和`g_webcam.ko`。 3. 修改`/customer/demo.sh`脚本,加载这些ko模块,并...
- 如遇到问题,尝试使用`export DISPLAY=:0.0`或`ip:0.0`及`xhost +`解决图形界面显示问题。 - 可使用`./runInstaller -ignoreSysPreReqs`跳过系统检查。 #### 三、创建数据库 ##### 3.1 配置监听 - **目的**:...
model.add(tf.layers.conv2d({inputShape: [28, 28, 1], filters: 32, kernelSize: 3, activation: 'relu'})); // 添加更多层... model.add(tf.layers.flatten()); model.add(tf.layers.dense({units: categories....
通过调整超参数(如滤波器数量、池化大小、隐藏层神经元数量等)和尝试不同的优化器、正则化方法,可以进一步优化模型的性能。这个过程称为模型调优,对于提升模型在实际应用中的表现至关重要。