Chinaunix首页 | 论坛 | 博客
  • 博客访问: 194670
  • 博文数量: 24
  • 博客积分: 261
  • 博客等级: 二等列兵
  • 技术积分: 306
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-29 08:25
文章存档

2015年(1)

2014年(1)

2013年(15)

2012年(7)

分类: 嵌入式

2013-01-16 14:15:37

1. 制作交叉编译工具
tar xjf freetype-2.4.10.tar.bz2

./configure --host=arm-linux
make
make DESTDIR=$PWD/tmp install  // ($PWD 代表当前目录) cd /tmp  会生成 usr 目录

/*一般查找安装到那个库的方法*/
(1)echo $PATH
(2)find -name include  (查头文件)
   find -name stdio.h
(3)find -name lib      (查库文件)

编译出来的头文件应该放入:
/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include

编译出来的库文件应该放入:
/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib


1.1 拷贝库到ARM的根文件系统
把tmp/usr/local/lib/*  复制到 /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib
sudo cp * /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/lib -d -rf
cp *so* /work/nfs_root/fs_mini_mdev_new/lib -d

把tmp/usr/local/include/*  复制到 /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include
sudo cp * /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include -rf


至此如果编译应用程序,将会出现错误,需执行下面1.2
1.2
cd /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include
sudo mv freetype2/freetype . (因为没有freetype2.h 所以给他移动到当前库位置)


2. 编译应用程序
2.1 编译example1.c
arm-linux-gcc -finput-charset=GBK -o example1 example1.c  -lfreetype -lm
./example1 ./simsun.ttc
 
出现错误:因为没有把字体文件拷贝过去
Uniocde:
0x97e6 0x67 0x69 0x66
Segmentation fault


3.1 编译dot_font.c
arm-linux-gcc -finput-charset=GBK -o dot_font dot_font.c  -lfreetype -lm

./dot_font ./simsun.ttc


就这样编译时将会出现如下错误信息:
cc1: error: failure to convert GBK to UTF-8

分析步骤:
1. man gcc 

2.搜索 /charset  的应用方法,知道charset可支持任何能被iconv 转换的编码

3.所以搜索 iconv --help  看iconv 的用法

4.可以知道 iconv的 -f 从那种码  -t  输出那种码

5.iconv用法的格式:iconv -f GBK -t UTF-8  xxx(要转换的文件)

6.进制转换,看哪里转换不过去。

iconv -f GBK -t UTF-8 dot_font.c


arm-linux-gcc -finput-charset=GBK -fexec-charset=GBK -o dot_font dot_font.c -lfreetype -lm


# ./dot_font ./simsun.ttc
chinese code: d6 d0
here1
here2
Segmentation fault

运行到此出现上面的段错误:  slot = face->glyph;

重新下载内核和刷新simsun.ttc 后,运作上面的就可以运行了。

阅读(5852) | 评论(2) | 转发(1) |
给主人留下些什么吧!~~

duhao3582313842015-04-27 15:59:22

楼主你好,能加你qq号请教一下你几个细节么?感谢!