httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Henrik Strand <henrik.str...@axis.com>
Subject /bin/sh: ./gen_test_char: cannot execute binary file
Date Fri, 16 Mar 2012 14:07:54 GMT
Hi!

When porting/cross-compiling the Apache HTTP Server the build fails with
the following error message: "/bin/sh: ./gen_test_char: cannot execute
binary file".
This is due to that the gen_test_char is compiled with the
cross-compiler but executed on the build system.

This error has been around for 10 years or so, but I could not find an
error report on this issue so I created one (in May, 2011):
https://issues.apache.org/bugzilla/show_bug.cgi?id=51257

There exists an old (2003-08-13) patch
(http://marc.info/?l=apache-httpd-dev&m=106150997309208&w=2) for this
error but I do not think that it was integrated.

Another patch
(http://svn.apache.org/viewvc/httpd/httpd/trunk/server/gen_test_char.c?r1=758929&r2=795438&pathrev=1001398&diff_format=h)
has recently been integrated to simplify cross-compilation. However, this patch does not solve
the gen_test_char cross-compiling issue.

A known workaround is to:
1. Cross-compile and wait for the build to fail.
2. Compile for build system and copy the gen_test_char binary to the
cross-compiled build folder
3. Run make a second time for the cross-compiled system

However, since I'm about to automate the build process this workaround
is not sufficient for me.

It seems strange that this error has been around for so long time so I'm
wondering if the Httpd build system does include some way to generate a
correct gen_test_char file when cross-compiling?

Thanks in advance.

Kind Regards,
Henrik


Mime
View raw message