OpenWrt Forum Archive

Topic: amule @ kamikaze

The content of this topic has been archived between 30 Mar 2018 and 4 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Oconnor, if you get segmentation fault errors I suppose you compiled amule for X86 platform.
For the moment, at least for what I know, there is not a solution for this problem.
Me and Ramponis are trying to solve this.

I successfully patched and compiled amule for the brcm47xx-2.6/ WGT634U (MIPS) platform.
If you have such or similar platform, the steps are:

1)
From the tarball
http://eko.one.pl/openwrt/amule_src.tgz
extract the patches

configure1.patch
math.patch

2) From the tarball at
http://wl500g.info/attachment.php?attac … 1176055300
extract the patch:

amule-1gb-uclibc-mipsel.patch

3) Copy those three patches in this directory:

~/trunk/feeds/https_svn.openwrt.org_openwrt_packages_/net/amule/patches

and rename them:

002-configure1.patch
003-math.patch
004-amule-1gb-uclibc-mipsel.patch

4) Select amule in menuconfig, save and compile everything with:

make V=99

That's all.

(Last edited by marven on 31 Oct 2007, 19:36)

I compile it for brcm47xx-2.6 too, but install it on a asus wl-500gP.
I copied the 3 files 002-configure1.patch, 003-math.patch, 004-amule-1gb-uclibc-mipsel.patch to .../amule/patch , but I'm still getting "segmentation faults". But if I install your packages, everything works well. Maybe it has something to do that I'm not using the trunk compiler environment. I'm using the kamikaze7.09 compiler environment? But than, why can I use your packages at my kamikaze7.09?

edit:
If I start aMule the first time, it generates all files to "/tmp/.aMule" if I restart my router everything is lost and I have to fix "/tmp/.aMule/amule.conf" can I start amule somehow with another "Homedirectory" as /tmp/.aMule? That I'm not loosing everything?

(Last edited by Oconnor on 1 Nov 2007, 15:01)

Oconnor, news? Have you success?

Oconnor wrote:

Maybe it has something to do that I'm not using the trunk compiler environment. I'm using the kamikaze7.09 compiler environment.

Yes I had success. I compiled amule with the trunk environment that worked. I could install amule at trunk and at kamikaze 7.09 at my Asus wl-500gP. Download speed was at about 250 kB/s that was the limit of the cpu.

Hi there is a new Version from amule 2.2.2rc2. I'm trying to compile amule but just changing the md5sum and the download path doesn't work
amule.patch

--- Makefile    2008-08-07 14:33:57.000000000 +0200
+++ Makefile~    2008-08-06 16:05:39.000000000 +0200
@@ -9,12 +9,12 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=aMule
-PKG_VERSION:=2.2.2
-PKG_RELEASE:=rc2
+PKG_VERSION:=2.1.3
+PKG_RELEASE:=2

-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)$(PKG_RELEASE).tar.bz2
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/amule
-PKG_MD5SUM:=cda9fec601e461a4181c0ea301ebea52
+PKG_MD5SUM:=0aafdd159edb8ad5f0064da87998b47d

PKG_BUILD_DEPENDS:=libgd

I'm getting following error:

