* Jerry Pendergraft
| Now to check the need..
| jerry@n3bsw060$ nm -pg aecvsserver/server/password.o | grep crypt
| 0000000000 U __1cFcrypt6Fpkc1_pc_
|
| Does show a mangled name and
| jerry@n3bsw060$ echo '__1cFcrypt6Fpkc1_pc_' | c++filt
| char*crypt(const char*,const char*)
|
| So this is another case of C++ mangled names vs c libraries. I will
| try some more extern C {} stuff to see if I can fix that. Then the
| correct headers (or config.messy.h stuff) might fix it.
Sounds like the header files in question are not prepared for C++,
i.e. they miss the usual
#ifdef __cplusplus
extern "C" {
#endif
...
#ifdef __cplusplus
}
#endif
I have seen this on SGI in the sys/uuid.h header, too.
As an aside, HP in HP-10ff also has this nifty bit in sys/scsi.h:
** Field operator was changed to operatr in structure
** element_status to avoid a C++ reserved keyword
** conflict for customers doing development in C++.
*/
struct element_status {
--<snip-snip>--
unsigned int operatr:1; /* medium positioned by operator */
Just imagine, customers doing development in C++! Do you believe it?!?
| And anything C++ compiled with g++ is just not gonna work with Sun CC.
I'd say this is true for any pair of C++ compilers on the same
platform.
R'
|