View Single Post
Old 08-15-2012, 12:19 AM   #2
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Týr
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,586
Karma: 6299991
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
I will add here a list of things that BREAK with the 2006q3 TC OOTB

WHY WOULD YOU BOTHER DOING THIS???

Well, Buildroot allows us to create staged sections to each build, meaning that once I have each of these packages built - I can go back an cherry pick which stage to tweak, what Makefile etc...

Basically I also didnt want anyone else to have to try a package only to find it broken.

So there you go, 16 hours later here's the info.

The Deathlist:

Spoiler:


gdb 7.4.x - won't build. 7.2 will.

linphone. because it calls ORTP which won't build. (heh, I made a funny)

libgtk2 dies with a recursion error (that's the theme for many of these fails IIRC)

Webkit because it calls libgtk2
(you can apply this principle to all 'RELIES ON blah' packages)

MPD Will pull Glib2 - that needs testing. Currently elided.

ltp-testsuite - dies with 'CAP_LAST_CAP' undeclared (Symbol issue again)

lttng-modules-2.0.3 - dies with a long string of errors

qt 4.8.2: Dies with futex.h:96: error: 'u32' was not declared in this scope
That's a futex header issue I believe. Input taken on that issue.
I did apply the fix knc1 mentioned first.

rt-tests dies with cyclictest.c:906: error: 'SCHED_BATCH' undeclared (first use in this function) (Symbol issue again probably based on a lack of RT in the kernel. pointless tool anways... Bit bucket methinks)

util-linux 2.20.1 - Dies since UUIDD dies.
Code:
../libblkid/src/.libs/libblkid.so: undefined reference to `fdopendir'
../libblkid/src/.libs/libblkid.so: undefined reference to `faccessat'
collect2: ld returned 1 exit status
make[4]: *** [mkswap] Error 1
U-boot Tools - Dies
Code:
fw_env.c:43:27: error: mtd/mtd-user.h: No such file or directory
possibly an incorrect depend
unionfs 0.25 -
Code:
 unionfs.c:661: error: 'AT_SYMLINK_NOFOLLOW' undeclared (symbols)
mplayer dies:
Code:
 l -rdynamic  -lm  
ffmpeg/libavcodec/libavcodec.a(h264dsp_init_arm.o): In function `ff_h264dsp_init_neon':
host-lua 5.1.5 Building -
Code:
ldebug.o: In function `addinfo':
ldebug.c:(.text+0x1822): undefined reference to `__stack_chk_fail_local'
luajit 2.0.0-beta10
Code:
Building - lj_arch.h:224:2: error: #error "Need at least GCC 4.2 or newer"
(not sure what that error means hmm, so cryptic)

libv4l -
Code:
l.cpp   ivtv-ctl.c: In function 'main':
ivtv-ctl.c:510: error: 'VIDEO_GET_FRAME_COUNT' undeclared
BOOST: A general purpose C++ library
Code:
...failed updating 3 targets...
make[1]: *** [/home/simon/BLDS/buildroot/build/boost-1.49.0/.stamp_staging_installed] Error 1
liburcu 0.7.3
Code:
test_urcu_timing.o: In function `thr_writer':
/home/simon/BLDS/buildroot/build/liburcu-0.7.3/tests/test_urcu_timing.c:159: undefined reference to `__sync_lock_test_and_set_4'
KMOD: handle kernel modules (which is already in the device)
Code:
libkmod/libkmod-config.c:546: error: 'O_CLOEXEC' undeclared

That's actually quite a short list considering the 7 year old toolchain, and much of it revolves around a known issue. Gotta love BR.

----------------------------------------------------------------


Okay onwards. Here is
a complete list of everything I EXCLUDED:

Not built: (implicitly excluding the above stuff that died obviously)

These packages were not included in the build - They either were pointless given the hardware - outdated or duplicated - or relied on something that currently can't build, or for some other ineffable reason I didn't like the cut of their gib.

BUSYBOX
Spoiler:

(Install The) watchdog Daemon Startup Script to Busybox

Packages that are provided by Busybox 1.20.x (I'll go back and see what if any can be replaced)


Audio and video applications
Spoiler:

gstreamer - Selects: BR2_PACKAGE_LIBGLIB2

pulseaudio: not chosen


ALSA utils selection
Spoiler:

amidi, iecset, aplaymidi, arecordmidi, aseqdump, aseqnet,speaker-test all not built

mpd- Selects: BR2_PACKAGE_LIBGLIB2


Debugging, profiling and benchmark
Spoiler:

latencytop - we don't have support in kernel right now (shame)


Development tools
Spoiler:

pkg-config (OUCH) - Selects: BR2_PACKAGE_LIBGLIB2


Graphic libraries and applications (graphic/text)
Spoiler:

various dfbuffer examples and drivers (I am going to see if I can get this support in the kernel via a module perhaps? TBC, the excluded stuff seemed pointless.)

LINUX_FUSION: (err I saw no use in the short term)

SAWMAN: (maybe if we get directfb going)

Gob2 - Selects: BR2_PACKAGE_LIBGLIB2

vala - Selects: BR2_PACKAGE_LIBGLIB2

Enlightenment Foundation libraries (Some other poor souls headache)

QT -(OUCH) - Yeah so I mentioned it twice. Ouch. I will use the prebuilt ones from the games projects for now then.

X.org X Window System, X11R7, release 7.5 - err no.


HARDWARE:
Spoiler:

crdkit

cramfs

dbusglib

dbus-python

e2fsprogs - Selects: BR2_PACKAGE_UTIL_LINUX [=n] && BR2_PACKAGE_UTIL_LINUX_LIBBLKID [=n] && BR2_PACKAGE_UTIL_LINUX_LIBUUID - Two of which currently die.

eeprog - err no - Simple tool to read/write i2c eeprom chips.

fconfig

fis

fmtools

gadgetfs-test

gdisk

genromfs

gpsd

gvfs

hwdata

i2c-tools

input-event-daemon

input tools

iostat

irda-tools

kbd (hmm maybe?)

lcdproc

linux-firmware

lm-sensors - cool - but no.

lvm2 + dev mapper

makedevs

mdadm

memtester

minicom

mtd/jiffs2 utilities

open2300

openocd

parted - Selects: BR2_PACKAGE_LVM2 [=n] && BR2_PACKAGE_READLINE [=y] && BR2_PACKAGE_UTIL_LINUX [=n] && BR2_PACKAGE_UTIL_LINUX_LIBUUID [=n]

pci-utils

picocom - clone again

rng-tools

sane-backends

sdparm

setserial

smartmontools - err no SD doesn't have smart

sredird - no

sshfs - Selects: BR2_PACKAGE_LIBFUSE [=y] && BR2_PACKAGE_LIBGLIB2 [=n] && BR2_PACKAGE_GETTEXT [=n] && BR2_PACKAGE_LIBINTL [=n] && BR2_PACKAGE_LIBICONV [=n] && BR2_PACKAGE_OPENSSH [=y]

statserial - that time has past.

ti-utils

wipe

xfsprogs - Selects: BR2_PACKAGE_UTIL_LINUX [=n] && BR2_PACKAGE_UTIL_LINUX_LIBUUID [=n]


INTERPRETERS:
Spoiler:

Lua support for Haserl - lua wont build ATM

LIBRARIES: AUDIO
Spoiler:

libcdaudio

libcue

libmpd - Selects: BR2_PACKAGE_LIBGLIB2

LIBS: CRYPTO
Spoiler:

ocf-linux - no kernel driver right now. ( The emulator cold MAYBE take advantage of this but I don't see any value if it can't be translated back onto the device)

openssl - ocf support was left out for obvious reasons

LIBS: FS
Spoiler:

gamin - Selects: BR2_PACKAGE_LIBGLIB2

liblockfile - nfs - erm not right now

libsysfs - its a 2.6 thing but dunno... support?

LIBS: GRAPHICS
Spoiler:

atk - Selects: BR2_PACKAGE_LIBGLIB2 [=n]

gdk-pixbuf - Selects: BR2_PACKAGE_LIBGLIB2 [=n]

pango - Selects: BR2_PACKAGE_LIBGLIB2

webkit - (OUCH) requires libgtk2

zxing - err no. unless someone REALLY REALLY wants a multi-format 1D/2D barcode image processing library. I've done all the barcode processing I want for one lifetime. InterMec I'm looking at you!

opencv - some support was elided - build tests, performance tests, gstreamer support, qt backend support, did not install 'extra data' - lib v4l support as libv4l does not compile

LIBS: HW
Spoiler:

libraw1394

libts - The Touchscreen tslib Library

libfreefare

LIBFTDI: Userspace access to FTDI USB interface chips

LIBIQRF: This library implement specific protocol which is used for communicating with iqrf devices (http://iqrf.org) over usb. For usb access is used libusb library.

LIBNFC: Public platform independent Near Field Communication (NFC) library.

LIBNFC_LLCP: Library extending libnfc with support for Logical Link Control
Protocol.

LIBS: MULTIMEDIA
Spoiler:

LIBMMS: LibMMS is a common library for parsing mms:// and mmsh:// type network streams. These are commonly used to stream Windows Media Video content over the web. LibMMS itself is only for receiving MMS stream, it doesn't handle sending at all.

Selects: BR2_PACKAGE_LIBGLIB2 [=y]

LIBDVDREAD: libdvdread provides a simple foundation for reading DVD-Video images.

LIBDVDNAV: libdvdnav is a library that allows easy use of sophisticated DVD navigation features such as DVD menus, multiangle playback and even interactive DVD games.

LIBPLAYER: libplayer provides a generic A/V API that relies on various multimedia player for Linux systems. It currently supports MPlayer, xine VLC and GStreamer only
(SINCE WE CANT OFFER ANY BACKEND SUPPORT FOR GSTREAMER / MPLAYER pointless)

MEDIASTREAMER: Mediastreamer is a powerful and lightweighted streaming engine specialized for voice/video telephony applications.
Selects: BR2_PACKAGE_ORTP [=n]

LIBS: NETWORKING
Spoiler:

GLIB_NETWORKING: Network-related GIO modules for glib.
Selects: BR2_PACKAGE_LIBGLIB2 [=n]

LIBMNL: libmnl is a minimalistic user-space library oriented to Netlink developers.

LIBMODBUS: libmodbus is a free software library to send/receive data according
to the Modbus protocol. This library is written in C and supports
RTU (serial) and TCP (Ethernet) communications.

LIBMBUS: libmbus is a library for communicating with energy metering devices.
It supports TCP and RS232 M-bus gateways.
(M-bus standard: http://www.m-bus.com/)

LIBNFNETLINK: libnfnetlink is the low-level library for netfilter related kernel/userspace communication.

LIBNETFILTER_CONNTRACK: libnetfilter_conntrack is a userspace library providing a programming interface (API) to the in-kernel connection tracking state table.

LIBNETFILTER_CTTIMEOUT: libnetfilter_cttimeout is the userspace library that provides the programming interface to the fine-grain connection tracking timeout infrastructure.

LIBNL: A library for applications dealing with netlink socket.

LIBOPING: liboping is a C library to generate ICMP echo requests, better known as "ping packets".

LIBPCAP: A system-independent library for user-level network packet capture.

LIBSOUP: libsoup is an HTTP client/server library. It uses GObject and the GLib main loop, to integrate well with GNOME applications.
Selects: BR2_PACKAGE_LIBXML2 [=y] && BR2_PACKAGE_LIBGLIB2 [=n]

LIBUPNP: The portable SDK for UPnP(tm) Devices (libupnp) provides developers
with an API and open source code for building control points,
devices, and bridges that are compliant with Version 1.0 of the
Universal Plug and Play Device Architecture Specification

LIBVNCSERVER: libvncserver is a VNC server/client library.

ZEROMQ: ØMQ (ZeroMQ, 0MQ, zmq) looks like an embeddable networking
library but acts like a concurrency framework.

LIBS: TEXT
Spoiler:

ENCHANT: Enchant is a spell-checking library that provides a consistent API across a number of spell-checking system backends.
Selects: BR2_PACKAGE_LIBGLIB2 [=n]

MISC:


All elided.

NETWORKING APPS:
Spoiler:
IT IS SHORTER TO LIST WHAT WAS BUILT:

CTORRENT, cifs-utils, LINKS, mutt and Rsync all built okay - rest untested as yet.

Package managers:

IPKG: The Itsy Package Installer from handhelds.org
Opkg built instead.

Real-Time

XENOMAI: Real-Time Framework for Linux http://www.xenomai.org
Xenomai is split in two parts: a kernel part and an userspace part. So, No.

System tools

QUOTA: Implementation of the disk quota system.
Selects: BR2_PACKAGE_UTIL_LINUX (which select UUID stuffs, which die, see death reports)

Text editors and viewers

nano is NOT optimized for size

Host utilities
Spoiler:

LPC3250LOADER: lpc3250loader is a tool to load/burn programs (in particular kickstart
and S1L) on an LPC3250 platform.

OMAP_U_BOOT_UTILS: U-Boot Utilities for Texas Instrument's OMAP platforms.
This is a set of tools to control U-Boot from scripts, generate
OMAP-specific signed image files and more.

OPENOCD: OpenOCD - Open On-Chip Debugger

HOST_SAM_BA: Atmel SAM-BA software provides an open set of tools for
programming the Atmel SAM3, SAM7 and SAM9 ARM-based
microcontrollers.


Bootloaders
Spoiler:

All elided (for now)

BAREBOX: The Barebox bootloader, formerly known as U-Boot v2.

BOOTLETS: Stage1 bootloaders for Freescale iMX23/iMX28 SoCs

BOOT: Build "Das U-Boot" Boot Monitor

That's all folks. Everything else built just fine. More details on that in a moment

Last edited by twobob; 08-19-2012 at 03:00 PM. Reason: better info
twobob is offline   Reply With Quote