home *** CD-ROM | disk | FTP | other *** search
- gcc-ns3-drivers.2.7.2.3.1.README
- Dec 12, 1997
-
- For now, the READMEs for the following packages are the same, since
- they are so interdependant.
-
- md5sum:
- ffaee65a833990bf9efff6430d7f06d2 gcc.2.7.2.3.2.I.b.tar.gz (~7.1MB)
- 3429dc2251490aa9b184d4e62f44df31 gcc-ns3-drivers.2.7.2.3.1.I.b.tar.gz (~10.9MB)
-
- These archives contains the following pre-built binaries:
- gcc-2.7.2.3
- g77-0.5.21
- libg++-2.7.2
-
- built on and for the i386-next-nextstep4 platform. includes drivers
- for
- i386-next-nextstep4
- and (if also installing the gcc-ns3-drivers package)
- i386-next-nextstep3 (a cross-compiler)
- m68k-next-nextstep3 (a cross-compiler)
- targets.
-
-
- NOTES
-
- Regarding the versioning of this package:
- I tacked on my port attempt numbers to the end of the gcc versions, ie,
- This represents my second (.2) attempt at porting gcc v2.7.2.3 to OpenStep.
- This is also my first (.1) attempt at a nextstep3 gcc v2.7.2.3 cross compiler.
- I hope this doesn't confuse people.
- (-;
-
- These packages have been built for and tested on OpenStep for Mach 4.2,
- but may also work on others version of OpenStep for Mach 4.x.
- This build will does NOT work on NEXTSTEP 3.x and earlier.
- I used (for the most part) patches to gcc provided from
- ftp://nice.ethz.ch/users/chris/OS4/
- to get the newest gcc working form OpenStep for Mach 4.x. Patches were
- available for i386 only, hence no m68k(-next-nextstep4) support... yet.
-
- I was unable to build a dynamic (ala shared) library version of libg++,
- so if you use g++, at link time, you may get a bunch of linker warnings
- complaining about non-moveable code in libg++ and libstdc++. Do not
- worry about this too much... it still works (??).
-
-
- INSTALLATION
-
- The tar.gz archives contains the installer packages gcc.pkg and
- gcc-ns3-drivers.pkg. Use /NextAdmin/Installer.app to install to
- /usr/local and you're done. If you want to build m68k binaries, make sure
- to specify "Install software for both NeXT and Intel" (in Installer.app)
- when installing the ns3-drivers package.
-
- NOTE: you STILL need the nexstep developer packages (tested for OpenStep
- for Mach 4.2 only... earlier/other versions may or may not work) installed
- in order to use this, as it uses NeXT's supplied C libraries. Also, in
- order to use the m68k-next-* cross-compiler, you need the DeveloperLibs
- installed for m68k (in addition to i386).
-
-
- NOTE: To use the libg++ (C++) library, you need to rename or remove
- the file /usr/lib/libg++.dylib, as it will conflict with this installed
- (native) version (verified for OS 4.2). I find it odd that NeXT
- included a libg++ in the developer, but no headers or information on
- what version this libg++ represents.
-
-
- CROSS-COMPILING
-
- It's a little tricky to use the nextstep3 cross-compiler,
- you need to postpend -ns3 to the name of the compiler,
- AND use gcc's -b flag to specify architecture (if -b
- is omited the compiler assumes the native (i386) architecture).
- To produce m68k binaries, for example, envoke gcc as:
- gcc-ns3 -bm68k-next-nextstep3 foo.c
-
- WIERD SIDE NOTE (I haven't figured this one out yet)
- The following does NOT work (even though it SHOULD):
- gcc -bm68k-next-nextstep3 foo.c
- This runs the ns4 native front end, but specifies the use of the ns3
- driver. It fails because (for some reason), the ns4 compiler flags
- are passed to the compiler and linker (e.g. -dynamic), and produces
- bad binaries.
-
- FAT binary NOTE
- gcc cannot (easily) create FAT binaries, at least not in the same sense
- of NeXT's cc, ie,
- cc -arch m68k -arch i386 foo.c
- With gcc, you need to create to separate binaries, and then use
- lipo.
-
- Also, the cross-compilers don't look in /usr/local/lib for linking
- libraries, by default, like the native compiler does. If you need to
- link against items in /usr/local/lib, you'll need to pass the option
- -L/usr/local/lib (ie, by adding to CFLAGS or LDFLAGS) to the linker (ld).
-
-
- CREDITS
-
- GNU Software, gcc source
- http://www.gnu.ai.mit.edu/
-
- gcc patches for OpenStep 4.x
- ftp://nice.ethz.ch/users/chris/OS4/
-
- Packager
- Rex Dieter <rdieter@math.unl.edu>
- Computer System Manager
- Universtity of Nebraska-Lincoln
- Department of Mathematics and Statistics
- http://www.math.unl.edu/~rdieter/
-
-