freetype环境安装记录

article/2025/8/30 9:33:45

(一)摘要

最近在学习韦东山老师的驱动入门课程,在freetype环境安装时碰到到了一下这个报错,于是想记录下自己的安装过程方便其他碰到问题的同学解决!

(二)碰到的报错

我是用的是IMX6ULL PRO开发板在开始跟着文档上做的步骤感觉没有问题,但是在进行freetype-2.10.2文件下的make命令时出现了以下报错

/home/book/nfs_rootfs/10_freetype/libpng-1.6.37/tmp/lib/libpng16.so:
file not recognized: file format not recognized collect2: error: ld
returned 1 exit status config.mk:55: recipe for target
‘/home/book/nfs_rootfs/10_freetype/freetype-2.10.2/objs/libfreetype.la’
failed make: ***
[/home/book/nfs_rootfs/10_freetype/freetype-2.10.2/objs/libfreetype.la]
Error 1

(三)原因分析

在查便文档和群友的帮助下,找到了原因原来是zlib依赖没有安装,因为在视频中说arm-buildroot-linux-gnueabihf-gcc是自带zilib的,于是我也就 没去安装它而是直接去安装了libpng-1.6.37和freetype-2.10.2,看来还是要安装的。

(四)如何安装zilb

1.设置交叉编译工具链

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

2. 解压zlib-1.2.11.tar.gz

tar -xzf zlib-1.2.11.tar.gz

3.进入zlib-1.2.11文件夹

cd zlib-1.2.11

4.配置编译参数生成Makefile

./configure --prefix==$PWD/tmp --shared --static

–prefix:指定安装目录
–shared:编译生成.so动态库
–static:编译生成.a静态库

5.修改Makefile

zlib的configure不支持设置–host项,因此需要手动更改Makefile,vim命令打开Makefile文件,将其中的CC、AR、RANLIB等都修改为arm-linux交叉编译器的相关参数

在这里插入图片描述

/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/arm-buildroot-linux-gnueabihf-gcc
/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/arm-buildroot-linux-gnueabihf-ar
/home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/arm-buildroot-linux-gnueabihf-ranlib

上面列出的是我Ubuntu的路径,大家如果都是按韦老师的课程的话应该都一样

6.编译

make

7.安装

make install

8.复制头文件和库文件到系统(工具链)默认文件夹

cp include/* -rf /home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/7.5.0/include
cp lib/* -rfd /home/book/100ask_imx6ull-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin/../lib/gcc/arm-buildroot-linux-gnueabihf/7.5.0/../../../../arm-buildroot-linux-gnueabihf/lib

本文参考自

  • https://www.cnblogs.com/from-zero/p/12582033.html
  • https://blog.csdn.net/wuu19/article/details/100075556

http://chatgpt.dhexx.cn/article/gA3w4X4U.shtml

相关文章

freetype的简单使用

安装完毕以后我们先做个简单的实例程序看看效果 1.首先先下载字体 链接:https://pan.baidu.com/s/1FCOh9SYcVkYCkaT6wtXWtA 提取码:rohm 2.编写程序 编译测试文件example.c /*编译命令*/ -I指定库文件所在位置-L指定动态库位置gcc example.c…

(转)FreeType字体位图属性

原文链接:https://blog.csdn.net/wlk1229/article/details/92424456 从原文中摘取一部分记录如下: FreeType获取的位图是一张刚好包含文字的位图,不包含左右上下的空白信息。如果绘制文字时直接把每一张位图连接在一起,文字则会一…

freetype编译

freetype简介 FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。支持单色位图、反走样位图的渲染。FreeType库是高度模块…

windows下编译OpenCV带opencv_contrib和freetype

目录 1. 下载安装cmake、opencv2. 编译freetype和harfbuzz2.1 pkg-config2.2 freetype2.3 harfbuzz2.4 修改opencv_contrib下的modules/freetype/CMakeLists.txt 3. 编译OpenCV5. 示例6. 编译好的OpenCV下载地址7. 参考文章 1. 下载安装cmake、opencv cmake下载地址&#xff1…

嵌入式应用-详解移植并使用freetype显示文字

目录 前言 1. freetype和相关概念简介 2.freetype显示文字流程和主要函数 2.1 包含头文件及API头文件:ft2build.h 2.2 初始化: FT_InitFreetype 2.3 加载(打开)字体Face: FT_New_Face 2.4 设置字体大小&#x…

freetype用法

freetype用法 文章目录 freetype用法0.实现1.变量定义2.lcd操作获取屏幕信息3.freetype初始化4.绘画 1.字形度量2.类1.FT 中的面向对象2.FT_Library 类3.FT_Face 类4 FT_Size 类5 FT_GlyphSlot 类 3.函数1.把一个字符码转换为一个字形索引FT_Get_Char_Index函数2.从 face 中装…

