C (236/254)

From:Stefan Schulze
Date:15 Apr 00 at 17:45:13
Subject:VBCC-Problems

Hi,

I want to compile a project of mine with VBCC because Storm has got to much
bugs.

After several hours of fighting I managed to compile all .c files but vbcc
didn't want to link them together.

This is a part of the output:

vlink -s -x -dn vlibm68k:startup.o -FT:t_8_0 -lvc -lamiga -o /XFire68k

Warning 19: vlibm68k:startup.o: Global symbol _exit (NEAR) is already defined
in vlibm68k:startup.o (FAR).
Warning 19: vlibm68k:startup.o: Global symbol abort__STANDARD (NEAR) is
already defined in vlibm68k:startup.o (FAR).
Warning 19: vlibm68k:startup.o: Global symbol _SysBase (NEAR) is already
defined in vlibm68k:startup.o (FAR).
Warning 19: vlibm68k:startup.o: Global symbol _exit (NEAR_A6) is already
defined in vlibm68k:startup.o (FAR).
Warning 19: vlibm68k:startup.o: Global symbol abort__STANDARD (NEAR_A6) is
already defined in vlibm68k:startup.o (FAR).
Warning 19: vlibm68k:startup.o: Global symbol _SysBase (NEAR_A6) is already
defined in vlibm68k:startup.o (FAR).
Warning 19: Arbeit:VBCC/Steuerung.o: Global symbol ___inline
(Arbeit:VBCC/Steuerung) is already defined in Arbeit:VBCC/RaumerSubs.o
Warning 19: Arbeit:VBCC/Bullets.o: Global symbol ___inline
(Arbeit:VBCC/Bullets) is already defined in Arbeit:VBCC/RaumerSubs.o
(Arbeit:VBCC/RaumerSubs).
Warning 19: Arbeit:VBCC/Tables.o: Global symbol ___inline (Arbeit:VBCC/Tables)
is already defined in Arbeit:VBCC/RaumerSubs.o (Arbeit:VBCC/RaumerSubs).
Fatal error 8: Cannot open "-lvc": No such file or directory.
Aborting.

------------------------

Why does VBCC complain about doubled defined smybols in the same object-file?
(startup.o, copied from the StormC-package (V3.0) because there was no
startup-code inside the vbcc-archive)

Why are the symbols mentioned above once declared as FAR and once as NEAR_A6
and both of them inside the same object-file?

Why doesn't VBCC know the function specifier __inline?

What means the command line parameter -l? I read something about a "library
specifier" in the docs. Should that -l mean which linker-libs are taken? If
yes, where can I get these linker-libs? (for 68020+ and for WarpOS) And why
aren't they inside the archive when they're needed to compile anything?

I got many warnings during compile about missing semicolons and some other
things directly after some #include-instructions. But the number changed from
time to time depending on the order VBCC compiles my sources. Which
differences must be taken into account from Storm to VBCC? (because I've also
copied all missing include-files from StormC)

Sometimes the linker says something like "global Symbol _Blabla (file.o)
already defined in the_very_same_file.o". Why? And why does the number of
doubled defined symbols change from time to time? Does this also depends on
the order the files are compiled?

If I compile with -O (Optimizing) on one particular file vbccm68k_wos eats all
ram (55MB Fast and 2MB Chip) within half a minute and then exits with "not
enough memory!". But the file is only around 30K big and some files are
bigger then this. If I compile with -O3 (better optimizing) VBCC also eats
all memory and freezes the systme then. Has somebody made similar
experiences?

Sorry if these questions are stupid but I'm not familiar with command line
compilers. I'm used of pressing F9 to compile and start my project. :)

Bye, Stefan.



"The dream has led me - And i will follow into the glowing fire." (Lacrimosa)
Dreamworlds Development - http://www.dreamworlds.de

XFire I/II, YATAG, VoxelRace, Between The Lines

------------------------------------------------------------------------
Avoid the lines and visit avis.com for quick and easy online
reservations. Enjoy a compact car nationwide for only $29 a day!
Click here for more details.
http://click.egroups.com/1/3011/1/_/451227/_/955815566/
------------------------------------------------------------------------