How do I cross compile x11vnc for a different architecture than my Linux i386 or amd64 PC?
You will need a cross-compiling toolchain. Perhaps your distro provides these or you can find a HOWTO for your distro. We found a nice one at qtmoko.org for building armel binaries on Debian Linux i386 machines. It includes most of the libraries that x11vnc needs. We use that example here. We ran this script to set PATH, configure, and build: #!/bin/sh # toolchain from: qtmoko-debian-toolchain-armv4t-eabi.tar.gz export PATH=/opt/toolchains/arm920t-eabi/bin:$PATH env CC=arm-linux-gcc ./configure –host=arm-linux –without-avahi make arm-linux-strip ./x11vnc/x11vnc ls -l ./x11vnc/x11vnc Note we had to include –without-avahi due to lack of libavahi-client.so.3 supplied by the toolchain we used. One would need to add it if it was desired on the target machine. We also stripped the binary to make it smaller. For an embedded system one may also want to add –without-x if the embedded system does not use X11 and the -rawfb mechanism must be used.