How to compile ice with MinGW? Thanks!
|
|
How to compile ice with MinGW? Thanks!
Sorry, but what is MiniGW?
MinGW is a windows version of gcc.
Please visit http://www.mingw.org and http://sourceforge.net/projects/mingw/ to get more detail.
I wanna write an opensource cross-platform application with ice and wxWidgets.
So I'd like to use a GPL compiler to compile my application. For the Linux version I use gcc, and windows, I want MinGW.
I see. Sorry, but we do not support MiniGW. However, since it's based on gcc, I suggest that you simply give it a try.
OK, I'll try to write a Makefile for MinGW
Dear lionel, a year ago you wrote
What about results? At least just tell me - is it possible? :)Originally Posted by lionel
We started use Ice (Java) since summer, 2005.
And a week ago I had asked my student to try to build Ice 3.0 (C++) on MinGW, he reported a lot of problems...
We do not hate MS Visual C++ at all, but we have to use GNU gcc on Windows due to some reasons.
Last edited by vvvol; 11-24-2005 at 05:29 AM.
I met the same problem when I tried to use Eclipse and Mingw.
I have verified we can't simply use lib files included in the Ice-3.0.0-VC71.msi.
So I think if it's possible to build from source code.
But when I use make. I got this:
Can anybody tell me what's the message mean?
I noticed that there are Make.rules.xxx under config. But didn't include windows. Is that the possible reason?process_begin: CreateProcess((null), uname, ...) failed.
process_begin: CreateProcess((null), uname, ...) failed.
process_begin: CreateProcess((null), uname, ...) failed.
process_begin: CreateProcess((null), uname, ...) failed.
config/Make.rules.:171: config/Make.rules.: No such file or directory
config/Make.rules.:297: *** You need to define mkshlib in Make.rules.. Stop.
Thank u.
Originally Posted by lionel
I see it has been a while since anyone did anything with this. I am also interested in getting Ice to work with Mingw. I am using the Dev-C++ IDE and have managed to compile everything. In trying to link however I am getting a lot of unresolved labels. I am trying the "hello" demo. Both run() and main() are causing multiple definition errors too. I think the IDE is trying to build one executable with both Client and Server in it.
If anyone has actually gotten a working configuration going please post the procedure!
Mike Lamana
Assuming you are using Makefiles, porting Ice to MingW probalby isn't that difficult. You'll need to write a Make.rules.CYGWIN_NT-5.1. You can probalby copy the majority of the details from Make.rules.Linux. I'm not sure if the POSIX library emulation is good enough to run Ice though.
Assuming you are not doing this port as a hobby and you just want to use Ice, why don't you download the free version of the MS C++ compiler? http://msdn.microsoft.com/vstudio/express/visualc/. Its supported out of the box with Ice 3.0.1.
I am trying to build Ice 3.2.1 with mingw32 (g++ 3.4.5). I've already got a Make.rules.MINGW32_NT-5 and built IceUtil with it. I'll post more information and the patches to Ice as I move forward.
Just for you to know, I have successfully built Ice 3.2.1 with MingGW 5.1.3 (gcc 3.4.5). Some cleaning and verification is still needed.
I hit a limitation of MinGW stable (gcc 3.4.5): as it uses sjlj instead of dwarf2, it cannot produce code which propagates user exceptions across DLLs, therefore most unit test fail.
I am trying to build everything using the MinGW technology preview (gcc 4.2.1) with dwarf2 exceptions.
The MinGW Tech Preview with gcc 4.2.1 generates bad code which was causing random memory corruption.
The good news is I managed to get ICE 3.2.1 working with MinGW stable (gcc 3.4.5). Only one unit test (test/IceGrid/deployer, and only the step when it reads log4.txt) is failing, I hope I will fix it next Monday.
Per popular request and although I have been unable to figure out why test/IceGrid/deployer still fails, here comes mingw_support.patch.
Download official ICE 3.2.1 sources from zeroc.com, then apply this patch. It builds against MinGW stable with g++ 3.4.5 on Windows XP and 2003. I have not tested it on Windows Vista yet but I assume it will NOT work, as there are some known issues in MinGW stable with Vista.
The easiest way to build ICE in MinGW is to install MSYS, then run the mingw32-fullbuild.sh script. It will automagically download and build all third-party dependencies and build ICE. The script does not install Python, PyWin32 or run the tests, thought.
Good luck and remember this is NOT supported by ZeroC. Do not bug them with your requests.
My previous patch was missing the install script and the rules file for MingW due to the fact I had forgot to add the -N option when diff'ing the trees. Here comes the proper patch. You do not need to apply both patches but only this one.
There are currently 1 users browsing this thread. (0 members and 1 guests)