FreeType使用

前言 在openGL绘制字体,我们一般都使用freeType字体库,如下图所示 下载 freeType官网 编译源码 使用CMake编译源码 如果嫌麻烦,我这里有编译好的库,包括头文件、lib静态库、dll动态库 编译好的lib和dll库下载地址 例子 …

【C++】字体文件解析(FreeType)

目录 字体文件解析 一、前言 二、基本排版概念 1.字体文件 2.字符图像和字符表 3.字符和字体指标 三、字形轮廓 四、字形指标 1.基线、笔和布局 2.排版指标和边界框 3.方位与步进 4.网格拟合的效果 5.文本宽度与边界框 五、代码实现 六、使用实例 七、合并缓存优…

FreeType 用法

Freetype是一个跨平台、开源的字体渲染器,网上很多文章介绍,本人就不啰嗦了。本文重点在于实现文章标题所属的各种效果,不是Freetype的基本使用方法介绍文档,所以对于Freetype不熟悉的同学们请先学习下Freetype的基本用法&#xf…

freetype 使用解析---矢量字体

屏幕显示字体(字体点阵): 在内核中有对应的文件fontdata_8x16.c,将字体通过数组8*16来描述,0表示为空,1表示描点,通过通过各个点形成一个字体点阵显示在屏幕上,而在我们所有终端中显示的字体也可以是通过点…

freetype简介与测试

目录 一、简要 二、文字显示过程 三、freetype中的step1 四、在PC上测试freetype 4.1 分析main函数 4.2 修改main函数 4.3 在PC上测试 4.4 得到CBox 一、简要 从点阵文件中把字母或者汉字的字模取出来在LCD上显示这个方式有个缺点,这个文字的大小就固定了不…

Freetype 的安装与使用

4 交叉编译程序 4.1 程序运行的一些基础知识 编译程序时去哪找头文件? 系统目录:就是交叉编译工具链里的某个 include 目录; 也可以自己指定:编译时用 “ -I dir ” 选项指定。 链接时去哪找库文件? 系统目录&#x…

java和web哪个难_web前端和java哪个难学?哪个简单?

说到java很多都人都熟知,但是说到web前端可能是很多人并不知道,随着最近几年的发展,web前端开发人越来越吃香,无论是薪资待遇还是岗位的招聘数量比java差不了多少,最近有同学在咨询web前端和java哪个难学这个问题&…

js和java那个难_javascript与java哪个难?

javascript与java哪个难?答案是:JavaScript比Java更难。那么这是为什么?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。 原因: JavaScript有太多东西需要你自己去理解,这些东西里有很多要么Java已经…

没学历学java很难找工作吗

说实话不是学Java很难找工作,是以后找工作基本都会看学历,学历这个东西说重要也重要,因为它决定了你的简历能不能呈现到面试官面前,如果你的学历不够的话很有可能在第一轮简历就被刷下去了,它根本就不会呈现在面试官面…

java最难的部分_java最难学的是那一块?

原标题:java最难学的是那一块? 对于那些打算通过学习java来找到一份工作的同学来说,可以分为三个学习阶段,初级,中级,高级。不同的学习阶段有不同的难点,下来我就简单的和大家仔细的聊聊&#x…

学习Java开发难不难?好学吗?

学习Java难不难?这是很多希望学习Java的人比较纠结的问题。实际上,Java语言是非常易学的,Java语言机遇C语言,却又高于C语言。Java语言简单易学的特性使得大多数程序员很容易学习和使用Java。 Java是个简单…

零基础Java难学吗?自学怎么样?

在零基础上学习Java难吗?自学呢?要回答这个问题,我们应该从多方面来回答。首先,谁更适合学习Java?   如果仅仅从兴趣上说那么人人都可以胜任,那就像姜子牙70多年的探险生涯。47岁的刘邦在沛县召集民众响应陈胜武广起义。古代的年龄相当于我们现在的六十岁。齐白石,一位…

java学习路线,一个初中生学java要多久,java难学吗

一门永不过时的编程语言——Java 软件开发 java难学吗 java不难,你可以做如下学习 一、到相应的培训机构付费学习 别在这说培训机构没用什么的,不过一定要找正规的培训机构,不然容易被坑。培训机构里面的课程都是现在工作中需要用到的&am…

学Java难吗

Java这门语言你要是单独拎出来,那还是挺复杂的,但你要是把它放到编程里面,那算不上难,因为编程这门行业本来就难,而且,现在大学计算机专业的学生,大学期间,会设置Java这门课程&#…