当前位置: 首页 > news >正文

设备驱动程序编程-Linux2.6.10-kdb安装

文章目录

        • kdb patch
        • config
        • build

在这里插入图片描述

kdb patch

下载

https://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux.git/
https://lkml.org/
https://ftp.jaist.ac.jp/pub/Linux/Momonga/2/SOURCES/

解压

    bzip2  -d  kdb-v4.4-2.6.10-common-1.bz2 bzip2  -d  kdb-v4.4-2.6.10-i386-1.bz2 

patch

patch -p1 < kdb-v4.4-2.6.10-common-1 
patch -p1 < kdb-v4.4-2.6.10-i386-1
config
[root@localhost linux-2.6.10]#uname -m
x86_64
[root@localhost linux-2.6.10]#
1. 设置正确的架构并重新配置
bash
# 设置正确的架构
export ARCH=i386# 清理配置并重新开始
rm -f .config
make mrpropermake ARCH=i386 defconfig \HOSTCC="/opt/gcc-3.4.6/bin/gcc -m32 -B/opt/gcc-3.4.6/bin/ -L/opt/gcc-3.4.6/lib" \HOSTLD="/opt/gcc-3.4.6/bin/ld" \HOSTCFLAGS="-m32 -static" \HOSTLDFLAGS="-m32 -static"
2. 启用必要的依赖选项
bash
# 确保这些基础选项都启用
echo "CONFIG_DEBUG_KERNEL=y" >> .config
echo "CONFIG_DEBUG_INFO=y" >> .config
echo "CONFIG_MAGIC_SYSRQ=y" >> .config
echo "CONFIG_KALLSYMS=y" >> .config
echo "CONFIG_KALLSYMS_ALL=y" >> .config
3. 启用 KDB 选项
bash
# 启用 KDB
echo "CONFIG_KDB=y" >> .config
echo "CONFIG_KDB_MODULES=y" >> .config
echo "CONFIG_KDB_OFF=y" >> .config
4. 更新配置
bash
# 更新配置,在提示时,对于新选项直接按回车使用默认值
make ARCH=i386 oldconfig \HOSTCC="/opt/gcc-3.4.6/bin/gcc -m32 -B/opt/gcc-3.4.6/bin/ -L/opt/gcc-3.4.6/lib" \HOSTLD="/opt/gcc-3.4.6/bin/ld" \HOSTCFLAGS="-m32 -static" \HOSTLDFLAGS="-m32 -static"检查grep -i "kdb" .config

在这里插入图片描述

