Transmission 1.40 cross compile

Discussion of Transmission that doesn't fit in the other categories
Post Reply
jmike72
Posts: 6
Joined: Mon Dec 22, 2008 10:12 pm

Transmission 1.40 cross compile

Post by jmike72 »

Hi.

I'm trying to compile transmission for mips but I'm having a problem with openssl. I've compiled openssl with

Code: Select all

prefix=/var/harddisk/wl600g
and make install. After that when I try in transmission the

Code: Select all

./configure --host=mipsel-linux --target=mipsel-linux --prefix=/var/harddisk/wl600g OPENSSL_LIBS=/var/harddisk/wl600g/lib
it gives the following:

Code: Select all

checking for OPENSSL... no
checking for OpenSSL... configure: error: Cannot locate ssl
I've tryed several params like "libdir=/var/harddisk/wl600g" but the error is allways the same!

How can I solve this?

Thanks,
Mike
Waldorf
Posts: 1024
Joined: Wed Dec 27, 2006 10:46 am
Location: Belgium

Re: Transmission 1.40 cross compile

Post by Waldorf »

Check the configure log, it's more descriptive then the standard output.

Btw, don't you have ipkg, or similar package system?
jmike72
Posts: 6
Joined: Mon Dec 22, 2008 10:12 pm

Re: Transmission 1.40 cross compile

Post by jmike72 »

Hi.

I will check the configure log when I arrive home.

Regarding ipkg, I don't have it. I will try to find it's sources so that I can build it and install on the wl600g router.

Mike
jmike72
Posts: 6
Joined: Mon Dec 22, 2008 10:12 pm

Re: Transmission 1.40 cross compile

Post by jmike72 »

Hi.

Just checked the log and this is what I've found:

Code: Select all

