一、背景
在ubuntu环境下,进行Zynq的boot文件编译
执行以下命令
make distclean
make zynq_zc706_defconfig
make
出现错误:make:arm-linux-gnueabihf-gcc:command not found
二、编译器安装问题
网上比较多的思路有2个:
一个是root权限问题,即使用root权限安装编译器,而在用户权限下运行。一个是路径问题,即系统PATH和用户PATH不一致,找不到。
后来执行arm-linux-gnueabihf-gcc -v,发现编译器没有安装。真是linux小白啊。
执行 sudo apt install gcc-arm-linux-gnueabihf,安装编译器。
完成后,输入
arm-linux-gnueabihf-gcc -v
可以看到版本信息
gcc version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1)
三、OpenSSL库文件安装
继续编译,提示错误:
fatal error: openssl/opensslv.h: No such file or directory
求助优快云结果是,尝试编译的程序使用OpenSSL,但是需要和OpenSSL链接的文件(库和头文件),而本地Linux平台上缺少。
执行命令 cat /etc/issue 查看ubuntu版本是 18.04
在ubuntu安装OpenSSL
sudo apt-get install libssl-dev
问题解决。顺利编译出uboot.elf文件。