bash
# 创建环境变量设置脚本
cat > /opt/gcc-3.4.6/setenv.sh << 'EOF'
#!/bin/bash
export OLD_TOOLCHAIN_PATH=/opt/gcc-3.4.6
export PATH=$OLD_TOOLCHAIN_PATH/bin:$PATH# 强制32位编译工具链
export CC="$OLD_TOOLCHAIN_PATH/bin/gcc -m32"
export CXX="$OLD_TOOLCHAIN_PATH/bin/g++ -m32"
export LD="$OLD_TOOLCHAIN_PATH/bin/ld"
export AS="$OLD_TOOLCHAIN_PATH/bin/as --32"
export AR="$OLD_TOOLCHAIN_PATH/bin/ar"
export NM="$OLD_TOOLCHAIN_PATH/bin/nm"
export RANLIB="$OLD_TOOLCHAIN_PATH/bin/ranlib"
export STRIP="$OLD_TOOLCHAIN_PATH/bin/strip"# 库和头文件路径
export LIBRARY_PATH=$OLD_TOOLCHAIN_PATH/lib:$LIBRARY_PATH
export C_INCLUDE_PATH=$OLD_TOOLCHAIN_PATH/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=$OLD_TOOLCHAIN_PATH/include:$CPLUS_INCLUDE_PATH# 内核编译专用变量
export ARCH=i386
export CROSS_COMPILE=""
export KBUILD_CFLAGS="-m32 -march=i386 -mtune=i386"# 主机工具链(用于编译host程序)
export HOSTCC="$OLD_TOOLCHAIN_PATH/bin/gcc -m32"
export HOSTCXX="$OLD_TOOLCHAIN_PATH/bin/g++ -m32"
export HOSTLD="$OLD_TOOLCHAIN_PATH/bin/ld"
export HOSTCFLAGS="-m32 -static"
export HOSTLDFLAGS="-m32 -static"echo "Old toolchain (GCC 3.4.6) 32-bit environment activated!"
EOF# 使脚本可执行
chmod +x /opt/gcc-3.4.6/setenv.sh# 激活旧工具链环境
source /opt/gcc-3.4.6/setenv.sh
创建恢复脚本
bash
# 创建恢复脚本
cat > /opt/gcc-3.4.6/unsetenv.sh << 'EOF'
#!/bin/bash
# 从PATH中移除旧工具链
export PATH=$(echo $PATH | sed "s|/opt/gcc-3.4.6/bin:||")# 清除所有相关环境变量
unset OLD_TOOLCHAIN_PATH
unset CC
unset CXX
unset LD
unset AS
unset AR
unset NM
unset RANLIB
unset STRIP
unset LIBRARY_PATH
unset C_INCLUDE_PATH
unset CPLUS_INCLUDE_PATH
unset ARCH
unset CROSS_COMPILE
unset KBUILD_CFLAGS
unset HOSTCC
unset HOSTCXX
unset HOSTLD
unset HOSTCFLAGS
unset HOSTLDFLAGSecho "Old toolchain environment deactivated!"
EOFchmod +x /opt/gcc-3.4.6/unsetenv.sh
build
make ARCH=i386 -j2 \HOSTCC="/opt/gcc-3.4.6/bin/gcc -m32" \HOSTLD="/opt/gcc-3.4.6/bin/ld" \HOSTCFLAGS="-m32 -static" \HOSTLDFLAGS="-m32 -static" \CC="/opt/gcc-3.4.6/bin/gcc -m32" \LD="/opt/gcc-3.4.6/bin/ld" \CROSS_COMPILE="" \KBUILD_CFLAGS="-m32 -march=i386 -mtune=generic"

在这里插入图片描述

http://www.dtcms.com/a/615314.html

相关文章:

  • 怎么看别的网站是那个公司做的服装设计最好的出路
  • 免费网站站盐城建设厅网站设计备案
  • 卡尔曼学习笔记
  • seo导航站php网站费用
  • 建设网站收废品做网站找那些公司
  • 信阳企业网站建设公司网上做衣服的网站有哪些
  • 一个服务器可以做两个网站郎溪做网站
  • 前端微前端应用共享状态,Redux Toolkit
  • 算法分析与设计
  • 3.3.GPIO输入
  • 鸿运通网站建设怎么样宝塔系统怎么建设网站
  • 黑马Redis A基础01-命令String类型-JSON格式-Hash类型-List类型-Set类型-SortedSet类型-Redis的java客户端-jedis连接池-Spring集成Redis
  • 做司考题的网站网站完成上线时间
  • 深圳网站网络建设莆田自助建站软件
  • 河北企业建站提供小企业网站建设
  • python网站开发学习东莞网站建设网络公司排名
  • 网站建设访问对象宣传片拍摄哪个好
  • 河南网站推广怎么做软件开发工程师中级职称
  • 团购网站建设公司网站建设和托管
  • Gorm散知识点小结(二)--Where(“1 = 1”)
  • java并发编程系列——waitnotify的正确使用姿势
  • 【ros2】ROS2功能包(Package)完全指南
  • 南昌网站建设渠道seo优化方案案例
  • 温州建设局网站首页网络推广一个月工资多少
  • MYSQL聚合函数
  • 做搜狗手机网站优化网站开发专业的领军人物
  • python 做网站缺点外贸都有哪些平台
  • 服装定制网站的设计与实现俄罗斯搜索引擎yandex
  • 做网站的专业公司wordpress onetone
  • 用网上的文章做网站行吗微网站 合同