当前位置:网站首页>20. Migrate freetype font library
20. Migrate freetype font library
2022-07-05 23:34:00 【anieoo】
FreeType Support Gzip Compressed files , Will use zlib library . meanwhile FreeType Can be loaded PNG Color bit of format
Figure font , Need to rely on libpng library , So in transplantation Freetype Font library needs to be transplanted before zlib Kuhe libpng library .
One 、 transplant zlib library
Download the source code
Enter the official website of source code https://www.zlib.net/fossils/, Download the source code
Download the source code through the command tar -vxzf xxx unpack , Create a directory zlib As the installation directory of the source code , As shown in the figure below :
To configure zlib Source code , First execute the script environment-setup-cortexa7hf-neon-poky-linux-gnueabi File to initialize environment variables .
source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
The environment variables are configured as follows :
Specify installation path :./configure --prefix=/home/zyc/tools/zlib/
Use make Command compilation zlib Source code , Use after compilation make install Installation :
Porting source code to IMX6ULL Development board :
because scp The command will cause the symbolic link of the file to be unlinked , So compress the source code and then decompress it , As shown in the figure below :
Then copy the library file to the directory /usr/lib Next
Two 、 transplant libpng library
Download the source code
Go to the website to download https://github.com/glennrp/libpng/releases,:
decompression libpng Source code , And create a png Folder is used to install libpng library :
libpng Depend on zlib library , We've already zlib Library compilation succeeded , But we have to tell the compiler zlib Library installation directory , So that the compiler can find zlib Library files and header files , compile libpng No error will be reported when , Executing the following three commands will zlib Library installation directory include and lib Export path to environment variable :
export LDFLAGS="${LDFLAGS} -L/home/zyc/tools/zlib/lib"
export CFLAGS="${CFLAGS} -I/home/zyc/tools/zlib/include"
export CPPFLAGS="${CPPFLAGS} -I/home/zyc/tools/zlib/include"
Then execute the following command to configure the source code :
./configure --prefix=/home/zyc/tools/png --host=arm-poky-linux-gnueabi
Finally, compile make And installation make install:
Porting source code to IMX6ULL Development board :
As before, it will bin Copy the files in the directory to usr/bin/ Under the table of contents ,lib Copy the files in the directory to /usr/lib Under the table of contents :
3、 ... and 、 transplant Freetype Font library
Download the source code
Unzip the source code and create a folder freetype Used to save installation files :
The configuration file
open include/freetype/config/ftoption.h file , Open the following two macro definitions :
#define FT_CONFIG_OPTION_SYSTEM_ZLIB
#define FT_CONFIG_OPTION_USE_PNG
Configure the source code as follows :
./configure --prefix=/home/zyc/tools/freetype/ --host=arm-poky-linux-gnueabi --with-
zlib=yes --with-bzip2=no --with-png=yes --with-harfbuzz=no ZLIB_CFLAGS="-
I/home/zyc/tools/zlib/include -L/home/zyc/tools/zlib/lib" ZLIB_LIBS=-lz LIBPNG_CFLAGS="-
I/home/zyc/tools/png/include -L/home/zyc/tools/png/lib" LIBPNG_LIBS=-lpng
--prefix Option assignment FreeType Library installation directory ; --host Option is set to prefix the cross compiler name
--with-zlib=yes Said the use of zlib;
--with-bzip2=no No use bzip2 library ;
--with-png=yes Said the use of libpng library ;
--with-harfbuzz=no No use harfbuzz library .
ZLIB_CFLAGS Option is used to specify zlib Header file path and library file path , Fill in according to the actual installation path ;
ZLIB_LIBS Option specifies the linked zlib Name of Library ;
LIBPNG_CFLAGS Option is used to specify libpng Header file path and library file path , Fill in according to the actual installation path ;
LIBPNG_LIBS Option is used to specify the linked libpng Name of Library .
Compile after configuration make And installation make install, As shown in the figure below :
Porting source code to IMX6ULL Development board :
take lib Copy the files in the directory to the development board /usr/lib Under the table of contents :
边栏推荐
- Live tiktok shop 2022 latest gameplay card slot overseas live e-commerce new traffic
- 3: Chapter 1: understanding JVM specification 2: JVM specification, introduction;
- Basic knowledge of database (interview)
- LeetCode——Add Binary
- Pyqt control part (I)
- Go language introduction detailed tutorial (I): go language in the era
- 无刷驱动设计——浅谈MOS驱动电路
- yate.conf
- Neural structured learning - Part 2: training with natural graphs
- 424. 替换后的最长重复字符 ●●
猜你喜欢
3: Chapter 1: understanding JVM specification 2: JVM specification, introduction;
Rasa 3.x 学习系列-Rasa X 社区版(免费版) 更改
4点告诉你实时聊天与聊天机器人组合的优势
成为程序员的你,后悔了吗?
进击的技术er——自动化
Comparison of parameters between TVs tube and zener diode
From the perspective of quantitative genetics, why do you get the bride price when you get married
How to design API return code (error code)?
Brushless drive design -- on MOS drive circuit
基于脉冲神经网络的物体检测
随机推荐
动态规划 之 打家劫舍
Introduction to JVM
(4)UART應用設計及仿真驗證2 —— TX模塊設計(無狀態機)
Rasa 3.x 学习系列-Rasa X 社区版(免费版) 更改
Spécifications techniques et lignes directrices pour la sélection des tubes TVS et ESD - Recommandation de jialichuang
6-axis and 9-axis IMU attitude estimation
【原创】程序员团队管理的核心是什么?
进击的技术er——自动化
LeetCode——Add Binary
Difference between out of band and in band
2: Chapter 1: understanding JVM specification 1: introduction to JVM;
TVS管和ESD管的技术指标和选型指南-嘉立创推荐
(4)UART应用设计及仿真验证2 —— RX模块设计(无状态机)
What is the process of building a website
秒杀系统的设计与实现思路
UVA – 11637 Garbage Remembering Exam (组合+可能性)
The interface of grafana tool displays an error, incluxdb error
idea 连接mysql ,直接贴配置文件的url 比较方便
Do you regret becoming a programmer?
Comparison between webgl and webgpu [3] - vertex buffer