Sorry, I misread you.
The shared_memory executable does not reference any of those undefined symbols. I base this on "nm shared_memory". The symbols are not present, neither in a defined state nor an undefined state.
For example: SPDAT_RECORDS is only used in IsValidSpell, which is not used in shared_memory. I'm not going to look at the other symbols, since they will probably be similar cases. But a grep of the shared_memory source does not turn up a reference, nor is there one in the symbol present in the executable. If the symbol were used (even indirectly) I would expect a symbol table entry.
This code is linking and running under Linux, so there is no underlying problem with undefined symbols. I'm not sure what FreeBSD is doing, but there might be some oddball linkage editor setting.
|