comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: CALL_EXTERNAL and C++ code
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: CALL_EXTERNAL and C++ code [message #45053 is a reply to message #45045] Tue, 02 August 2005 11:07 Go to previous messageGo to previous message
Mathieu Malaterre is currently offline  Mathieu Malaterre
Messages: 32
Registered: July 2005
Member
Ok and the easy solution is to build you C++ library but then define the
entry point with a C function:

extern "C"
int IDL_STDCALL watershed( int argc, void* argv[] )

Sorry for the noise -again- :)
Mathieu

Mathieu Malaterre wrote:
> Sorry, I forgot to mention the compile lines:
>
> $ c++ -o wtd_lg.o -I/usr/local/rsi/idl_6.1 -c wtd_lg.cpp
> $ c++ -shared -o lib3D_wtd.so wtd_lg.o
> $ c++ --version c++ (GCC) 3.3.5 (Debian
> 1:3.3.5-13)
>
>
> Mathieu
>
> Mathieu Malaterre wrote:
>
>> Hello,
>>
>> I am trying to get an idl application that used to work on win32
>> to work on my linux (debian) box. Unfortunately I am getting:
>>
>> % XMANAGER: Caught unexpected error from client application. Message
>> follows...
>> % CALL_EXTERNAL: Error loading sharable executable.
>> Symbol: watershed, File =
>> /home/mathieu/Projects/FarSight/bin/bin/lib3D_wtd.so
>>
>> /usr/local/rsi/idl_6.1/bin/bin.linux.x86/libidl.so.6.1: undefined
>> symbol: watershed
>> % Execution halted at: WTDSEG 3207
>> /home/mathieu/Projects/FarSight/FarSight.pro
>> % GUI_EVENT 8550
>> /home/mathieu/Projects/FarSight/FarSight.pro
>> % XMANAGER_EVLOOP_STANDARD 478
>> /usr/local/rsi/idl_6.1/lib/xmanager.pro
>> % XMANAGER 708
>> /usr/local/rsi/idl_6.1/lib/xmanager.pro
>> % FARSIGHT 9253
>> /home/mathieu/Projects/FarSight/FarSight.pro
>> % $MAIN$
>>
>>
>> If I checked for the symbol:
>> $ nm /home/mathieu/Projects/FarSight/bin/bin/lib3D_wtd.so | c++filt|
>> grep watershed
>> 0000519c T watershed(int, void**)
>>
>>
>> I am reading in parallel the document: External Development Guide
>> (edg.pdf), but there is no mention of problem *before* calling the
>> function.
>>
>> Does anyone knows what compile flags to use and which compiler to use
>> on linux, and if I can use shared lib ? I could not find much in the
>> newsgroup except:
>>
>> http://groups-beta.google.com/group/comp.lang.idl-pvwave/bro wse_thread/thread/57d81859e3d3a502/191ac3c2f11d2bb8
>>
>>
>> But again this refer to C not C++ which has a completely different
>> name mangling...
>>
>>
>> Thanks for your help,
>> Mathieu
[Message index]
 
Read Message
Read Message
Read Message
Previous Topic: Re: What do *you* have in your IDL_STARTUP file?
Next Topic: How to plot multiple charts and ho to round float to specific precision?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 17:55:56 PDT 2025

Total time taken to generate the page: 0.00409 seconds