gcc-3.0.1 binary distributions for hpux-11.0 (compiled by Markus Werle) The Hen and the Eggs (Egcs?): ----------------------------- When I tried to bootstrap a 64 bit variant of gcc for hpux-11.0 I tried until I knew all configure options and build possibilities by heart. I had no success at all, because the 64 bit version of gcc is "for experts only", which means that Johnny Normaluser is left alone in the dark. I guess there _is_ indeed a way to bootstrap a 64 bit version of gcc on a plain vanilla hpux system, but I never found out how You can achieve it. And the experts do not feel urged to share their knowledge in this point, so leave them alone, they are very busy at the moment (so far they were busy all the time I use gcc). I posted a lot of help requests to the mailing lists, but nobody else seemed to have a problem with it, so in the end I concluded that I was stupid. Famous authors have stated that the world is full of idiots. I feel comfortable not be alone in this world (see e.g. www.dilbert.com for details on that issue). During my Phd-research on the never-ending story of gcc-bootstraps I found out the following everlasting truth: "With a 64 bit gcc it is possible to build a 64 bit gcc." This kind of logic has some beauty and wisdom in it. It is better than a zen buddhism koan. Read it aloud as often as possible and You will find peace of mind pretty fast (or was it the other way round? I don't remember. We may enter a kind of recursive approach here). I decided this was another re-incarnation of the hen-and-egg problem and posted requests to the mailing list, if perhaps someone could please, please be so nice just to stop meditation for a while, tar-gzip his/her stuff and let me download it somewhere. Please, please, pl.... No reply, and gcc developers are just too busy while implementing new optimization algos, so no chance to get it from there. I'd like to take the chance to say a big THANK YOU at this point for all the help I obtained. It is always nice to obtain for-me-it-works-fine-messages from everywhere. I crawl to Your feet as acknowledgement of my gratitude. Finally hewlett packard offered a 64 bit precompiled gcc-3.0 on http://devresource.hp.com (hp gets it right in the end, I urge You to visit that site). Though gcc-3.0 is a little bit buggy, it served well as a starting point. Now since I have a hen which may lay a lot of eggs I just have to contribute to the free software community three eggs which may be used to overcome the paralyse gcc developers get seized with when being exposed to stupid user help requests. It may also overcome the incredible cling of hp to their own buggy linker, while gnu-ld in some cases may do a better job with 64 bit stuff (but I am not sure who to blame for that). This directory contains the C/C++/f77 part of gcc-3.0.1 for hpux-11.0 in three different versions. I hardwired the path to binutils and included binutils under the same prefix in order to reduce confusion caused by wrong PATH variable settings. All three may be installed at the same time. If You dislike the approach, well ... build Your own version starting with mine! All these are built using at least a 6-stage bootstrap: they were built with themself (resolving the koan from above). The builds were made on a J7000 which was - if I remember well - patched with the March 2001 cumulative patch bundle. To prevent another hen-and-egg-problem You also find a precompiled bzip in bzip2-1.0.1.tar in this directory in the hope that it may be useful. And if tar is missing on Your system, then You have a _BIG_ problem. disclaimer: NO WARRANTY BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. FILES: * gcc-3.0.1 with binutils-2.11.2 configured for --host=hppa64-hp-hpux11.00 (which is the illogical name for the 64 bit version) This version use[d/s] GNU-ld and unpacks into /opt/precompiled/gcc-3.0.1-64 !!! recommended version !!! ---- filename: gcc-3.0.1-bin-hppa64-hp-hpux11.00.tar.bz2 * gcc-3.0.1 with binutils-2.11.2 configured for --host=hppa64-hp-hpux11.00 A 64 bit version which use[d/s] /usr/ccs/bin/ld and unpacks into /opt/precompiled/gcc-3.0.1-64-hpld (Warning: bootstrap has linker warnings like "Warning: Some debug info sections were missing. PXDB aborted.") ---- filename: gcc-3.0.1-bin-hppa64-hp-hpux11.00-hpld.tar.bz2 Both 64 versions were built using --disable-shared, because otherwise the build failed. Developers stay quiet until today, about whether one should - at least in theory - be able to achieve a 64 bit version with shared libs. Feel free to bomb questions/solutions to gcc-help@gcc.gnu.org: nobody listens. Just for completeness: a 32 bit version: * gcc-3.0.1 with binutils-2.11.2 configured for --host=hppa2.0w-hp-hpux11.00 WARNING: This is a _32_ bit version. Only hp uses "2.0w" to say "64 bit". GNU developers permanently ignore hp's naming convention in order to confuse new users or those familiar with hp's development tools. Thanks alot to those responsable! This version has to use hp's linker /usr/ccs/bin/ld, since gnu-ld is not available as 32 bit version on this platform. The som format is somewhat ... well, eh ... ? Check docs for -mpa-risc-2-0 command-line option. This package unpacks into /opt/precompiled/gcc-3.0.1-32 ---- filename: gcc-3.0.1-bin-hppa2.0w-hp-hpux11.00.tar.bz2 BUGS: ----- gcc's C++ compiler is buggy on hpux-11.0. If Your compiler decides to crash, or the linker decides not to find the symbols nm shows You, or if Your executables decide not to start or are going berserk, it is time to upgrade to another version of gcc containing other new and old bugs. If You are in need of a stable C++ compiler better use Comeau's C++ compiler or Intels KCC. Those companies have up-to-date products and may be sued for not providing working software. The FSF is not capable of providing a reliable free ANSI C++ compiler at the moment. Please wait another year or so ("or so" means everything from tomorrow up to forever). The C++ part of gcc-3.0.1 is pre-alpha software shipped with an otherwise stable product. Please do not extrapolate from the quality of the C++ compiler to the quality of gcc or free software in general. Acknowledgements: ----------------- Thanks to the Sunsite Admin User at the department of computer science, Aachen University of Technology, who initially provided the ftp account for uploading this. Thanks to gcc/binutils developers for developing this package. No thanks to gcc developers for ignoring my offer to upload the binaries to gcc.gnu.org. My offer remains. Thanks to hewlett packard for providing my first hen. Aachen, September 10 2001, Markus Werle mailto:markus@lufmech.rwth-aachen.de ----- P.S.: Despite my comments on buddhism, koans, incarnation and being aware of its fascinating nature, I do not support the "recycling theory" or ideas like becoming an undefined pointer. I believe the only way to god is Jesus Christ. Circumventing this approach will in any case take more than one man's life, and that is a little too much, especially when the price is paid already. Kind of off-topic, but it had to be said, just for clarity. P.P.S.: If You feel greatful for this binary package, please do not forget that most of the work was done by the developers of gcc/binutils. Send "Thank You" and donations to the free software foundation, not to me. P.P.P.S (for US citizens only): I was thinking about restricting the download of these packages to those who signed and sent a "Free Dmitry Sklyarov!" letter (see http://www.freesklyarov.org/ for details), but maybe it is better to just kindly ask You to contribute to his and our freedom. It is up to You now! Sign it, please. Next time You vote, vote against software patents. P[4].S: turn on option -pedantic: comments/improvements/suggestions/typo-or-grammar-corrections welcome.