Just stuff I had to compile myself because it wasn't there yet.
At this point it contains a.o.:
Perl (5.10.0, no threads) as well as a collection of modules.
cURL (7.19.4): a more split out and more up-to-date version
DBUS (1.2.4): work in progress
pkg-config (0.23)
getopt (1.1.4)
groff (1.19.2)
idn (1.11)
libevent (1.4.9, broken DNS)
memcached (1.2.6)
libGD (2.0.35, PNG support)
FreeBSD's /usr/bin/locale
N.B. Saurik released a version pkg-config that does not check
/usr/local/lib/pkgconfig for .pc files. So you either need to lock the version
of pkg-config to mine (if you use aptitude), or make sure you export a proper
PKG_CONFIG_PATH value in your .bashrc or .profile
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig
To use the repository, download the CoreDev public key and add it with apt-key add coredev.pub. The repository used to be hosted on coredev.nl, but it was moved on 2016-06-21.
Then add a file /etc/apt/sources.list.d/coredev.nl.list containing:
deb http://zl0.nl/coredev/cydia iphone main
Refresh or restart Cydia (or simply use aptitude or even apt-get) and it should be there.
export CPPFLAGS=-I/var/include | Most useful include files are there instead of in /usr/include |
export CPP=/usr/bin/cpp | For some reason, autoconf looks for cpp in /lib sometimes. |
For cURL (and possibly others): define HAVE_POSIX_STRERROR_R | We have POSIX compliant strerror_r() instead of GNU glibc's deviant variant. |
configure: make ac_link use ldid -S or set crosscompile=yes | It tries to run stuff it compiles. For the ldid -S option, the initial check trying to run a.out needs to be fixed as well. fix_configure fixes the configure for binaries only in the current directory, so not .dylibs (yet) |
Disable the "checking whether getcwd aborts..." and "checking whether getcwd handles long file names properly..." checks in configure. | Those checks, present in for instance man-db's configure makes the iPhone reboot (!) |
Add -march=armv6 -mcpu=arm1176jzf-s to CFLAGS if you want to use gdb. | The current gdb is pretty picky. |
Disable signature checks | It's of course always possible to temporarily disable signature checks by setting the security.mac.proc_enforce and security.mac.vnode_enforce sysctls to 0. |
fakeroot failing tests (tar when root, plus touchinstall when not root) | setpwent needs to be overloaded (libinfo.dylib) |
__eprintf() missing | As a quick hack, add a static definition of __eprintf() to <assert.h>, like the one here. |
Be sure to read the iphonedevonlinux page for cross compiling on Linux.