Aix6.1下安装SWFTools

该文章参考http://tech.sxinfo.net/jctj/article.do?curMenu=14&childMenu=16&articleId=388,再结合我在实际上在Aix6.1上的安装经验来编写:

#########################相关文件的下载:

ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/

或者直接到我的网盘下载:

http://115.com/folder/f33df610af0#,如过期可以留言。


################################

安装bash

#rpm -qa | grep bash
#rpm -ivh  bash-3.2-1.aix5.2.ppc.rpm

安装 gcc
#rpm -qa|grep gcc
#rpm -ivh gcc-4.2.0-3.aix5.3.ppc.rpm
#rpm -i libgcc-4.6.0-1.aix5.3.ppc.rpm
#rpm -i libstdcplusplus-4.2.0-3.aix5.3.ppc.rpm
#rpm -i libstdcplusplus-devel-4.2.0-3.aix5.3.ppc.rpm
#rpm -i gcc-cplusplus-4.2.0-3.aix5.3.ppc.rpm

安装make
#rpm -i make-3.80-1.aix5.1.ppc.rpm

安装 swftools 需要的包

rpm -i libjpeg-6b-6.aix5.1.ppc.rpm
rpm -i libjpeg-devel-6b-6.aix5.1.ppc.rpm
rpm -i zlib-1.2.3-4.aix5.2.ppc.rpm
rpm -i zlib-devel-1.2.3-4.aix5.2.ppc.rpm
rpm -i freetype2-2.3.9-1.aix5.2.ppc.rpm
rpm -i freetype2-devel-2.3.9-1.aix5.2.ppc.rpm    //这个安装不成功!提示: pkg-config is needed by freetype2-devel-2.3.9.1
########################找到gz包安装: pkg-config-0.24.tar.gz报错:

见截图:



那么就找rpm安装包吧,幸好也找到了:pkg-config-0.19-6.aix5.2.ppc.rpm,安装,安装成功。
然后重新安装freetype2-devel-2.3.9-1.aix5.2.ppc.rpm ,安装成功。
###################

rpm -i libungif-4.1.2-1.aix5.1.ppc.rpm
rpm -i libungif-devel-4.1.2-1.aix5.1.ppc.rpm
rpm -i libungif-progs-4.1.2-1.aix5.1.ppc.rpm


3、  gmake 和gmake install  


  gunzip swftools-0.9.1.tar.gz

  tar xvf swftools-0.9.1.tar

  cd swftools-0.9.1

  ./configure  // 成功  

####我的configure:

  ./configure --prefix=/usr/local/swftools-0.9.1 --exec-prefix=/usr/local/swftools-0.9.1 --bindir=/usr/local/swftools-0.9.1/bin --sbindir=/usr/local/swftools-0.9.1/sbin --libexecdir=/usr/local/swftools-0.9.1/libexec libdir=/usr/local/swftools-0.9.1/lib
#######
 
 gmake   //注意 这里是gmake 不是make 需要安装 make-3.80-1.aix5.1.ppc.rpm

  错误1

gcc -c -DHAVE_CONFIG_H  -I/usr/local/include -I/usr/local/swftools-0.9.1/include -I/opt/freeware/include/freetype2 -I/opt/freeware/include -fPIC -Wimplicit -Wreturn-type -Wno-write-strings -Wformat -O -fomit-frame-pointer  as3/abc.c -o as3/abc.o
In file included from as3/abc.c:27:
as3/../q.h:58: error: conflicting types for 'map_t'
/usr/include/sys/localedef31.h:174: error: previous declaration of 'map_t' was here
gmake[1]: *** [as3/abc.o] Error 1
gmake[1]: Leaving directory `/setup/ffmpeg/swftools-0.9.1/lib'
gmake: *** [all] Error 2


 查看是lib/q.h 下的 map_t 类型与/usr/include/sys/localedef31.h 里的map_t类型定义冲突


解决办法:

  修改 q.h 和q.c 文件

  将 map_t 的类型 全部修改为 map_t_t 后边可下载修改后的swftools.0.9.1

错误2

  gcc -c -DHAVE_CONFIG_H  -I/usr/local/include -I/usr/local/swftools-0.9.1/include -I/opt/freeware/include/freetype2 -I/opt/freeware/include -fPIC -Wimplicit -Wreturn-type -Wno-write-strings -Wformat -O -fomit-frame-pointer  pdf2swf.c -o pdf2swf.o


g++ -DHAVE_CONFIG_H pdf2swf.o -o pdf2swf ../lib/libgfxswf.a ../lib/librfxswf.a ../lib/libgfxpdf.a ../lib/libgfx.a ../lib/libbase.a -L/usr/local/lib -L/usr/local/lib -L/usr/local/swftools-0.9.1/lib -lungif -ljpeg -lz -lm  -L/opt/freeware/lib -lfreetype -lz -lstdc++

ld: 0711-224 WARNING: Duplicate symbol: .__divdi3

ld: 0711-224 WARNING: Duplicate symbol: point_type

ld: 0711-224 WARNING: Duplicate symbol: .__moddi3

ld: 0711-224 WARNING: Duplicate symbol: .__udivdi3

ld: 0711-224 WARNING: Duplicate symbol: .__umoddi3

ld: 0711-224 WARNING: Duplicate symbol: .__udivmoddi4

ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.

ld: 0711-317 ERROR: Undefined symbol: .__STRING

collect2: ld returned 8 exit status

gmake[1]: *** [pdf2swf] Error 1

gmake[1]: Leaving directory `/setup/ffmpeg/swftools-0.9.1/src'

gmake: *** [all] Error 2

提示 Undefined symbol: .__STRING 查看问题是swftools-0.9.1/lib/gfxpoly/poly.h 文件问题

#define assert(x) ((x)?0:gfxpoly_fail(__STRING(x), __FILE__, __LINE__, __PRETTY_FUNCTION__))

修改为

#define assert(x)

即可

gfxpoly_fail 函数用来处理错误,不是必要的

错误3

  这时gmake 成功,gmake install 又发生错误 提示找不到./install.sh 文件

 swftools-0.9.1/install.sh 其实是存在的

  这时修改 swftools-0.9.1/Makefile.common 文件

  INSTALL= ./install-sh –c

  为

   INSTALL = 你的安装路径/swftools-0.9.1/install-sh –c
   ###我的: /home/bes/klcapp_test/SWFTools/swftools-0.9.1

 错误4

给install.sh 执行权限

chmod u+x install-sh

成功

gmake instll

 ###我的:usr/local除了root用户进不去,修改权限:
 修改local:chown -f bin:bin local
 修改swftools-0.9.1: chown -R bes:staff swftools-0.9.1
 
 测试:
 进入pdf2swf所在目录:
 ./pdf2swf /home/bes/klcapp_test/SWFTools/testdir/test.pdf -o /home/bes/klcapp_test/SWFTools/testdir/test.swf
 

到此安装swftools 在Aix 5.3 下成功


/usr/local/bin   下pdf2swf 转换成功

修改环境变量 export  PATH=$PATH: /usr/local/bin   如果需要请配置系统环境变量

你可能感兴趣的:(String,gcc,File,AIX,Path,Types)