1、将freetype的包解压后进入目录,发现configure文件,执行万能命令:
./configure --host=arm-linux-gnueabihf --prefix=$PWD/tmp
这步没啥问题
2、执行make命令后出现
它说libz.so的格式不能识别,目前找不到解决办法。。
已解决,上述问题的原因是我的系统库目录选错了。我执行
echo 'main(){}'| arm-linux-gnueabihf-gcc -E -v -
命令之后,库目录如下:
LIBRARY_PATH=/usr/lib/gcc-cross/arm-linux-gnueabihf/5/:/usr/lib/gcc-cross/arm-linux-gnueabihf/5/../../../../arm-linux-gnueabihf/lib/../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc-cross/arm-linux-gnueabihf/5/../../../../arm-linux-gnueabihf/lib/:/lib/:/usr/lib/
我一开始用的是/usr/lib/库目录,后来又换成/usr/lib/gcc-cross/arm-linux-gnueabihf/5/目录就好了。
另外,在安装过程中发现我pnglib12没安装(提示:can not find pnglib12),而韦老师给的包是16的版本,所以又从网上下载了12的版本安装。
#获取源码
git clone https://e.coding.net/codebug8/repo.git
mkdir -p 100ask_imx6ull-sdk && cd 100ask_imx6ull-sdk
../repo/repo init -u https://gitee.com/weidongshan/manifests.git -b linux-sdk -m imx6ull/100ask_imx6ull_linux4.9.88_release.xml --no-repo-verify
../repo/repo sync -j4
#设置工具链
export ARCH=arm
export CROSS_COMPILE=arm-buildroot-linux-gnueabihf-
export PATH=$PATH:/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin
#修改程序引用的头文件
#include <freetype2/ft2build.h>
编译时增加如下参数
-I/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2
示例
arm-buildroot-linux-gnueabihf-gcc -o show_line show_line.c -lfreetype -I/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2
arm-buildroot-linux-gnueabihf-gcc -o freetype_show_font freetype_show_font.c -I/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/arm-buildroot-linux-gnueabihf/sysroot/usr/include/freetype2 -lfreetype