现在的位置: 首页 > 综合 > 正文

成功移植liferea for arm

2013年08月30日 ⁄ 综合 ⁄ 共 5657字 ⁄ 字号 评论关闭
The library dependencies for Liferea are:
gtk2, gconf2,
libxml2,libxslt, sqlite3, gtkhtml2
 
########## libgtkhtml-2.11.1 ##########
1.
在configure.in注释
gnome-vfs配置
#PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0 >= 1.9.8,
have_vfs=true,
#           AC_MSG_WARN([*** test apps will be built
without GNOME VFS support.])
#                 have_vfs=false)
#AM_CONDITIONAL(HAVE_GNOME_VFS, test x$have_vfs = xtrue)
2.
执行autoconf,重新生成configure文件
3.
编译
export PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
export
PKG_CONFIG_PATH=/zapp/zgtk/lib/pkgconfig
export
LD_LIBRARY_PATH=/zapp/zgtk/lib
./configure --prefix=/zapp/liferea
--host=arm-none-linux-gnueabi --enable-accessibility=no
make
make
install
 
 
########## libxslt-1.1.24 ##########
libgpg-error-1.7
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
./configure
--prefix=/zapp/liferea --host=arm-none-linux-gnueabi
libgcrypt-1.4.4
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
export
CFLAGS="-I/zapp/liferea/include"
export LIBS="-L/zapp/liferea/lib
-lgpg-error"
./configure --prefix=/zapp/liferea
--host=arm-none-linux-gnueabi
libxslt-1.1.24
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
export
THIRD_MOUDLES_PATH=/work/7/Branches/DPF/zsharemodules/none
export
CFLAGS="-I/zapp/liferea/include -I$THIRD_MOUDLES_PATH/include "
export
LIBS="-L/zapp/liferea/lib -L$THIRD_MOUDLES_PATH/lib -lgcrypt
-lgpg-error -liconv"
./configure --prefix=/zapp/liferea
--host=arm-none-linux-gnueabi
 
 
########## GConf-2.10.0 ##########
popt-1.7
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
./configure
--prefix=/zapp/liferea --host=arm-none-linux-gnueabi
libIDL-0.8.5
1.
问题:"cannot run test program while cross
compiling"
方法:
1.1 添加cache文件
echo
"libIDL_cv_long_long_format=ll" > arm_idl.cache
2. 编译
export PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
export
CFLAGS="-I/zapp/liferea/include -I/zapp/zgtk/include"
export
LIBS="-L/zapp/liferea/lib -L/zapp/zgtk/lib"
./configure
--prefix=/zapp/liferea --host=arm-none-linux-gnueabi
--cache-file=arm_idl.cache
ORBit2-2.12.2
1.
执行
make distclean
rm -rf
arm_orbit.cache
2.
问题:"cannot run test program while cross compiling"
方法:
2.1

