Hi,
I'm having some trouble compiling the
socket egg with my CHICKEN cross-compiler.
I have a cross-compiler that compiles my eggs for my host architecture (x86) and then my target (android):
[user ~]$ aosp-chicken-install socket
# installing for host works:
'host/linux-x86/chicken/bin/aosp-csi' -bnq -setup-mode -e "(require-library setup-api)" -e "(import setup-api)" -e "(setup-error-handling)" -e "(extension-name-and-version '(\"socket\" \"0.2.5\"))" -e "(host-extension #t)" 'socket.setup'
'host/linux-x86/chicken/bin/aosp-csc' -feature compiling-extension -setup-mode -host socket-features.scm
./socket-features > socket-config.scm
# when it reaches target, it fails:
'host/linux-x86/chicken/bin/aosp-csi' -bnq -e "(require-library setup-api)" -e "(import setup-api)" -e "(setup-error-handling)" -e "(extension-name-and-version '(\"socket\" \"0.2.5\"))" -e "(destination-prefix \"/home/klm/cube/aosp-new/out/target/product/tr1imx6/system/\")" -e "(runtime-prefix \"target/product/tr1imx6/system/\")" 'socket.setup'
'host/linux-x86/chicken/bin/aosp-csc' -feature compiling-extension socket-features.scm
./socket-features > socket-config.scm
sh: ./socket-features: cannot execute binary file
Error: shell command failed with nonzero exit status 32256:
./socket-features > socket-config.scm
In socket.setup, we find these two lines:
(compile socket-features.scm)
(run (./socket-features > socket-config.scm))
And I think this is the cause of the trouble: The host machine cannot execute the compiled target's binary executable to determine its features.
was tempting, but it incorrectly detects my target system to support SO_REUSEPORT which it does not.