树莓派3 编译相关记录
2017-01-13 16:13
381 查看
以下是根据网上教程,动手实践记录。
编译环境:ubuntu 16.04_64bit
需要安装的库:
sudo apt install libncurses5-dev
sudo apt install lib32ncurses5 lib32z1
sudo apt install libssl-dev
以下列出了树莓派所有的开源软件:
firmware:树莓派的交叉编译好的二进制内核、模块、库、bootloader
linux:内核源码
tools:编译内核和其他源码所需的工具——交叉编译器等
我们一般只需要以上三个文件即可,下面的工程可以了解一下:
documentation:树莓派离线帮助文档,教你如何使用、部署树莓派(树莓派官方使用教程)
userland:arm端用户空间的一些应用库的源码——vc视频硬浮点、EGL、mmal、openVG等
hats:Hardware Attached on Top,树莓派 B+型板子的扩展板资料
maynard:一个gtk写成的桌面环境
scratch:一个简易、可视化编程环境
noobs:一个树莓派镜像管理工具,他可以让你在一个树莓派上部署多个镜像
weston:一个应用程序
target_fs:树莓派最小文件系统,使用busybox制作
quake3:雷神之锤3有线开发源码firmwareb
代码下载地址:
官方网址:https://github.com/raspberrypi
主要源码:
$ git clone git://github.com/raspberrypi/firmware.git
$ git clone git://github.com/raspberrypi/linux.git
$ git clone git://github.com/raspberrypi/tools.git
获取当前树莓派系统的配置文件:
在raspberrypi系统的3.x版本以前,树莓派系统默认存在/proc/config.gz文件,但是更新到4.x版本之后,/proc/config.gz文件默认不存在了,所以需要先获取到这个文件。执行以下命令可以获取到配置文件。
执行命令:sudo modprobe configs
执行以上命令之后,会在/proc/目录下生成config.gz文件。然后将此文件从树莓派系统内拷贝到我们的PC平台(有很多种方法,比如U盘,NFS系统文件共享,TCP,samba等等)。
然后在需要编译的内核的顶层目录下执行命令:
命令:zcat config.gz > .config
目的是生成.config配置文件
编译命令:
make ARCH=arm CROSS_COMPILE=../tools/arm-bcm2708/arm-rpi-4.9.3-linux-gnueabihf/bin/arm-linux-gnueabihf-
以下编译并没有编译出教程预期的文件,需要再验证。
编译所需的module,主要对应”/lib”目录下的内容。编译时,使用“INSTALL_MOD_PATH”参数指定目标路径。
$mkdir modules
$make ARCH=arm CROSS_COMPILE=../tools/arm-bcm2708/arm-rpi-4.9.3-linux-gnueabihf/bin/arm-linux-gnueabihf- INSTALL_MOD_PATH=../modules
编译环境:ubuntu 16.04_64bit
需要安装的库:
sudo apt install libncurses5-dev
sudo apt install lib32ncurses5 lib32z1
sudo apt install libssl-dev
以下列出了树莓派所有的开源软件:
firmware:树莓派的交叉编译好的二进制内核、模块、库、bootloader
linux:内核源码
tools:编译内核和其他源码所需的工具——交叉编译器等
我们一般只需要以上三个文件即可,下面的工程可以了解一下:
documentation:树莓派离线帮助文档,教你如何使用、部署树莓派(树莓派官方使用教程)
userland:arm端用户空间的一些应用库的源码——vc视频硬浮点、EGL、mmal、openVG等
hats:Hardware Attached on Top,树莓派 B+型板子的扩展板资料
maynard:一个gtk写成的桌面环境
scratch:一个简易、可视化编程环境
noobs:一个树莓派镜像管理工具,他可以让你在一个树莓派上部署多个镜像
weston:一个应用程序
target_fs:树莓派最小文件系统,使用busybox制作
quake3:雷神之锤3有线开发源码firmwareb
代码下载地址:
官方网址:https://github.com/raspberrypi
主要源码:
$ git clone git://github.com/raspberrypi/firmware.git
$ git clone git://github.com/raspberrypi/linux.git
$ git clone git://github.com/raspberrypi/tools.git
获取当前树莓派系统的配置文件:
在raspberrypi系统的3.x版本以前,树莓派系统默认存在/proc/config.gz文件,但是更新到4.x版本之后,/proc/config.gz文件默认不存在了,所以需要先获取到这个文件。执行以下命令可以获取到配置文件。
执行命令:sudo modprobe configs
执行以上命令之后,会在/proc/目录下生成config.gz文件。然后将此文件从树莓派系统内拷贝到我们的PC平台(有很多种方法,比如U盘,NFS系统文件共享,TCP,samba等等)。
然后在需要编译的内核的顶层目录下执行命令:
命令:zcat config.gz > .config
目的是生成.config配置文件
编译命令:
make ARCH=arm CROSS_COMPILE=../tools/arm-bcm2708/arm-rpi-4.9.3-linux-gnueabihf/bin/arm-linux-gnueabihf-
以下编译并没有编译出教程预期的文件,需要再验证。
编译所需的module,主要对应”/lib”目录下的内容。编译时,使用“INSTALL_MOD_PATH”参数指定目标路径。
$mkdir modules
$make ARCH=arm CROSS_COMPILE=../tools/arm-bcm2708/arm-rpi-4.9.3-linux-gnueabihf/bin/arm-linux-gnueabihf- INSTALL_MOD_PATH=../modules
相关文章推荐
- 在树莓派下安装mysql的相关查询记录
- Android源码编译相关问题记录
- cegui075相关编译东西,做下记录
- 自己常用Linux命令的记录--查看硬件相关信息,内核的编译,网络的配置
- android 源码编译及其运行模拟器相关问题记录
- caffe记录:编译python时,属性文件里面要添加python相关的lib以及路径
- <2012 10 28> 调C记录 <编译与链接相关>
- 反编译相关记录
- 少走弯路:学习编译原理的相关建议
- 关于业务人员和我搞事的相关记录
- 亲手编译uClinux的体验全记录
- 今天进行最后编译了,遇到了不少问题,现已解决,将问题和解决方法都记录下来;
- 少走弯路:学习编译原理的相关建议
- 少走弯路:学习编译原理的相关建议
- VC编译多个相关Project方法点滴
- DB2 相关知识记录
- sqlite-3.3.6编译安装与交叉编译全过程详细记录
- Red Hat 9 Linux下编译sqlite-3.3.8并在QT3.1下连接全过程详细记录
- java词法分析器,以及编译相关内容
- centos6.5 编译安装lamp以及相关错误的解决方法