注意:这里我们运行平台是QEMU-v7
- 首先建立~/optee作为后面编译OP-TEE的工程目录,进入该目录;配置dpkg支持i386的包,并安装依赖:
$ sudo dpkg --add-architecture i386 $ sudo apt-get update $ sudo apt-get install android-tools-adb android-tools-fastboot autoconf automake bc bison build-essential ccache codespell cscope curl device-tree-compiler expect flex ftp-upload gdisk iasl libattr1-dev libcap-dev libcap-ng-dev libfdt-dev libftdi-dev libglib2.0-dev libgmp-dev libhidapi-dev libmpc-dev libncurses5-dev libpixman-1-dev libssl-dev libtool make mtools netcat ninja-build python-crypto python3-crypto python-pyelftools python3-pycryptodome python3-pyelftools python3-serial rsync unzip uuid-dev xdg-utils xterm xz-utils zlib1g-dev
- 由于Ubuntu 20.04默认装的是python3,所以需要在/usr/bin中建立一个指向/usr/bin/python3的符号链接/usr/bin/python安装pycryptodome
$ python3 -m pip install --user pycryptodome
- 如果没有安装repo的话需要安装repo,网上相关的文章很多,不过如果有条件能出墙,建议直接下载程序,这样就不用编译安装了。执行下列命令开始编译OP-TEE
$ repo init -u https://github.com/OP-TEE/manifest.git -m default.xml $ sed -i "s/.git//g" .repo/manifest.xml $ repo sync -j4 $ cd build $ make -f toolchain.mk toolchains $ make run
这个过程可能比较漫长,特别是在下载qemu和toolchains的时候,即使有代理速度可能仍然比较慢。建议toolchains通过代理下载好以后放入toolchains目录。下面给出两个toolchians的地址,其实如果只是编译QEMU-v7,那么32位的gcc就够了
https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-2020.11/binrel/gcc-arm-10.2-2020.11-x86_64-arm-none-linux-gnueabihf
https://developer.arm.com/-/media/Files/downloads/gnu-a/10.2-2020.11/binrel/gcc-arm-10.2-2020.11-x86_64-aarch64-none-linux-gnu.tar.xz
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)