[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Linphone-users] cross compiling "Read.arm"
From: |
god lu |
Subject: |
[Linphone-users] cross compiling "Read.arm" |
Date: |
Sun, 24 Jun 2007 19:46:04 +0800 |
Hi, all
I have cross-compiled linphone-1.2.0 following the article wrote by Raja Mallik Mon, 23 Jan 2006 12:09:24 -0800.
Below is the content:
Hi all,
Users who are interested in cross-compiling "linphone" to other
architecture(arm). This "Read.arm" should be usefull. I have taken
"Simon's" README.arm as reference to do changes.
You can use the steps in your host PC and send feedback.
Raja Mallik
LINPHONE ON ARM-LINUX (cross-compiling on host for target architecture)
This is based on reference of README.arm by "Simon" that you may find in
linphone-1.2.0 version. These modified steps helps you to cross compile on any
i386 hosr for arm target.
Pakages & Dependencies: (Download these from net)
1) linphone-1.2.0
2) libosip2-2.2.2
3) libogg-1.1.0
4) speex-1.1.11.1
5) oRTP ( this is always there in linphone packages)
Arm cross tools chain used:
arm-linux-gcc-3.4.1.tar.bz2
A) Build enviornment setup: ( assume you are on root)
#tar -xvjf arm-linux-gcc-3.4.1.tar.bz2
#export PATH=$PATH:/root/usr/local/arm/3.4.1/bin
#export LD=/root/usr/local/arm/3.4.1/bin/arm-linux-ld
#export LDFLAGS=-L/root/usr/local/arm/3.4.1/arm-linux/lib
#mkdir arm
#cd arm
untar all the packeges from 1 to 4 mentioned above
#cp linphone-1.2.0/ipkg/ipaq-config.site /root/.
#export CONFIG_SITE=~/ipaq-config.site
#mkdir /root/armbuild
#export ARM_INSTALL_TREE=/root/armbuild
B) Cross -compiling libosip2-2.2.2
#cd libosip2-2.2.2
#./configure --prefix=/root/armbuild -host=i686-pc-linux --target=arm-linux
--disable-static
#make
#make install
C) Cross -compiling libogg-1.1.0
#cd ../libogg-1.1.0
#./configure --prefix=/root/armbuild --host=i686-pc-linux --target=arm-linux
--disable-static --enable-fixed-point
#make
#make install
D) Cross -compiling speex-1.1.11.1
#cd ../speex-1.1.11.1
#./configure --prefix=/root/armbuild --host=i686-pc-linux --target=arm-linux
--disable-static --enable-fixed-point --enable-arm-asm
--with-ogg=/root/armbuild/usr --with-ogg-libraries=/roo/armbuild/usr/lib
--with-ogg-headers=/root/armbuild/usr/include/ogg
#make
#make install
E) Copy "libspeex.so.2.0.0" to your arm-tools.
#cp /root/armbuild/usr/lib/libspeex.so.2.0.0
/root/usr/local/arm/3.4.1/arm-linux/lib
#cd /root/usr/local/arm/3.4.1/arm-linux/lib
#ln -s libspeex.so.2.0.0 libspeex.so
#ln -s libspeex.so.2.0.0 libspeex.so.2
F) Cross compile linphone-1.2.0:
Before you do so, take the "oRTP" portion in linphone-1.2.0 folder, and do
the following:
#cd /root/arm/linphone-1.2.0
#cd oRTP
##./configure --prefix=/root/armbuild --host=i686-pc-linux
--target=arm-linux --disable-static --enable-fixed-point
#make
#make install
##cp /root/armbuild/usr/lib/libortp.so.2.0.0
/root/usr/local/arm/3.4.1/arm-linux/lib
#cd /root/usr/local/arm/3.4.1/arm-linux/lib
#ln -s libortp.so.2.0.0 libortp.so.2
#ln -s libortp.so.2.0.0 libortp.so
Now, you may try to compile the "linphone" without GUI support or with
console support.
#cd /root/arm/linphone-1.2.0
#./configure --prefix=/root/armbuild --host=i686-pc-linux --target=arm-linux
--disable-static --disable-glib --enable-gnome_ui=no --disable-manual
--enable-ipv6 --enable-alsa --with-osip=/root/armbuild/usr
--with-speex=/root/armbuild/usr
#make
#make install
Thats all. Check you build folder "/root/armbuild" and you may need to
strip symbols before putting on your embedded board.
Kindly send Feed back!
Raja Mallik
I have executed all the commands successfully , but after putting /root/armbuild directory in my arm board (s3c2440), changing directoy to /root/armbuild/bin, executing command of "./linphonec", I got the error message,
./linphonec: error while loading shared libraries: cannot open shared object file: cannot load shared object file: No such file or directory
It doesn't denote which library is loading when error occurs, and which library can't be open and which library can't be loaded , etc.
I am confused.
So I re-compiled the linphone-1.2.0 with the same configure parameters used in the article in green but the different compiler--gcc.Then I changed the directory to linphone-1.2.0/console/.libs/ and executed "ldd linphonec", bellow is message:
liblinphone.so.1 => /home/jimmy/linphone/lib/liblinphone.so.1 (0xf6fa2000)
libdl.so.2 => /lib/libdl.so.2 (0x00bc3000)
libc.so.6 => /lib/tls/libc.so.6 (0x00a75000)
libortp.so.2
=> /home/jimmy/linphone/lib/libortp.so.2 (0xf6f86000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x00d6f000)
libasound.so.2 => /lib/libasound.so.2 (0x0090c000)
libspeex.so.1 => /home/jimmy/linphone/lib/libspeex.so.1 (0xf6f72000)
libm.so.6 => /lib/tls/libm.so.6 (0x00b9e000)
libosip2.so.3 => /home/jimmy/linphone/lib/libosip2.so.3 (0xf6f5b000)
libosipparser2.so.3 => /home/jimmy/linphone/lib/libosipparser2.so.3 (0xf6f32000)
libnsl.so.1 => /lib/libnsl.so.1 (0x03a3e000)
librt.so.1 => /lib/tls/librt.so.1 (0x008da000)
/lib/ld-linux.so.2 (0x00a5c000)
Then I find there are two libs the arm board didn't have. They are libasound, and librt.
Does that mean I have to port the libasound and librt to my arm board?
Could anyone help me to solve this problem?
Thank you in advance.
Jimmy Lu
--
Today is most important.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Linphone-users] cross compiling "Read.arm",
god lu <=