当前位置:网站首页>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 :

原网站

版权声明
本文为[anieoo]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/186/202207052308445352.html