I've compiled EXEs under Windows and then tried to run them under WINE (on Linux) and they don't work. Even an extremely simple program like this:package mainimport ("net/http""log")func main() {resp, err := http.Get("http://golang.org/pkg/net/http/")log.Printf("resp = %v", resp)log.Printf("err = %v", err)}when compiled under Windows (real Windows, or cross-compiled from Linux) won't run under WINE. In fact, in my limited testing, it seems as though this is related to sockets because it impacts programs that act both as web clients or web servers.Now both compilations methods seem to leverage GCC and I'm wondering if somehow this is to blame. Is it possible to build with another compiler? (MSVC?) My hope is to get a tool chain (under "real" Windows) that can build exes that will run under WINE (because I need to link DLLs into the program but I want to run them on a Linux clusters...it's complicated :-)).
--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I'm 99% sure but don't know for sure.
--
Perhaps a silly question and I might be missing some of the nuance here but why? From an academic stand-point I can appreciate the desire to see if it works but it isn't immediately clear the benefit of maintaining compatibility. Why not build a binary for *nix directly instead of running it through wine? Is there some other tie-in that is dependent on Windows (e.g. UI)? Is this for efficient local testing under a *nix OS?
Could you wrap the DLL with a thin API that provides a named pipe as an interface and is compiled with MinGW or MSVC?