
Oliver.Kowalke@qimonda.com wrote:
It's quite reasonable to build things on operating system X version N and have it run on operating system Y version M. Compiler running on Linux and producing binaries for Windows is a common beast.
I think this is not true:
I've used such a cross-compiler personally. It works and the produced binaries run on Windows.
UNIX : socket(). WIN: WSASocket()
And? When you're building for mingw using Linux-hosted compiler, the set of header files and functions and preprocessor defines is the same as if you was running Windows-hosted compiler.
From: Martin Bonner
From: Oliver.Kowalke@qimonda.com
With autoconfig the build process can check if strerror_r is avaliable and provide strerror as fall back.
Autoconfig can check if strerror_r is available ON THE BUILD MACHINE. It CANNOT tell whether it will be available on the target machines.
It is you fault if you distribute a software to an platform for which it wasn't build. If build and target machine have the same os version and release then the system calls should be the same.
And why do you think that build and target machine should have the same os version and release?
Because some system calls differ between the OS's and/or between releases. In this case the problem was that strerror_r is avaliable on LINUX and on Solaris 2.8 not. But Solaris 2.8 (and even HP/UX 11.11) provide an threadsafe strerror function. If I think on the BSD socket library - differences in the function flags and the behaviour Are common (even between releases).
As I've mentioned above, if you have cross-compiler that run on Solaris N and targets Solaris N-1, that cross-compiler has the set of headers and libraries from Solaris N-1, so any properties of Solaris N-1 that are discoverable by preprocessor symbols, compile tests, or link tests, can be take into account. The only think you cannot do is build a program for Solaris N-1, run it, and draw any conclusions from that -- because you'll be running it on Solaris N. Do any of the differences you list above require running a program to check for them? - Volodya
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost