Hi,
I hava an application, where I mix C and C++ code. ( To be more clear, I have a C-kernel, and a C++-lib added to it)
When I build it, I get some linker errors like:
[elxr] (error) symbol isalnum multiply defined in:
[elxr] (error) symbol isalpha multiply defined in:
[elxr] (error) symbol isblank multiply defined in:
[elxr] (error) symbol iscntrl multiply defined in:
[elxr] (error) symbol isdigit multiply defined in:
[elxr] (error) symbol isgraph multiply defined in:
[elxr] (error) symbol islower multiply defined in:
[elxr] (error) symbol isprint multiply defined in:
[elxr] (error) symbol ispunct multiply defined in:
[elxr] (error) symbol isspace multiply defined in:
[elxr] (error) symbol isupper multiply defined in:
[elxr] (error) symbol isxdigit multiply defined in:
[elxr] (error) symbol tolower multiply defined in:
[elxr] (error) symbol toupper multiply defined in:
[elxr] (error) symbol isascii multiply defined in:
[elxr] (error) symbol toascii multiply defined in:
[elxr] (error) symbol isalnum multiply defined in:
[elxr] (error) symbol isalpha multiply defined in:
[elxr] (error) symbol isblank multiply defined in:
[elxr] (error) symbol iscntrl multiply defined in:
[elxr] (error) symbol isdigit multiply defined in:
[elxr] (error) symbol isgraph multiply defined in:
[elxr] (error) symbol islower multiply defined in:
[elxr] (error) symbol isprint multiply defined in:
[elxr] (error) symbol ispunct multiply defined in:
[elxr] (error) symbol isspac multiply defined in:
[elxr] (error) symbol isupper multiply defined in:
[elxr] (error) symbol isxdigit multiply defined in:
[elxr] (error) symbol tolower multiply defined in:
[elxr] (error) symbol toupper multiply defined in:
[elxr] (error) symbol isascii multiply defined in:
[elxr] (error) symbol toascii multiply defined in:
objs\kernel\syslog.o
objs\kernel\cfdp_server.o
[elxr] (error) symbol isalnum multiply defined in:
[elxr] (error) symbol isalpha multiply defined in:
[elxr] (error) symbol isblank multiply defined in:
[elxr] (error) symbol iscntrl multiply defined in:
[elxr] (error) symbol isdigit multiply defined in:
objs\kernel\syslog.o
objs\kernel\syslog_server.o
[elxr] (error) symbol isgraph multiply defined in:
[elxr] (error) symbol islower multiply defined in:
[elxr] (error) symbol isprint multiply defined in:
[elxr] (error) symbol ispunct multiply defined in:
[elxr] (error) symbol isspace multiply defined in:
[elxr] (error) symbol isupper multiply defined in:
[elxr] (error) symbol isxdigit multiply defined in:
[elxr] (error) symbol tolower multiply defined in:
[elxr] (error) symbol toupper multiply defined in:
[elxr] (error) symbol isascii multiply defined in:
[elxr] (error) symbol toascii multiply defined in:
objs\kernel\syslog.o
objs\kernel\syslog_server.o
Those errors have something to do with ctype, right ?
How can I overcome these errors ?
The short answer is that function overloading is not possible in C, this is because of the way that it exports function names. Which C++ lib are you linking to? Maybe we can help you find an alternative.