"Frederich, Eric P21322" wrote: > Are there any tips to compile compatible libraries with msys / cygwin? > Is it even possible? > Am I missing a gcc option?
No, it's not possible. Cygwin libraries use the Cygwin runtime. MinGW/MSYS libraries use the Microsoft (MSVCRT) runtime. These are two inherently different and incompatible implementations of a C runtime, so you can't link a program that uses both and expect it to work. It is technically possible if you are very sure of what you're doing, but this would involve making sure that all C functions are resolved to the correct library. For example, printf() in the MinGW code must go to MSVCRT, printf() in the Cygwin code must go to cygwin1.dll. The only way I can think to do this is with LoadLibrary()/GetProcAddress() and function pointers for everything. It also would mean that no C library data structures could be passed between the two, such as file descriptors, FILE *, struct stat, etc. It would be an extremely inconvent way to write code, and it would be much easier and cleaner to just compile all code as Cygwin code or all code as native (MSVCRT) code. Brian -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/