configure:22512: $? = 0
configure:22543: result: none required
configure:22557: checking for mipsel-linux-pkg-config
configure:22590: result: no
configure:22600: checking for pkg-config
configure:22618: found /usr/bin/pkg-config
configure:22630: result: /usr/bin/pkg-config
configure:22655: checking pkg-config is at least version 0.9.0
configure:22658: result: yes
configure:22669: checking for OPENSSL
configure:22677: $PKG_CONFIG --exists --print-errors "openssl >= $OPENSSL_MINIMUM"
Package openssl was not found in the pkg-config search path.
Perhaps you should add the directory containing `openssl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'openssl' found
configure:22680: $? = 1
No package 'openssl' found
configure:22726: result: no
configure:22729: checking for OpenSSL
configure:22746: error: Cannot locate ssl
Mike
jmike72
Posts: 6
Joined: Mon Dec 22, 2008 10:12 pm

Re: Transmission 1.40 cross compile

Post by jmike72 »

Hi.

Things are becoming better, but still haven't managed to cross compile transmission. Lets resume all the steps here. To start, I have the config for toolchain as follows

Code: Select all

TOOLCHAINS_HOME=/opt/toolchains/uclibc-crosstools
export LIBS="-L${TOOLCHAINS_HOME}/lib/gcc/mips-linux/3.4.2"
export INCLUDES="-I${TOOLCHAINS_HOME}/include/c++/3.4.2 \
        -I${TOOLCHAINS_HOME}/mips-linux/sys-include \
        -I/opt/bcm963xx/kernel/linux/include"
export CFLAGS="${INCLUDES} ${LIBS} -static"
export LDFLAGS="-static"
export CC="${TOOLCHAINS_HOME}/bin/mipsel-uclibc-gcc"
export CXX="${TOOLCHAINS_HOME}/bin/mipsel-uclibc-g++"
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${TOOLCHAINS_HOME}/lib:/var/harddisk/wl600g/lib
export PATH="${PATH}:${TOOLCHAINS_HOME}/bin"
export OPENSSL_CFLAGS="-I/home/miguel/Projectos/wl600g/openssl-0.9.6m/include"
export LIBCURL_CFLAGS="-I/home/miguel/Projectos/wl600g/curl-7.19.2/include"
export LIBCURL_LIBS="-L/home/miguel/Projectos/wl600g/curl-7.19.2/lib"
# .libs -lcurl"
export OPENSSL_LIBS="-L/home/miguel/Projectos/wl600g/openssl-0.9.6m/lib"
Before I start, I issue a "source environment" and then I go to openssl and issue the following comands

Code: Select all

./Configure linux-mipsel & make
With curl I do the same, meaning

Code: Select all

./configure --host=mipsel-linux --target=mipsel-linux --prefix=/var/harddisk/wl600g & make
Until here, everything goes fine. I then move to transmission and issue a

Code: Select all

./configure --host=mipsel-linux --target=mipsel-linux --prefix=/var/harddisk/wl600g
and when I issue the make it gives the following output

Code: Select all

Making all in cli
make[1]: Entrando no diretório `/home/miguel/Projectos/wl600g/transmission-1.40/cli'
/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/bin/mipsel-uclibc-gcc -DPACKAGE_NAME=\"transmission\" -DPACKAGE_TARNAME=\"transmission\" -DPACKAGE_VERSION=\"1.40\" -DPACKAGE_STRING=\"transmission\ 1.40\" -DPACKAGE_BUGREPORT=\"http://trac.transmissionbt.com/newticket\" -DPACKAGE=\"transmission\" -DVERSION=\"1.40\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DSTDC_HEADERS=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_STRLCPY=1 -DHAVE_DAEMON=1 -DHAVE_DIRNAME=1 -DHAVE_BASENAME=1 -DHAVE_DAEMON=1 -DHAVE_STRCASECMP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_PTHREAD=1 -D_FILE_OFFSET_BITS=64 -DGETTEXT_PACKAGE=\"transmission\" -DHAVE_LOCALE_H=1 -DHAVE_LC_MESSAGES=1 -I. -I/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/include/c++/3.4.2         -I/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/mips-linux/sys-include         -I/opt/bcm963xx/kernel/linux/include -I.. -I../third-party/libevent  -I/home/miguel/Projectos/wl600g/openssl-0.9.6m/include -I/home/miguel/Projectos/wl600g/curl-7.19.2/include  -pthread -g -Wall -Wformat-security -W -Wmissing-prototypes -Wdeclaration-after-statement -O3 -funroll-loops -MT cli.o -MD -MP -MF .deps/cli.Tpo -c -o cli.o cli.c
mv -f .deps/cli.Tpo .deps/cli.Po
/bin/bash ../libtool --tag=CC   --mode=link /opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/bin/mipsel-uclibc-gcc -I/home/miguel/Projectos/wl600g/openssl-0.9.6m/include -I/home/miguel/Projectos/wl600g/curl-7.19.2/include  -pthread -g -Wall -Wformat-security -W -Wmissing-prototypes -Wdeclaration-after-statement -O3 -funroll-loops  -static -o transmissioncli cli.o ../libtransmission/libtransmission.a ../third-party/libevent/libevent.la ../third-party/libnatpmp/libnatpmp.a ../third-party/miniupnp/libminiupnp.a  -L/home/miguel/Projectos/wl600g/curl-7.19.2/lib -L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2 -L/home/miguel/Projectos/wl600g/openssl-0.9.6m/lib  -lm -L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2
../libtool: line 838: X--tag=CC: command not found
../libtool: line 871: libtool: ignoring unknown tag : command not found
../libtool: line 838: X--mode=link: command not found
../libtool: line 1005: *** Warning: inferring the mode of operation is deprecated.: command not found
../libtool: line 1006: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
../libtool: line 2250: X-I/home/miguel/Projectos/wl600g/openssl-0.9.6m/include: No such file or directory
../libtool: line 2250: X-I/home/miguel/Projectos/wl600g/curl-7.19.2/include: No such file or directory
../libtool: line 2250: X-g: command not found
../libtool: line 2250: X-Wall: command not found
../libtool: line 2250: X-Wformat-security: command not found
../libtool: line 2250: X-W: command not found
../libtool: line 2250: X-Wmissing-prototypes: command not found
../libtool: line 2250: X-Wdeclaration-after-statement: command not found
../libtool: line 2250: X-O3: command not found
../libtool: line 2250: X-funroll-loops: command not found
../libtool: line 1964: X-L/home/miguel/Projectos/wl600g/curl-7.19.2/lib: No such file or directory
../libtool: line 1964: X-L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2: No such file or directory
../libtool: line 1964: X-L/home/miguel/Projectos/wl600g/openssl-0.9.6m/lib: No such file or directory
../libtool: line 1964: X-L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2: No such file or directory
../libtool: line 2419: Xtransmissioncli: command not found
../libtool: line 2424: X:/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib:/var/harddisk/wl600g/lib:/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib:/var/harddisk/wl600g/lib:/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib:/var/harddisk/wl600g/lib:/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib:/var/harddisk/wl600g/lib:/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib:/var/harddisk/wl600g/lib: No such file or directory
../libtool: line 2431: Xtransmissioncli: command not found
../libtool: line 2757: X../third-party/libevent/libevent.la: No such file or directory
../libtool: line 2566: X-lm: command not found
../libtool: line 2757: X../third-party/libevent/libevent.la: No such file or directory
../libtool: line 2857: X../third-party/libevent/libevent.la: No such file or directory
X: user not authorized to run the X server, aborting.
../libtool: line 2931: X-L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2: No such file or directory
../libtool: line 2653: X-L/home/miguel/Projectos/wl600g/transmission-1.40/cli: No such file or directory
../libtool: line 2566: X-lm: command not found
../libtool: line 2757: X../third-party/libevent/libevent.la: No such file or directory
../libtool: line 2857: X../third-party/libevent/libevent.la: No such file or directory
X: user not authorized to run the X server, aborting.
../libtool: line 2653: X-L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2: No such file or directory
../libtool: line 2566: X-lnsl: command not found
../libtool: line 2566: X-lrt: command not found
../libtool: line 2566: X-lresolv: command not found
../libtool: line 2653: X-L/home/miguel/Projectos/wl600g/transmission-1.40/cli: No such file or directory
../libtool: line 2566: X-lm: command not found
../libtool: line 5196: X/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/bin/mipsel-uclibc-gcc "" "" -pthread "" "" "" "" "" "" "" "" -o @OUTPUT@ cli.o  ../libtransmission/libtransmission.a /.libs/libevent.a -L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2 -lnsl -lrt -lresolv ../third-party/libnatpmp/libnatpmp.a ../third-party/miniupnp/libminiupnp.a -L/home/miguel/Projectos/wl600g/transmission-1.40/cli -lm: No such file or directory
../libtool: line 5197: X/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/bin/mipsel-uclibc-gcc "" "" -pthread "" "" "" "" "" "" "" "" -o @OUTPUT@ cli.o  ../libtransmission/libtransmission.a /.libs/libevent.a -L/opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428/lib/gcc/mips-linux/3.4.2 -lnsl -lrt -lresolv ../third-party/libnatpmp/libnatpmp.a ../third-party/miniupnp/libminiupnp.a -L/home/miguel/Projectos/wl600g/transmission-1.40/cli -lm: No such file or directory
X: user not authorized to run the X server, aborting.
../libtool: line 5206: : command not found
make[1]: Saindo do diretório `/home/miguel/Projectos/wl600g/transmission-1.40/cli'
make[1]: Entrando no diretório `/home/miguel/Projectos/wl600g/transmission-1.40'
make[1]: Nada a ser feito para `all-am'.
make[1]: Saindo do diretório `/home/miguel/Projectos/wl600g/transmission-1.40'
What is wrong here?

