Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1645047
  • 博文数量: 245
  • 博客积分: 10378
  • 博客等级: 上将
  • 技术积分: 2571
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-27 08:19
文章分类

全部博文(245)

文章存档

2013年(4)

2012年(8)

2011年(13)

2010年(68)

2009年(152)

分类: LINUX

2009-08-14 17:18:12

 今天在成功交叉编译cairo,
使用的交叉编译起是mips-gcc 
在编译的整个过程还是很多的常识性错误的。
首先看配置:

./configure   --prefix=/mnt/mips-cairo   --host=mips  --enable-directfb  --disable-win32   --disable-pdf   --disable-ps  --enable-xlib=no   --enable-xlib-xrender=no   --enable-win32-font=no  --enable-freetype CC=mips-gcc  CXX=mips-g++  LDFLAGS=-L/usr/local/mips-crosstools/mipsel-linux/lib   CPP21FLAGS=-I/usr/local/mips-crosstools/mipsel-linux/include   directfb_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/nexus/lib/directfb/src/DirectFB-1.0.0/build.97405B0/usr/lib  directfb_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/nexus/lib/directfb/src/DirectFB-1.0.0/build.97405B0/usr/include/directfb   png_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/libpng  png_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/libpng  FREETYPE_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/lib   FREETYPE_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/include 

设置安装目录: --prefix=/mnt/mips-cairo
平台:  --host=mips
一些配置项: 
--enable-directfb  --disable-win32   --disable-pdf   --disable-ps  --enable-xlib=no   --enable-xlib-xrender=no   --enable-win32-font=no  --enable-freetype
设置交叉编译环境相关内容:
CC=mips-gcc  CXX=mips-g++  LDFLAGS=-L/usr/local/mips-crosstools/mipsel-linux/lib   CPP21FLAGS=-I/usr/local/mips-crosstools/mipsel-linux/include
需要依赖的其他库:
 directfb_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/nexus/lib/directfb/src/DirectFB-1.0.0/build.97405B0/usr/lib  directfb_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/nexus/lib/directfb/src/DirectFB-1.0.0/build.97405B0/usr/include/directfb   png_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/libpng  png_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/libpng  FREETYPE_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/lib   FREETYPE_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/include

make
make install  搞定

以上的东西都是正确。 
这里需要记录下自己犯的低级性错误:
在查看./configure --help 后发现需要指定一些额外的库,比如:             C compiler flags for POPPLER, overriding pkg-config
  POPPLER_LIBS
              linker flags for POPPLER, overriding pkg-config
  LIBRSVG_CFLAGS
              C compiler flags for LIBRSVG, overriding pkg-config
  LIBRSVG_LIBS
              linker flags for LIBRSVG, overriding pkg-config
等,
我是这么指定的:
FREETYPE_LIBS=/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/lib   FREETYPE_CFLAGS=/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/include 
如果采用上述的指定方式的话,在编译的时候是无法找到相应的头文件的,正确的书写方式是:
FREETYPE_LIBS=-L/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/lib   FREETYPE_CFLAGS=-I/opt/bcmplatform/refsw-20090209.97405/BSEAV/lib/freetype-2.1.5/include 
我自己认为这是自己经验缺乏,也同时反应了autognu的一个缺陷。 在帮助文件中,并没有说明指定的方式。

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