[ECOS] CYGBLD_ATTRIB_NORET error

Bart Veer bartv@ecoscentric.com
Wed Dec 11 17:05:00 GMT 2002


>>>>> "Gordon" == Schumacher, Gordon <gordon_schumacher@maxtor.com> writes:

    Gordon> I've run into a compile-time error while trying to build
    Gordon> my current configuration. I've started with the RedBoot
    Gordon> template, removed DNS support, and added ISO C strings,
    Gordon> internationalization, startup/termination, I/O, and
    Gordon> general utility functions; and added the I/O subsystem,
    Gordon> serial drivers, common error code support, and the kernel
    Gordon> (as required by the I/O subsystem).

    Gordon> When I try and build this, I get the following:

    Gordon> /ecos-j/FIT4fw/GPMM-RB_install/include/stdlib.h: In function `void abort()':
    Gordon> /ecos-j/FIT4fw/GPMM-RB_install/include/stdlib.h:261: parse error before `;'
    Gordon> /ecos-j/FIT4fw/GPMM-RB_install/include/stdlib.h:261: ANSI C++ forbids
    Gordon> declaration `CYGBLD_ATTRIB_NORET' with no type
    Gordon> /ecos-j/FIT4fw/GPMM-RB_install/include/stdlib.h:261: confused by earlier
    Gordon> errors, bailing out

    Gordon> Have I failed to add something required? I'd try this with
    Gordon> a standard template, but there doesn't appear to be one
    Gordon> that includes both the ISO stuff and RedBoot.

You don't say which file is being compiled to give this error, nor
your target hardware, so I cannot easily reproduce the problem.

However, it looks like isoinfra/current/include/stdlib.h uses the
macro CYGBLD_ATTRIB_NORET, but does not #include
<cyg/infra/cyg_type.h> to provide that macro. In most eCos sources
the infrastructure header gets #include'd directly or indirectly early
on, so this kind of problem would be masked. You seem to have found an
exception.

I suspect that the correct fix is simply to add the missing #include
to the stdlib.h header, so please give that a try and report.
Otherwise more information will be needed.

Bart

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss



More information about the Ecos-discuss mailing list