[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Libraries
Hi Christian,
> Somebody can tell me wath is the difference between these libraries and the
> .o files ?
If you compile a source file, you get an object file with the suffix
`.o'
You can put several object files together into an archive file with
the command ar. The archive files are sometimes named (object)
libraries. Under Un*x the archives have the suffix `.a' and the
versions of gcc on the Atari used `.olb' The new gcc's on the Atari
are so much like Un*x, that they also use `.a'
crt0.o is the startup file
bcrt0.o does the same, but is compiled for -mbaserel
gcrt0.o - " - , but is compiled for profiling, IIRC
bgcrt0.o - " - , -mbaserel + profiling
Have a look into the makefiles, they have sparse commentars.
gnu.olb is the gnu standard library
gnu16.olb does the same, but is compiled with 16-bit integers -mshort
gnu020.olb - " - , but is compiled for 68020 -m68020
The rules are:
starting with `b' -> baserel
name
a `16' -> short integers
a `020' -> compiled for MC68020 processors
The file `libm0201.a' is the math library (libm), probably compiled
for the `020' and uses short integers `16' but the name is truncated,
due to the fact that it resides on a TOS file system.
IIRC, the iio-library is a library with integer-only printf's.
> bcrt0.o blibc.a crt0.o iio16.olb libm020.a
> bgcrt0.o blibc16.a gcrt0.o ksocket1.olb libm0201.a
> bgnu.olb blibm.a gnu.ol libc.a libm16.a
> bgnu020.olb blibm16.a gnu.olb libc16.a lingem.a
> bgnu16.olb blibm20.a gnu020.olb libgcc.a lingem16.a
> bgnu1602.olb blibm201.a gnu16.olb libgnu.a socket.olb
> biio.olb bsocket.olb gnu16020.olb libm.a socket16.olb
> biio16.olb bsocket1.olb iio.a
>
> Bye,
> *Christian*
Bye,
Stephan Groß
1gross@informatik.uni-hamburg.de