Cyclone Client Build Extras

From richud.com
Jump to: navigation, search


Other sources

Possible other programs you may wish to include, this is mainly for reference or help getting awkward things to cross-compile.

acpica

http://www.acpica.org/downloads/ http://www.acpica.org/download/acpica-unix-20120111.tar.gz

	#doesnt like -j4
	cd "$(SOURCE)/$(acpica_PATH)/compiler" && make CC="$(CC)" && cp iasl $(INSTALL)/bin/

bc

http://ftp.gnu.org/gnu/bc/

	#CC must be set and it gets cached so be careful if experimenting
	cd "$(SOURCE)/$(bc_PATH)" && CC=$(CC) ./configure $(HOST) $(PREFIX) && make && make $(DESTDIR) install

bgrep

http://debugmo.de/2009/04/bgrep-a-binary-grep/

	cd "$(SOURCE)/$(bgrep_PATH)" && $(CC) bgrep.c -o bgrep && cp bgrep $(INSTALL)/bin

curl

Alternative to wget, not sure if it can do everything needed here. For the image transfer it was exactly the same xfer speed as wget.

	cd "$(SOURCE)/$(curl_PATH)" && ./configure $(HOST) $(PREFIX) --without-libssh2 --without-cyassl --without-polarssl --without-ssl && make -j4 && make $(DESTDIR) install

fb

http://home.mho.net/jswaby/fb.html

	cd "$(SOURCE)/$(fb_PATH)" && $(CC) fb.c -o fb && cp fb $(INSTALL)/bin

fuse

Implemented in ntfs-3g so not needed

http://fuse.sourceforge.net/

	cd "$(SOURCE)/$(fuse_PATH)" && ./configure --enable-lib --disable-rpath $(HOST) $(PREFIX) && make -j4 && make $(DESTDIR) install

hivetools

Didn't get very far with using this as a registry editor, but it was a pain to compile so maybe some useful info here. It doesnt do hive expansion. http://lilith.tec-man.com/hivetools/

	#ac_cv stuff gets round some automake issues with malloc
	#--with-check=no stops it needing libcheck which isnt there
	# ./configure --with-gnu-ld doesnt make a difference
	cd "$(SOURCE)/$(hivetools_PATH)" && ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes ./configure --with-libiconv-prefix=$(BROUTPUT)/build/libiconv-1.14/ --without-check $(PREFIX) $(HOST) && make CFLAGS+=-liconv CPPFLAGS+="-I$(BROUTPUT)/build/libiconv-1.14/include/ -I$(BROUTPUT)/build/openssl-1.0.0f/include/ -I$(BROUTPUT)/build/readline-6.2/include/" && make  $(DESTDIR) install

libiconv

	cd "$(SOURCE)/$(libiconv_PATH)" && ./configure $(PREFIX) $(HOST) && make && make $(DESTDIR) install

ncftp

FTP client that supports streaming if wget/curl doesn't suit. Benchmarking: ncftp/vsftpd showed it was only a few seconds faster than http/wget, tested downloading image over gigabit. I decided it was better to keep it all working over port 80 which makes it a lot more flexible, caching , redirection etc. http://www.ncftp.com/download/

	cd "$(SOURCE)/$(ncftp_PATH)" && CC=$(CC) ./configure $(HOST) $(PREFIX) && make -j4 && make $(DESTDIR) install

nfs-utils

Adding NFS v2/3/4 support (should be already enabled in kernel as default). Need to add e2fs progs in buildroot to compile (BR2_PACKAGE_E2FSPROGS).

Benchmarking: Fetching loose files/folders with lighttpd/wget was only a few seconds slower than NFS, tested fetching ~150Mb of loose driverpacks.

http://sourceforge.net/projects/nfs/files/nfs-utils/

	#--disable-tirpc need uuid-dev libblkid-dev e2fs for blkid headers
	cd "$(SOURCE)/$(nfsutils_PATH)" && ./configure --disable-nfsv4 --without-tcp-wrappers --enable-nfsv41 --disable-gss --disable-tirpc $(HOST) $(PREFIX) CPPFLAGS=-I"$(BROUTPUT)/build/e2fsprogs-1.41.12/lib/" && make -j4 && make $(DESTDIR) install

stress

Stress tester. Part of stresslinux but it hangs running in that distro for me so added it to my Cyclone where seems to work ok.

http://weather.ou.edu/~apw/projects/stress/ http://weather.ou.edu/~apw/projects/stress/stress-1.0.4.tar.gz

Makefile entry

	cd "$(SOURCE)/$(stress_PATH)" && ./configure $(HOST) $(PREFIX) && make -j4 && make $(DESTDIR) install


I used this command line , but it produced errors like the below on good pc's so it wasn't much help!

stress -c 8 -i 4 -m 4 -d 2 -t 100 -v

Fail example

stress: FAIL: [1408] (415) <-- worker 1415 got signal 9
stress: WARN: [1408] (417) now reaping child worker processes
<snip>
stress: FAIL: [1408] (451) failed run completede in 18s

stressapptest

Google use it, the memory auto size detection didnt work for me and had to specify -m manually...and it didnt seem to find a fault with dodgy pc after 8 hours (I set it that long to test)

"Stressful Application Test (or stressapptest, its unix name) tries to maximize randomized traffic to memory from processor and I/O, with the intent of creating a realistic high load situation in order to test the existing hardware devices in a computer." http://code.google.com/p/stressapptest/

http://code.google.com/p/stressapptest/downloads/detail?name=stressapptest-1.0.4_autoconf.tar.gz&can=2&q=

# requires libaio, add into buildroot to get libs/headers
	cd "$(SOURCE)/$(stressapptest_PATH)" && ./configure $(HOST) $(PREFIX) && make -j4 && make $(DESTDIR) install