[comp.os.minix] How do I build libraries with gcc-ar ?

cyliax@orchestra.ecn.purdue.edu (Ingo Cyliax) (10/03/90)

Has anyone successfully build libraries with the Gnu archiver "gcc-ar" 
under Minix-ST ? Mine blows up when I try the 'standard' ways:

		gcc-ar	r libc.a objects...
		gcc-ar	c libc.a objects...
		gcc-ar	rc libc.a objects...

It says something about illegal arguments.  Any ideas ?

Thanks, -ingo
--
/*                Ingo Cyliax    ECN, Electrical Engineering Bldg.         *
 *      cyliax@ecn.purdue.edu    Purdue University, W. Lafayette,IN 47907  *
 *          ing@cc.purdue.edu    Work: (317) 494-9523                      *
 *         cyliax@pur-ee.UUCP    Home: (317) 474-0031                      */

adrie@philica.ica.philips.nl (Adrie Koolen) (10/04/90)

In article <1990Oct3.115632.9757@ecn.purdue.edu> cyliax@orchestra.ecn.purdue.edu (Ingo Cyliax) writes:
>Has anyone successfully build libraries with the Gnu archiver "gcc-ar" 
>under Minix-ST ? Mine blows up when I try the 'standard' ways:
>
>		gcc-ar	r libc.a objects...

For the Sparc version of Minix, I use the FSF GNU C-compiler. As its loader
directly reads libc.a, it knows the ar format and __.SYMDEF. The GNU ar file
format is somewhat different from the Minix ar file format (merely the ASCII
type of header), so I also use GNU ar. Some changes were necessary. To use
the `ranlib' feature, ar must be able to read the symbol table of object
files, so it needs a.out.h. I provided it with a Sun compatible a.out.h,
because the `.o' files of Minix-Sparc are in GNU (=SunOS) format.
Furthermore, I defined USG. I compiled it with the GNU C-compiler under
Minix on a SparcStation 1 and it works!

Adrie Koolen (adrie@ica.philips.nl)
Philips Innovation Centre Aachen

UPSYF173%DBIUNI11.BITNET@cunyvm.cuny.edu (Wolfgang Thiel) (10/05/90)

     gcc-ar rs libc.a file ....
The s flag means: create SYMDEF header. But: the 1.36 gcc-ar didn't work
together with 1.5.10 ST. There are incompatible open() FLAGS (at least).
So you have to recompile gcc-ar with the new library first before you can
create the library.. .Ha H I recompiled open f,pen ,..,ansferred the
objects to TOS and replaced the gcc-minix-library there. Then I recom-
piled minix gcc-ar with this updated (half-functioning) library, made
the new libc.a's andcompiled gcc-ar again. BTW: gcc-ar.c needs a com-
piler with 32-Bit int's. So don't even try it with ACK.
                                                   Wolfgang