Mike
jmike72
Posts: 6
Joined: Mon Dec 22, 2008 10:12 pm

Re: Transmission 1.40 cross compile

Post by jmike72 »

Hi again.

I've followed the informations from http://www.bengreen.eu/pmwiki/pmwiki.ph ... yBookWorld and managed to compile transmission. Now I must try it on my wl600g, but that will be only this evening when I arrive home.

Mike
jmike72
Posts: 6
Joined: Mon Dec 22, 2008 10:12 pm

Re: Transmission 1.40 cross compile

Post by jmike72 »

Just tested it on my router and it doesn't work!

transmissioncli and transmission-remote gives "can't resolve symbol 'clock_gettime'"

transmission-remote doesn't give any message but doesn't work. A "ps" doesn't show him running.

Any clues or help?

Thanks,
Mike
marcinmaster999
Posts: 1
Joined: Sat Apr 18, 2009 12:31 pm

Re: Transmission 1.40 cross compile

Post by marcinmaster999 »

Hi.SORRY for my bad English.I compile for my wl600g - transmission 1.32 and used 1.32,because fit for flash memory(2,1MB).Transmission is a fast client compare to ctorrent.The only problem is port forwarding :roll: NOT WORK!
This is firmware (language POLAND)

http://rapidshare.com/files/222816625/b ... _1135.html

MD5: BAD9BCD8BE9AE159121B9A6C21677A68
GOODLUCK!
zeryors
Posts: 3
Joined: Wed Dec 14, 2011 11:24 am

Re: Transmission 1.40 cross compile

Post by zeryors »

And how do you cross-compile !!!
i would like to compile tinyproxy or privoxy for WL600

thanks
cfpp2p
Posts: 290
Joined: Sat Aug 08, 2009 3:14 pm

Re: Transmission 1.40 cross compile

Post by cfpp2p »

maybe? this would help you a little...

http://www.nslu2-linux.org/wiki/HowTo/T ... mpileBuild
topman_61
Posts: 2
Joined: Thu Jan 26, 2012 5:33 am

Re: Transmission 1.40 cross compile

Post by topman_61 »

hi, I have cross-compiled the Transmission 2.42+(r13173) for sh4 arch. processor and have got binary files with huge size:
  • 7 839 988 transmission-create
    7 622 548 transmission-edit
    7 738 323 transmission-remote
    7 709 341 transmission-daemon
    7 640 321 transmission-show
    7 624 939 transmission-cli
For example, "transmission-daemon" from version 2.13 has size about 1 900 000 bytes.

Here is my "configure" command line:

Code: Select all

host # ./configure --host="sh4-linix" --without-gtk --enable-lightweight --prefix="/usr/local/sh4/transmission2.42"
Can anybody advise - what do I make wrong with configure script?
How to get binaries with more suitable size for my embedded system?
topman_61
Posts: 2
Joined: Thu Jan 26, 2012 5:33 am

Re: Transmission 1.40 cross compile

Post by topman_61 »

That's all. I've solved my "problem".
It was just the debug-information in the binaries.
After it was removed - the binaries sizes are 800-850 KB.
If you want to do the same use strip utility for your arch.:

Code: Select all

host # strip -d FILE
Post Reply