Cyclone Client Build Extras

Revision as of 12:51, 5 February 2012 by Chud (talk | contribs) (hivetools)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
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.


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


	#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


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


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


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


Implemented in ntfs-3g so not needed

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


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.

	#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


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


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.

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


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.

	#--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 tester. Part of stresslinux but it hangs running in that distro for me so added it to my Cyclone where seems to work ok.

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
stress: FAIL: [1408] (451) failed run completede in 18s


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."

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