释configure#23164: { (exit 1); exit 1; };
2.2
添加cache文件
echo
"ac_cv_alignof_CORBA_boolean=1
ac_cv_alignof_CORBA_char=1
ac_cv_alignof_CORBA_double=4
ac_cv_alignof_CORBA_float=4
ac_cv_alignof_CORBA_long=4
ac_cv_alignof_CORBA_long_double=4
ac_cv_alignof_CORBA_long_long=4
ac_cv_alignof_CORBA_octet=1
ac_cv_alignof_CORBA_pointer=4
ac_cv_alignof_CORBA_short=2
ac_cv_alignof_CORBA_struct=1
ac_cv_alignof_CORBA_wchar=2"
> arm_orbit.cache
3.
必须准备orbit-idl-2 x86版本用来交叉编译
cp -rf /usr/bin/orbit-idl-2
src/idl-compiler/orbit-idl-2
4.
编译
export PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
export
CFLAGS="-I/zapp/liferea/include -I/zapp/zgtk/include"
export
LIBS="-L/zapp/liferea/lib -L/zapp/zgtk/lib"
./configure
--prefix=/zapp/liferea --host=arm-none-linux-gnueabi
--cache-file=arm_orbit.cache
注释:如果编译不过,开个新窗口即可,可能前面变量影响
GConf-2.10.0:
export
PKG_CONFIG_PATH=/zapp/zgtk/lib/pkgconfig:/zapp/liferea/lib/pkgconfig
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
export
CFLAGS="-I/zapp/liferea/include -I/zapp/zgtk/include
-I/zapp/zgtk/include/glib-2.0 -I/zapp/zgtk/include/glib-2.0/glib"
export
LIBS="-L/zapp/liferea/lib -L/zapp/zgtk/lib -ldl -lgthread-2.0
-lgobject-2.0 -lgmodule-2.0 -lglib-2.0  -liconv -lgcrypt -lgpg-error
-lIDL-2 -lpopt -lORBit-2 -lxml2"
./configure --prefix=/zapp/liferea
--host=arm-none-linux-gnueabi --enable-gconf-source=/zapp/liferea
########## libglade-2.6.4 ##########
export
PKG_CONFIG_PATH=/zapp/zgtk/lib/pkgconfig:/zapp/liferea/lib/pkgconfig
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CC=arm-none-linux-gnueabi-gcc
export CXX=arm-none-linux-gnueabi-g++
./configure
--prefix=/zapp/liferea --host=arm-none-linux-gnueabi
########## liferea-1.4.28 ##########
1.
编译
export
GCONFTOOL=/usr/bin/gconftool-2
export
THIRD_MOUDLES_PATH=/work/7/Branches/DPF/zsharemodules/none
export
PKG_CONFIG_PATH=$THIRD_MOUDLES_PATH/lib/pkgconfig:/zapp/zgtk/lib/pkgconfig:/zapp/liferea/lib/pkgconfig
export
PATH=$PATH:/tools/arm-none-linux-gnueabi/bin
export
CROSS_COMPILER=arm-none-linux-gnueabi-
export
CFLAGS="-I/tools/arm-none-linux-gnueabi/arm-none-linux-gnueabi/sys-root/usr/include
-I$THIRD_MOUDLES_PATH/include -I/zapp/liferea/include
-I/zapp/zgtk/include -I/zapp/zgtk/include/glib-2.0
-I$THIRD_MOUDLES_PATH/include/libxml2"
export
LIBS="-L/tools/arm-none-linux-gnueabi/arm-none-linux-gnueabi/sys-root/usr/lib
-L$THIRD_MOUDLES_PATH/lib -L/zapp/liferea/lib -L/zapp/zgtk/lib -ldl
-lgthread-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -ldirect -ldirectfb
-lfusion -lz -liconv -lgtk-directfb-2.0 -lgdk-directfb-2.0 -latk-1.0
-lgdk_pixbuf-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lfreetype -lfontconfig
-lpango-1.0 -lcairo  -lpng12 -lpixman-1 -lgcrypt -lgpg-error -lIDL-2
-lpopt -lORBit-2 -lgconf-2 -lgtkhtml-2 -lxslt -lcrypto -lxml2 -lsqlite3
-lglade-2.0"
./configure --prefix=/zapp/liferea
--host=arm-none-linux-gnueabi --disable-webkit --disable-xulrunner
--disable-gecko --disable-sm --disable-dbus --with-x=no
--with-gconf-schema-file-dir=/zapp/liferea
2. 修改src/Makefile,把X11去掉
3. make && make install
运行
export
LD_LIBRARY_PATH=/zapp/zgtk/lib:/zapp/zbase/lib:/zapp/lib:/zapp/liferea/lib
export
TSLIB_TSDEVICE=/dev/input/event0
export
TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONSOLEDEVICE=/dev/tty
export
TSLIB_CONFFILE=/zapp/zgtk/etc/ts.conf
 

当然, 目前liferea运行得还不怎么好,需要改进编译过程和修改代码!

抱歉!评论已关闭.