导航:首页 > 源码编译 > 树莓派32位交叉编译

树莓派32位交叉编译

发布时间:2022-11-27 20:53:52

⑴ 树莓派linux内核编译选项如何开启TPM 2.0

本文更新于2018-08-11

首发于, 文章链接 http://www.jianshu.com/p/174844b99716
同步至GitHub: https://github.com/liuqun/linux/wiki

定制树莓派内核源码, 通过树莓派SPI接口加载并访问TPM2.0设备

所需硬件: X86主机一台, 树莓派3-B型号开发板一块, 大容量Micro-SD卡+USB读卡器一个, 英飞凌TPM2.0评估板一套

所需软件: 任意版本树莓派固件(推荐使用 最新版本 ), Ubuntu Linux 虚拟机, gcc-arm-linux-gnueabihf 交叉编译器, libncurses5(编译Linux内核配置菜单界面)

取出树莓派的SD卡, 通过读卡器插入 Ubuntu 主机或将读卡器 USB 设备接入 VMware 虚拟机。Ubuntu 默认自动将 U 盘挂载到 /media/$USER/boot 和 /media/$USER/【根文件系统分区】

(以下为覆盖式安装, 如果不放心请自行备份SD卡上的原有内核及模块文件)

选中 5. Interfacing Options --- P4 SPI(启用/禁用SPI串口)
重启树莓派,开机后检查/dev/tpm0设备文件是否已经加载就绪

⑵ 在Ubuntu下安装树莓派的交叉编译环境,有试过吗

开始做嵌入式开发的朋友都在前期配置交叉编译工具而烦恼,网上的交叉编译工具的教程很多,但是要么很繁琐要么就是资料不全。 那么怎么样快速而又简单地配置交叉编译工具呢,我们现在就用ubuntu里面的apt-get工具快速安装交叉编译工具。 1...

⑶ QT交叉编译环境

将安装全套的Qt开发环境,可以在PC端进行qt开发。

Ubuntu14.04的Qt版本为5.2.1,16.04的Qt版本为5.5.1,高版本Qt库可以向下兼容运行低版本工具链编译的程序,因此这里选用5.2.1版本作为编译工具链。

进入Qt工程目录中,目录下会有个<工程名>.pro文件,如果目录中存在<工程名>.pro.user文件,是之前qtcreator生成的配置文件,请先删除。然后运行:

即可完成编译,编译好的程序可以放到树莓派上直接运行。

另外,工程的配置可以通过修改 工程名.pro文件,例如添加链接库,只需要在文件中添加如下选项:

添加c99支持:QMAKE_CFLAGS += -std=c99

⑷ 树莓派 编译 platform选哪个

1、获取升级所需源码

1)下载地址:
官方网址:https://github.com/raspberrypi
上面列出了树莓派所有的开源软件:
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
2)下载方法:
a、网页直接下载:

点到所需要下载的工程,左上角选版本,右方有一个download ZIP按钮可直接下载(笔者下载完成后,在linux中解压提示出错,windows又非常慢切内核建议不要在windows环境解压,所以笔者不建议使用这种办法)

b、使用git下载
$ mkdir raspeberrypi_src
$ cd raspberrypi_src
$ git clone git://github.com/raspberrypi/firmware.git
$ git clone git://github.com/raspberrypi/linux.git
$ git clone git://github.com/raspberrypi/tools.git

会得到三个文件夹
firmware linux tools

2、编译、提取内核及其模块

1)获得内核配置文件
在运行的树莓派中运行:
$ls /proc/
可看到一个叫config.gz的文件,他是当前的树莓派配置选项记录文件,我们将他拷出,放入我们的内核源码目录树下

$cp /proc/config /home/pi
我们这里使用前面交过的samba拷出并拷入内核源码目录下,不熟悉的人可参考前面文章

在linux内核源码下执行:
$zcat config.gz > .config

2)配置、编译内核
a、修改内核源码makefile ARCH类型和编译器路径
$vi Makefile +195
找到以上类似代码,改为如图所示

b、查看、修改配置选项
$make menuconfig
可出现以下界面

如果不做修改,直接选中exit即可(注意使用键盘操作)

c、编译内核镜像
$make
在arch/arm/boot目录下可以看到一个叫zImage的文件,就是我们新的内核

但是树莓派需要另外一种格式的镜像,需要进行处理一下,执行以下命令
$cd tools/mkimage

$./imagetool-uncompressed.py ../../linux/arch/arm/boot/zImage
即可在当前文件夹下看到一个叫:kernel.img的文件,就是我们需要的新内核了

d、提取moles
上一步其实不但编译出来了内核的源码,一些模块文件也编译出来了,这里我们提取一下
$cd raspberrypi_src
$mkdir moles
$cd linux
$ make moles_install INSTALL_MOD_PATH=../moles

即可在moles得到我们需要的模块文件

2、升级RPi的kernel、Firmware、lib
将SD卡拔下插在电脑上(可使用读卡器)
1)升级内核
将新编好的内核拷入SD卡,改名为:kernel_new.img
打开boot目录下
找到config.txt文件,加入:kernel=kernel_new.img这一行

2)升级boot
将firmware/boot/目录下 以下文件拷入SD卡boot目录:fbootcode.bin fixup.dat fixup_cd.dat start.elf

3)更新vc库及内核moles
将第3步d步中编译出来的moles/lib/moles拷入树莓派文件系统/lib下

⑸ Step by Step带你玩转DuerOS - Python DuerOS SDK[树莓派平台] (3)