make[3]: Entering directory `/home/oconnor/Desktop/trunk/feeds/packages/net/amule'
bzcat /home/oconnor/Desktop/trunk/dl/aMule-2.2.2rc2.tar.bz2 | /bin/tar -C /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/.. -xf -
ls: cannot access ./patches: No such file or directory
touch /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/.prepared_1b4b07835b3b584c361c2d451c6caa2a
(cd /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/./; if [ -x ./configure ]; then /usr/bin/find /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/ -name config.guess | xargs -r -n1 cp /home/oconnor/Desktop/trunk/scripts/config.guess; /usr/bin/find /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/ -name config.sub | xargs -r -n1 cp /home/oconnor/Desktop/trunk/scripts/config.sub; AR=mipsel-linux-uclibc-ar AS="mipsel-linux-uclibc-gcc -c -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts" LD=mipsel-linux-uclibc-ld NM=mipsel-linux-uclibc-nm CC="mipsel-linux-uclibc-gcc" GCC="mipsel-linux-uclibc-gcc" CXX=mipsel-linux-uclibc-g++ RANLIB=mipsel-linux-uclibc-ranlib STRIP=mipsel-linux-uclibc-strip OBJCOPY=mipsel-linux-uclibc-objcopy OBJDUMP=mipsel-linux-uclibc-objdump SIZE=mipsel-linux-uclibc-size CFLAGS="-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts " CXXFLAGS="-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts " CPPFLAGS="-I/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr/include -I/home/oconnor/Desktop/trunk/staging_dir/mipsel/include " LDFLAGS="-L/home/oconnor/Desktop/trunk/staging_dir/toolchain-mipsel_gcc4.1.2/lib -L/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr/lib -L/home/oconnor/Desktop/trunk/staging_dir/mipsel/lib " PKG_CONFIG_PATH="/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr/lib/pkgconfig:/home/oconnor/Desktop/trunk/staging_dir/host/usr/lib/pkgconfig" PKG_CONFIG_LIBDIR="/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr/lib/pkgconfig"  ./configure --target=mipsel-linux --host=mipsel-linux --build=i486-linux-gnu --program-prefix="" --program-suffix="" --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/lib --sysconfdir=/etc --datadir=/usr/share --localstatedir=/var --mandir=/usr/man --infodir=/usr/info --disable-nls --enable-shared --disable-static --disable-rpath --with-gnu-ld --disable-ccache --disable-debug --disable-optimize --disable-profile --disable-monolithic --enable-amule-daemon --enable-amulecmd --disable-amulecmdgui --enable-webserver --disable-webservergui --disable-amule-gui --disable-cas --disable-wxcas --disable-ed2k --disable-alc --disable-alcc --disable-systray --disable-utf8-systray --enable-embedded-crypto --enable-gsocket --disable-gtktest --with-zlib="/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr" --with-gdlib-prefix="/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr" --with-libpng-prefix="/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr" --with-wx-prefix="/home/oconnor/Desktop/trunk/staging_dir/mipsel/usr" --without-crypto-prefix --without-libiconv-prefix --without-libintl-prefix --without-x  ; fi; )
touch /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/.configured
make -C /home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2 HOSTCC="gcc" DESTDIR="/home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/ipkg-install" all install
make[4]: Entering directory `/home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2'
make[4]: *** No rule to make target `all'.  Stop.
make[4]: Leaving directory `/home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2'
make[3]: *** [/home/oconnor/Desktop/trunk/build_dir/mipsel/aMule-2.2.2/.built] Error 2
make[3]: Leaving directory `/home/oconnor/Desktop/trunk/feeds/packages/net/amule'
make[2]: *** [package/feeds/packages/amule/compile] Error 2
make[2]: Leaving directory `/home/oconnor/Desktop/trunk'
make[1]: *** [/home/oconnor/Desktop/trunk/staging_dir/mipsel/stamp/.package_compile] Error 2
make[1]: Leaving directory `/home/oconnor/Desktop/trunk'

I guess the error is "make[4]: *** No rule to make target `all'.  Stop." but if I change the makefile at the point there is written "all install" to "install" I'm getting the same error "make[4]: *** No rule to make target `install'.  Stop." so what can I do?

Hi,
I've tried compile amule 2.2.2  too, but without any success.

According amule site, in v2.2.2 there is no embedded crypto, so option --without-crypto-prefix  does not work. So we need to compile and use CryptoPP.

I've successfully compiled cryptopp with this Makefile:

include $(TOPDIR)/rules.mk

PKG_NAME:=cryptopp
PKG_VERSION:=5.5.2
PKG_RELEASE:=1

PKG_SOURCE:=cryptopp552.zip
PKG_SOURCE_URL:=@SF/cryptopp
PKG_MD5SUM:=a889be9d9ad5c202c925fb105caa4857


include $(INCLUDE_DIR)/package.mk

define Package/cryptopp
  SECTION:=libs
  CATEGORY:=Libraries
  TITLE:=crypto++
  URL:=http://www.cryptopp.com/

  DEPENDS:=+libstdcpp
endef

define Package/cyptopp/description
  Crypto++ Library is a free C++ class library of cryptographic schemes.
endef

define Build/Prepare
        unzip -d $(PKG_BUILD_DIR)  $(DL_DIR)/$(PKG_SOURCE)
endef

define Build/Compile

define Build/Compile
        $(call Build/Compile/Default, \
                PREFIX="$(PKG_INSTALL_DIR)/usr" \
                all install \
        )
endef

define Build/InstallDev
        mkdir -p $(1)/usr/include/cryptopp
        $(CP)   $(PKG_INSTALL_DIR)/usr/include/cryptopp/*  $(1)/usr/include/cryptopp
        mkdir -p $(1)/usr/lib
        $(CP)   $(PKG_INSTALL_DIR)/usr/lib/libcryptopp.a   $(1)/usr/lib/
endef

$(eval $(call BuildPackage,cryptopp))

After compilation I copy files cryptest.exe and usage.dat  to router and try to start self tests. Self tests fails complaining about mips/mipsel misconfiguration:

root@MMX-GATEWAY:/# ./cryptest.exe v

Using seed: 1221617269

Testing Settings...

FAILED:  Your machine is little endian.
passed:  sizeof(byte) == 1
passed:  sizeof(word16) == 2
passed:  sizeof(word32) == 4
passed:  sizeof(word64) == 8
passed:  sizeof(hword) == 2, sizeof(word) == 4, sizeof(dword) == 8
passed:  hasMMX == 0, hasISSE == 0, hasSSE2 == 0, hasSSSE3 == 0, isP4 == 0, cacheLineSize == 32Some critical setting in config.h is in error.  Please fix it and recompile.
Aborted

Another problem for me was disabling unicode in amule configuration. It's needed because libwxbase compiled with --disable-unicode flag.

The discussion might have continued from here.