Why would a function not be declared "weak" ?
Mike Harrold
mharrold@cas.org
Tue Oct 2 13:38:00 GMT 2001
Hello,
I use dlopen() to access module libraries, and one of them is failing to load
because one of the functions it requires it can't find. The symbol in the
module is:
U _ZN5specs11RoomSpecial20initialise_room_specERN5world4RoomE
In another, "loaded-at-run-time" library (ie, not a module), the function is
defined as:
00004000 T _ZN5specs11RoomSpecial20initialise_room_specERN5world4RoomE
By using nm, I discovered a number of functions that defined as T rather than
as W. It appears that the function above is the first that was actually being
used, or attempted at being used.
Anyway, the error message I getwhen trying to dlopen() the module is:
E: Oct 2 16:33:39 :: loadfile: Unable to open `/mud/alex/local/gcc-3.0/db/code/class/game/DatabaseModule.so.0.0.1': /mud/alex/local/gcc-3.0/db/code/class/game/DatabaseModule.so.0.0.1: undefined symbol: _ZN5specs11RoomSpecial20initialise_room_specERN5world4RoomE
Any clues as to why this is happening?
Thanks,
/Mike
More information about the Gcc-help
mailing list