在前一个帖子中,给大家带来了Python版本的DuerOS SDK。但DuerOS的测试环境却声明为Ubuntu,相信很多同学会疑惑:Python不是跨平台的吗?为什么要限制测试平台呢?真实的情况呢是这样的:
首先,Python跨平台这个没毛病。但问题在于DuerOS运行所需要的依赖环境确实跟平台相关的。比如DuerOS是基于Http2 ALPN的,但树莓派官方镜像的OpenSSL并不支持,而对应的Python库依赖于OpenSSL。为了在树莓派平台上支持Python的DuerOS SDK,专门交叉编译了OpenSSL和Python。
所以,这里限制了平台主要是方便同学能将DuerOS快速的Run起来。当然,如果想在MacOS、Windows平台运行DuerOS Python SDK也是没问题的,只是在依赖配置方面可能要多花些时间。
好了,废话不多说,直接上干货:

按照个人版使用说明完成如下3步( http://open.er..com/doc/device-devkit/intro_markdown )

hyper库用来支持http2.0 client, pyaudio用来支持录音,tornado用来完成oauth认证。

直接运行使用默认的client_id和client_secret,开发者可以替换成自己在DuerOS开放平台申请的client_id和client_secret,进而实现在控制台自定义的配置属性。

其中,
需要在开放平台中“安全设置”的“授权回调页",设置成

⑹ 树莓派上使用rust:交叉编译

树莓派Zero 用的 BCM2835 是 armv6 架构的。 arm-linux-gnueabihf-gcc

需要给 cargo 的配置文件里面指定 arm-unknown-linux-gnueabihf 的 linker.
默认配置一般在 ~/.cargo/config 这里, 没有就创一个.

来告诉 cargo 在编译到 arm-unknown-linux-gnueabihf target 的时候用之前安装的 gcc 做 linker, 不然会默认用 cc 做 linker, 那这当然是不行的.

用scp传到树莓派上就可以了

用 cross ,非常方便,强烈推荐!!!

⑺ 如何安装树莓派虚拟机

你的电脑是和树莓派相同的
ARM
架构
你使用更慢的
qemu
模拟器来安装
建议(任选一):
嫌安装慢,我猜你是在编译安装:
找预编译包。不知道你的树莓派装的什么系统,以及你要装什么软件。常见软件+操作系统组合都可以从软件源里直接安装的
找个适合树莓派的交叉编译工具链在电脑上编译了给树莓派用。推荐使用类
UNIX
系统,不推荐使用虚拟机因为它会慢一些

⑻ 一 . 树莓派A20 基本环境搭建 1

我的实验环境:

1.交叉编译工具链:gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux(4.8.2).tar.xz
2.SDK文件:MarsBoard-A20-Linux-SDK-V1.1.tar.bz2

在安装gcc-arm-linux-gnueabi的时候,会自动安装上gcc-4.6-arm-linux-gnueabi,如下图所示:

第二个文件的安装很重要,尽管后面提示的编译错误,缺少的是arm-linux-...,但是安装这个文件还是挺好用的。

根据前面安装的一些安装包,其实本节的交叉编译工具链可以不用操作。因为已经包含了本节所做的了。

我得先将vim改一下,否则按住上下左右,会出现A,B,C,D。

再/etc/profile最后一行添加内容:

然后:

这里做一些简要的说明,在网址: 链接 上有一些说明,从说明中,我们可以看到我们用的sdk的架构。

pack文件夹

选择2,server版本。

之后:

能找到的livesuit_marsboard_a20_debian.img就是生成的镜像文件。如果要修改名字,可以:

这里面就包含了image.cfg,找到里面的一项:

修改为其他的名字即可。

选择2,server版本。

1.若出现如下报错:

可以:

如果出现:

但是其实这些文件都是有的,可以不妨:

再次编译,则问题如下:

仔细找编译的shell输出文件,发现是rootfs/下的gz文件找不到,这是因为我做前面的操作的时候,希望生成自己的rootfs_my.tar.gz文件。现在我重新将该文件放到rootfs/下,再次编译,我将最后的结果放在下面:

这样表示成功了。

下面列入生成的镜像:

livesuit_superpi3.img即是。

1.我在做上面的操作的时候,夹杂的使用了两个开发板,一个是marsboard出品的a20开发板,另外一个是风火轮出品的a20树莓派3卡片电脑,说实在的,看起来风火轮附带板子资料挺多,但是其真正写的资料可没用心做,实在不是一个榜样,在该开发板上做非核心开发,是可以的,但是做研发,还是需要做考量。

烧写成功后,打印的内容如下,作为日志信息,留作以后分析:

⑼ 树莓派中怎么编译golang,求大神支招

从源代码编译golang(sd) 还是编译go程序?

如果是编译go程序的话直接用go交叉编译一个linux/arm版本的可执行文件就行,可以装个gox, 能同时编译多个版本

阅读全文

与树莓派32位交叉编译相关的资料

热点内容
可以看岛国电影的网站 浏览:640
当程序员需要什么特质 浏览:119
韩国补习老师去学生家里电影 浏览:311
c语言命令行程序怎么编译 浏览:60
程序员王者昵称 浏览:232
编译过程中源码被扫描几次 浏览:881
刚刚上映什么网址可以看 浏览:183
外国爱情激情片 浏览:255
app怎么引用网站 浏览:111
单片机的按键焊接步骤 浏览:851
mqforlinux下载 浏览:89
安卓10推特怎么下载 浏览:655
现在有什么网址可以看片 浏览:945
武林盟主私密记事txt下载 浏览:397
功夫在哪拍的 浏览:321
可以在线观看的网址有哪些 浏览:954
索亚之书pdf 浏览:146
cc聊天加密软件 浏览:100
票据识别垂向算法 浏览:919
linuxshell拷贝 浏览:275