On 2007-10-30 04:31:46 -0500, Jonas Maebe
<Jonas.Maebe@[EMAIL PROTECTED]
> said:
> In article <2007102920092116807-isaacraway@[EMAIL PROTECTED]
>,
> Isaac Raway <isaac.raway@[EMAIL PROTECTED]
> wrote:
>
>> On 2007-10-29 05:33:37 -0500, Marco van de Voort <marcov@[EMAIL PROTECTED]
>
said:
>>
>>> function xxx:yy; cdecl; ex****t; [public, alias : '_substr'];
>>>
>>> And similarly for the im****t:
>>>
>>> function xxx:yy; cdecl; external 'some.dylib' name '_substr';
>>
>> The error is now
>>
>> Compiling ./testsubs.pas
>> Assembling testsubs
>> Linking testsubs
>> /usr/bin/ld: Undefined symbols:
>> __substr
>>
>> It appears that the entire library is not visible to the compiler, no
>> matter the symbol names.
>
> No, but the im****t/ex****t name mangling is asymmetrical unfortunately.
> The correct way is:
>
> ex****t:
> function xxx:yy; cdecl; ex****t; [public, alias : '_substr'];
>
> im****t:
> function xxx:yy; cdecl; external 'some.dylib' name 'substr';
>
>
> Jonas
DIdn't work. Error complains of missing _substr


|