This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

unresolved _ctype_ reference when invoking isalpha(char) from <ctype.h>


I've built a fairly recent version of eCos from the anonymous CVS
repository for the Atmel AT91EB40A target (eb40a).  I'm using the
Linux arm-elf toolchain from eCosCentric.  I'm working from a
completely default configuration:

  ecosconfig new eb40a
  ecosconfig tree
  make

When I try to link a simple program that invokes a function from
<ctype.h> it fails with an unresolved reference to _ctype_.

Here's the simple program:
  
  #include <ctype.h>

  int main(int argc, char ** argv) {
    char c = 'b';
    return isalpha(c);
  }

The only reference I can find to _ctype_ is from
"cyg/libc/i18n/newlibctype.h".  I find it strange that this is
referenced at all considering these settings from ecos.ecc:

  CYGPKG_LIBC_I18N_NEWLIB_CTYPE is set to 0
  CYGBLD_ISO_CTYPE_HEADER is using inferred value <cyg/libc/i18n/ctype.inl>

So, <ctype.h> should be giving me the inline version of isalpha(char)
which does not refer to the _ctype_ table.  No?


Dan

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]