Hi,
Maybe somebody has some idea about this, because I'm stumped!
I've been making fair progress in getting A working Sequitur compiled
under Haiku (most things now work), but it's not loading most of the
(newly compiled) Filter add-ons.
Taking a random example -- ArpControllerMap -- the call to load_add_on
results in:
"resolve symbol "__21ArpControllerMapAddOnPCv" returned: -2147478780
Loaded image -2147478780 (ArpControllerMap) (addon 0x36b1280), err=Symbol not
found
"/boot/WORK/Sequitur-master/Sequitur/add-ons/Filters/ArpControllerMap" was not
an image: Symbol not found"
And sure enough if I do:
objdump -t ArpControllerMap|grep ArpControllerMap|grep UND
I get:
00000000 *UND* 00000000 __21ArpControllerMapAddOnPCv
However, as far as I can see, that symbol should exist. The header
for the module has:
.....
class ArpControllerMapAddOn : public AmFilterAddOn
{
public:
ArpControllerMapAddOn(const void* cookie)
: AmFilterAddOn(cookie)
{
}
......
which I'd have thought was an appropriate definition.
All the failing modules have the same form header. There are,
however, half a dozen that do load. They all have headers of
the form:
....
class ArpVelocitySplitterAddOn : public AmFilterAddOn
{
public:
ArpVelocitySplitterAddOn(const void* cookie);
....
with actual code in the cpp file.
What's the catch? why did the first form work fine in BeOS, but
not in Haiku. What's the solution?
Thanks,
-- Pete --