#56 Special verbose linker warnings

open
nobody
None
5
2004-01-19
2004-01-19
Anonymous
No

I would like to request the addition of special,
verbose warning messages printed by the linker, when
certain well-known symbols are not resolved. Here's
two that commonly come up as questions on the user mail
list:

?ASlink-Warning-Undefined Global '_putchar' referenced
by module 'vprintf'
The SDCC library does not provide a putchar() function.
The printf
functions preform all output by calling putchar(). You
must write
a putchar() function in your code, which is specific to
how your
hardware can output characters (serial port, LCD, etc).
Please
refer to the SDCC manual and device/examples directory
for more
information.

?ASlink-Warning-Undefined Global
'__sdcc_external_startup' referenced by module 'test'
This error usually indicates that the SDCC standard
library is not
installed properly. The SDCC library contains a default
_sdcc_external_startup() that simply returns. When
this symbol
is undefined, usually the library files are missing,
corrupted, or
are in a different location. In the latter case, you
can use the -I
command line option to specify the library directory.

Discussion

  • Maarten Brock
    Maarten Brock
    2004-01-20

    Logged In: YES
    user_id=888171

    Hi,

    The warning about a missing putchar function also comes up
    when you only use sprintf. Maybe printf and sprintf
    could/should be moved into seperate modules?

    Maarten