This shows you the differences between two versions of the page.
— |
projects:openwrt:devel:ax25 [2014/01/12 13:17] (current) jann created |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Sources ====== | ||
+ | Sources: http://www.linux-ax25.org/wiki/CVS | ||
+ | ====== Tools ====== | ||
+ | Installing development tools and getting sources on a Debian machine: | ||
+ | <code> | ||
+ | apt-get install cvs autoconf automake libtool libncurses-dev g++ | ||
+ | cvs -d :pserver:cvs@cvs.linux-ax25.org:/home/ax25-cvs login <- password: cvs | ||
+ | cvs -d :pserver:cvs@cvs.linux-ax25.org:/home/ax25-cvs co ax25-tools | ||
+ | cvs -d :pserver:cvs@cvs.linux-ax25.org:/home/ax25-cvs co ax25-apps | ||
+ | cvs -d :pserver:cvs@cvs.linux-ax25.org:/home/ax25-cvs co libax25 | ||
+ | </code> | ||
+ | |||
+ | ====== Environment ====== | ||
+ | Setting the environment: | ||
+ | <code> | ||
+ | export PATH=/home/jann/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/bin:$PATH | ||
+ | export AR=mipsel-linux-uclibc-ar | ||
+ | export AS=mipsel-linux-uclibc-as | ||
+ | export LD=mipsel-linux-uclibc-ld | ||
+ | export NM=mipsel-linux-uclibc-nm | ||
+ | export CC=mipsel-linux-uclibc-gcc | ||
+ | export CPP=mipsel-linux-uclibc-cpp | ||
+ | export GCC=mipsel-linux-uclibc-gcc | ||
+ | export CXX=mipsel-linux-uclibc-g++ | ||
+ | export RANLIB=mipsel-linux-uclibc-ranlib | ||
+ | export CFLAGS="-Os -s" | ||
+ | export LDFLAGS="-Os -s -L/home/jann/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/lib -L/home/jann/openwrt/trunk/build_dir/mipsel/ncurses-5.6/lib" | ||
+ | </code> | ||
+ | |||
+ | LDFLAGS are needed to tell the compiler where to find the library. | ||
+ | |||
+ | ====== Crosscompiling ====== | ||
+ | ===== Preparations ===== | ||
+ | <code> | ||
+ | directory: /usr/lib | ||
+ | mkdir tmp | ||
+ | mv libax25* tmp | ||
+ | cp -r ~/openwrt/mipsel/libs/ax25_bin/usr/lib/libax25* . | ||
+ | |||
+ | after whole compiling session in directory: /usr/lib | ||
+ | rm libax25* | ||
+ | mv tmp/libax25* . | ||
+ | rmdir tmp | ||
+ | </code> | ||
+ | |||
+ | This is necessary due to a bug. | ||
+ | |||
+ | ===== libax25 ===== | ||
+ | <code> | ||
+ | directory: libs/ax25 | ||
+ | libtoolize --copy --force | ||
+ | aclocal | ||
+ | autoconf | ||
+ | automake --add-missing | ||
+ | vi configure (Search for "setpgrp" and comment about 90 lines out until next "$LINENO: checking") | ||
+ | ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --host=mipsel-linux | ||
+ | cp -r /usr/include/netrose/ ~/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/include/netrose | ||
+ | cp -r /usr/include/netrom/ ~/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/include/netrom | ||
+ | make | ||
+ | make DESTDIR=~/openwrt/mipsel/libs/ax25_bin install | ||
+ | make DESTDIR=~/openwrt/mipsel/libs/ax25_conf installconf | ||
+ | cp -r ~/openwrt/mipsel/libs/ax25_bin/usr/lib/* ~/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/lib | ||
+ | cp -r ~/openwrt/mipsel/libs/ax25_bin/usr/include/netax25/* ~/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/include/netax25/ | ||
+ | </code> | ||
+ | |||
+ | =====ax25-tools===== | ||
+ | <code> | ||
+ | directory: ax25-tools | ||
+ | aclocal | ||
+ | autoconf | ||
+ | automake --add-missing | ||
+ | vi configure (Search for "setpgrp" and uncomment about 90 lines until next "$LINENO: checking") | ||
+ | ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --host=mipsel-linux | ||
+ | make | ||
+ | mkdir -p ../ax25-tools_bin/usr/share/man/man1 | ||
+ | |||
+ | make DESTDIR=~/openwrt/mipsel/ax25-tools_bin install | ||
+ | make DESTDIR=~/openwrt/mipsel/ax25-tools_conf installconf | ||
+ | </code> | ||
+ | |||
+ | Bugs: | ||
+ | * applications need "/usr/lib/libax25*" (problem with "libtool") | ||
+ | * make DESTDIR=~/openwrt/ax25-toolsfertig install (workaround "mkdir -p ...") | ||
+ | |||
+ | =====ax25-apps===== | ||
+ | <code> | ||
+ | directory: ax25-apps | ||
+ | aclocal | ||
+ | autoconf | ||
+ | automake --add-missing | ||
+ | ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --host=mipsel-linux | ||
+ | cp -r ~/openwrt/trunk/build_dir/mipsel/ncurses-5.6/include/*.h ~/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/include | ||
+ | make | ||
+ | make DESTDIR=~/openwrt/mipsel/ax25-apps_bin install | ||
+ | make DESTDIR=~/openwrt/mipsel/ax25-apps_conf installconf | ||
+ | </code> | ||
+ | |||
+ | Bugs: | ||
+ | * applications need "/usr/lib/libax25" (problem with "libtool") | ||
+ | |||
+ | =====net-tools===== | ||
+ | <code> | ||
+ | directory: net-tools | ||
+ | apt-get source net-tools | ||
+ | |||
+ | directory: net-tools/net-tools-1.60 | ||
+ | make | ||
+ | answer all questions with default except rose=yes | ||
+ | ~/openwrt/trunk/staging_dir/toolchain-mipsel_gcc3.4.6/bin/mipsel-linux-strip slattach | ||
+ | </code> | ||
+ | |||
+ | ====== Files ====== | ||
+ | ===== ax25-essentials ===== | ||
+ | ^BIN ^CONF ^ | ||
+ | ^net-tools ^ax-25-apps ^ | ||
+ | |/sbin/slattach |/etc/ax25/ax25ipd.conf | | ||
+ | ^ax25-apps |/etc/ax25/ax25rtd.conf | | ||
+ | |/usr/sbin/ax25ipd |/var/ax25/ax25rtd/ip_route (touch+script) | | ||
+ | |/usr/sbin/ax25rtd |/var/ax25/ax25rtd/ax25_route (touch+script) | | ||
+ | |/usr/sbin/ax25rtctl ^ax25-tools | | ||
+ | ^ax25-tools |/etc/ax25/ax25.profile | | ||
+ | |/usr/sbin/ax25d |/etc/ax25/rxecho.conf | | ||
+ | |/usr/sbin/axctl |/etc/ax25/ax25d.conf | | ||
+ | |/usr/sbin/axparms |/etc/ax25/axspawn.conf | | ||
+ | |/usr/sbin/axspawn ^lib-ax25 ^ | ||
+ | |/usr/sbin/kissattach |/etc/ax25/axports | | ||
+ | |/usr/sbin/kissnetd | | | ||
+ | |/usr/sbin/kissparms | | | ||
+ | |/usr/sbin/m6pack | | | ||
+ | |/usr/sbin/mkiss | | | ||
+ | |/usr/sbin/net2kiss | | | ||
+ | |/usr/sbin/rxecho | | | ||
+ | |/usr/sbin/spattach (symlink -> kissattach) | | | ||
+ | |||
+ | |||
+ | ===== ax25-helpers ===== | ||
+ | ^BIN ^CONF ^ | ||
+ | ^ax25-apps ^ax25-apps ^ | ||
+ | |/usr/bin/call |/etc/ax25/ax25mond.conf | | ||
+ | |/usr/bin/listen ^ax25-tools ^ | ||
+ | |/usr/sbin/ax25mond |/etc/ax25/rip98d.conf | | ||
+ | ^ax25-tools |/etc/ax25/ttylinkd.conf | | ||
+ | |/usr/bin/axgetput |/var/ax25/mheard/mheard.dat (touch+script) | | ||
+ | |/usr/bin/bget (symlink -> axgetput) | | | ||
+ | |/usr/bin/bput (symlink -> axgetput) | | | ||
+ | |/usr/bin/mheard | | | ||
+ | |/usr/sbin/ax25_call | | | ||
+ | |/usr/sbin/beacon | | | ||
+ | |/usr/sbin/bpqparms | | | ||
+ | |/usr/sbin/mheardd | | | ||
+ | |/usr/sbin/rip98d | | | ||
+ | |/usr/sbin/tcp_call | | | ||
+ | |/usr/sbin/ttylinkd | | | ||
+ | |||
+ | |||
+ | ===== ax25-netrom-rose ===== | ||
+ | ^BIN ^CONF ^ | ||
+ | ^ax25-tools ^ax25-tools ^ | ||
+ | |/usr/sbin/netrom_call |/etc/ax25/nrboadcast | | ||
+ | |/usr/sbin/netromd ^libax25 ^ | ||
+ | |/usr/sbin/nodesave |/etc/ax25/nrports | | ||
+ | |/usr/sbin/nrattach |/etc/ax25/rsports | | ||
+ | |/usr/sbin/nrparms | | | ||
+ | |/usr/sbin/nrsdrv | | | ||
+ | |/usr/sbin/rose_call | | | ||
+ | |/usr/sbin/rsattach | | | ||
+ | |/usr/sbin/rsdwnlnk | | | ||
+ | |/usr/sbin/rsmemsiz | | | ||
+ | |/usr/sbin/rsparms | | | ||
+ | |/usr/sbin/rsuplnk | | | ||
+ | |/usr/sbin/rsusers.sh | | | ||
+ | |||
+ | ===== ax25-libax25 ===== | ||
+ | ^BIN ^CONF ^ | ||
+ | ^libax25 | | | ||
+ | |/usr/lib/libax25.a | | | ||
+ | |/usr/lib/libax25io.a | | | ||
+ | |/usr/lib/libax25io.la | | | ||
+ | |/usr/lib/libax25io.so (symlink -> libax25io.so.0.0.0) | | | ||
+ | |/usr/lib/libax25io.so.0 (symlink -> libax25io.so.0.0.0) | | | ||
+ | |/usr/lib/libax25io.so.0.0.0 | | | ||
+ | |/usr/lib/libax25.la | | | ||
+ | |/usr/lib/libax25.so (symlink -> libax25.so.0.0.0) | | | ||
+ | |/usr/lib/libax25.so.0 (symlink -> libax25.so.0.0.0) | | | ||
+ | |/usr/lib/libax25.so.0.0.0 | | | ||
+ | |||
+ | ====== Packaging ====== | ||
+ | <code> | ||
+ | directory: ~/openwrt/trunk/build_dir/host/ipkg-utils-1.7 (as root) | ||
+ | make install | ||
+ | |||
+ | directory: ~/openwrt | ||
+ | ipkg-build -c -o root -g root <package_dir> <full path to destination_dir> | ||
+ | |||
+ | directory: ~/openwrt/mipsel/dg8ngn/ipkg | ||
+ | ipkg-make-index . > Packages | ||
+ | chown jann:root * | ||
+ | </code> |