|
|
IntroductionOverviewThis page is a temporary holding spot for my build of the mingw32 target of a CVS snapshot of certain GCC/GCJ branches. Here, you can download a Win32 (MingW) build of GCC, which can compile C, C++ and Java code into native Windows executables! Before I type any further, I want to give due credit to people like Adam Megacz, Mumit Khan, and everyone behind GCJ, GCC and MingW. In addition to submitting numerous patches and observations in order to get the latest GCJ built and working on MingW, Ranjit Mathew went above and beyond the call of duty in guiding me through this effort. In the short time that I've been involved in this, I've learned an incredible amount thanks to Ranjit and other helpful souls involved with GCC and GCJ. Please send feedback! Let me know if there is a better place to put this snapshot, if I have made factual errors or could have done things better, and any other comments you might have. Quick Links
GCC/GCJ 3.4The BundleHere is the bundle: gcc34-20040607.tar.bz2
(45 819 475 bytes) It includes:
SwingWT is a Swing and partial AWT implementation which uses SWT under the covers. It allows gcj to compile AWT and Swing applications. "How
do I unzip a .tar.bz2 archive?" Integrated SWT and SwingWTThis build allows for integrated SWT and SwingWT (see the links above) as two of the four possible build configurations (see below). With integrated SWT and SwingWT, the appropriate classes have been integrated into the libgcj jar file and library so you don't need to add swt.jar to the classpath or link against libswt.a. The SWT build used is v3054; the SwingWT build used is v0.83. To integrate SwingWT, I first surgically removed the GNU AWT and Swing sources from the libgcj build (see noawt.diff in the patch list below). I then modified the SwingWT sources, changing packages swingwt.* and swingwtx.* to java.* and javax.*. There are post-libgcj build steps which fold the SWT and SwingWT classes and objects into the libgcj libraries and jar. Important Note: none of this is intended to minimize the importance of the ongoing GNU libgcj and CLASSPATH work to implement Swing and AWT. The GNU libgcj folks are doing an amazing job and are making amazing progress. I even attempted to start coding up the Win32 AWT peers - you can get my half-baked sources here - but have no idea if I'll ever finish. Someone else is welcome to carry this forward. Here are some screenshots of Swing and AWT applications running on Win32: EclipseLauncher (Swing) SaveThatCalendar (AWT) Nim (AWT) Build ConfigurationsThere are four build configurations:
To switch configurations, ensure that gcj is in your system path and type: gcj-lib orig | origdll | gui | guidll If you dynamically link executables and redistribute them, please remember that the GNU Public License requires you to make the source available for libgcj.dll in the same manner that you distribute your binaries. See COPYING in thisiscool-gcc/gcc-3.4 for full details. Depending on whether you use, origdll or guidll, you'll need to rename either of libgcj.dll.origdll or libgcj.dll.guidll to libgcj.dll and put this somewhere in your system path. These are found in thisiscool-gcc/gcc-3.4/i686-pc-mingw32/lib. For GUI builds, you'll also need swt-win32-3054.dll in your system path. (Yes, I know that thisiscool-gcc/gcc-3.4/i686-pc-mingw32/lib is a lousy place to put these.) GUI SamplesThe samples are in the examples directory. They are all built by the top-level makefile. The GUI samples are:
Uncommitted PatchesThe build contains the following patches discussed in the java and java-patches mailing lists. Be aware that these have not yet been approved and some of them may never be accepted:
Getting StartedTo get started,
The bundle includes example applications. See the ReadMe files in thisiscool-gcc and thisiscool-gcc/examples for details. Questions, Consulting, Custom BuildsSee this section. Developer DistributionNote: these sources includes the above patches. This is source code only, not the gcc compiler itself. To conserve both your bandwidth and mine, only download this if you are sure you need it. If you're not sure whether you need this, you probably don't.
GCC/GCJ 4.02The BundleHere is the bundle: gcc40-20051104.tar.bz2
(63900369 bytes) Build notes: http://gcc.gnu.org/ml/java/2005-11/msg00023.html It includes:
Note: The DLL builds don't allow loading resources from the classpath (the application crashes on startup with an access violation). I haven't looked into this. Dynamic builds are not supported in this release. Ignore any information in this section about dynamic builds. Uncommitted PatchesThe build contains the following patches discussed in the java and java-patches mailing lists. Be aware that these have not yet been approved and some of them may never be accepted:
Getting StartedTo get started,
The bundle includes example applications. See the ReadMe files in thisiscool-gcc and thisiscool-gcc/examples for details. Questions, Consulting, Custom BuildsSee this section. Developer DistributionNote: these sources include the above patches. This is source code only, not the gcc compiler itself. To conserve both your bandwidth and mine, please only download this if you are sure you need it. If you're not sure whether you need this, you probably don't.
GCC/GCJ 4.2The BundleHere is the bundle: gcc42-20061116.tar.bz2
(130056098 bytes) Build notes: http://gcc.gnu.org/ml/java/2006-11/msg00044.html It includes:
Note: DLL (shared) builds are not supported in this release. Also, I haven't integrated SWT and SwingWT as I have in previous releases, though a gcj-built SWT (3218) and SWT samples are included in this bundle. Uncommitted PatchesThe build contains the following patches discussed in the java and java-patches mailing lists. Be aware that these have not yet been approved and some of them may never be accepted: No uncommitted patches! Woo hoo! Getting StartedTo get started,
The bundle includes example applications. See the ReadMe files in thisiscool-gcc and thisiscool-gcc/examples for details. Questions, Consulting, Custom BuildsSee this section. Developer DistributionNote: these sources include the above patches. This is source code only, not the gcc compiler itself. To conserve both your bandwidth and mine, please only download this if you are sure you need it. If you're not sure whether you need this, you probably don't.
GCC/GCJ 4.3The BundleHere is the bundle: gcc43-20061204.tar.bz2
(135920173 bytes) Build notes: http://gcc.gnu.org/ml/java/2006-12/msg00078.html It includes:
Note: DLL (shared) builds are not supported in this release. Also, I haven't integrated SWT and SwingWT as I have in previous releases, though a gcj-built SWT (3218) and SWT samples are included in this bundle. Uncommitted PatchesThe build contains the following patches discussed in the java and java-patches mailing lists. Be aware that these have not yet been approved and some of them may never be accepted: No uncommitted patches! Woo hoo! Getting StartedTo get started,
The bundle includes example applications. See the ReadMe files in thisiscool-gcc and thisiscool-gcc/examples for details. Questions, Consulting, Custom BuildsSee this section. Developer DistributionNote: these sources include the above patches. This is source code only, not the gcc compiler itself. To conserve both your bandwidth and mine, please only download this if you are sure you need it. If you're not sure whether you need this, you probably don't.
GCC/GCJ 4.3 (gcj-eclipse-merge-branch)The BundleJava 5 support with Eclipse's ecj compiler integrated. Cool!
Here is the bundle: gcc43ecj-20061207.tar.bz2
(125889949 bytes) Build notes: http://gcc.gnu.org/ml/java/2006-12/msg00127.html It includes:
Note: DLL (shared) builds are not supported in this release. Also, I haven't integrated SWT and SwingWT as I have in previous releases, though a gcj-built SWT (3218) and SWT samples are included in this bundle. Uncommitted PatchesThe build contains the following patches discussed in the java and java-patches mailing lists. Be aware that these have not yet been approved and some of them may never be accepted:
Getting StartedTo get started,
The bundle includes example applications. See the ReadMe files in thisiscool-gcc and thisiscool-gcc/examples for details. Questions, Consulting, Custom BuildsSee this section. Developer DistributionNote: these sources include the above patches. This is source code only, not the gcc compiler itself. To conserve both your bandwidth and mine, please only download this if you are sure you need it. If you're not sure whether you need this, you probably don't.
Questions, Consulting, Custom BuildsDue to my busy schedule, it is unlikely that I can answer direct emails pertaining to the usage of MinGW gcc and gcj. I am a software developer and consultant, though, and would be happy to help you if you purchase hours of my consulting time. Contact me at gnustuff at thisiscool.com for rates and further details. See my résumé (CV) for further details about me and the quality of my work. I am committed to maintaining and updating this build and providing it for free download for as long as my schedule permits. I promise to never charge money for the download of this build. I am also interested in hearing about bugs in this build. These should first be reported to the gcj mailing list, as discussed shortly. I can also do custom builds and add functionality as part of my consulting services. I've done this for a client who has released a commercial product using MinGW gcj, with great results. Contact me at the email address above for further details. You can also try to ask gcj-related questions on the gcj mailing list: http://gcc.gnu.org/ml/java. See this page for signup information. The people there are very friendly and helpful. Keep in mind, though, that they probably won't be able to answer questions that are too Windows-specific or specific to my build. Licenses
If You Enjoy This......would you consider visiting one or more of the following links?:
Copyright © 1999-2006 by Mohan Embar, Inc. All Rights
Reserved. |