LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   symbol lookup error: undefined symbol , upon calling C++ executable from matlab (https://www.linuxquestions.org/questions/linux-newbie-8/symbol-lookup-error-undefined-symbol-upon-calling-c-executable-from-matlab-931727/)

SwagatikaPanda 02-28-2012 06:31 AM

symbol lookup error: undefined symbol , upon calling C++ executable from matlab
 
Although I faced this problem while using Matlab, I feel this is more an issue with linux:

Upon giving the following command from Matlab command prompt, I get this error:

>>[status, result] = system('./testGEA outDataTest1.txt')

status =

127

result =

./testGEA: symbol lookup error: /home/swagatika/softwares/qvision.0.8.0/lib/libqvision.so.0: undefined symbol: _ZN12QApplication10commitDataER15QSessionManager

testGEA is an executable file compiled using Qvision library (link : http://qvision.sourceforge.net/testGEA_8cpp.html)

I can successfully execute the command from Linux(ubuntu 10.10) terminal, but calling from Matlab fails.

I searched on internet and got to know that I am supposed to apply some commands and here is it:
ldd gives the following:

~/softwares/qvision.0.8.0/lib$ ldd libqvision.so.0
linux-gate.so.1 => (0x00363000)
libgsl.so.0 => /usr/lib/libgsl.so.0 (0x007b6000)
libgslcblas.so.0 => /usr/lib/libgslcblas.so.0 (0x001d0000)
libQtXml.so.4 => /usr/lib/libQtXml.so.4 (0x005cf000)
libQtOpenGL.so.4 => /usr/lib/libQtOpenGL.so.4 (0x00a0a000)
libQtGui.so.4 => /usr/lib/libQtGui.so.4 (0x00fa4000)
libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0x061b1000)
libGLU.so.1 => /usr/lib/libGLU.so.1 (0x00110000)
libGL.so.1 => /usr/lib/mesa/libGL.so.1 (0x00203000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00180000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00c38000)
libm.so.6 => /lib/libm.so.6 (0x0019a000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00256000)
libc.so.6 => /lib/libc.so.6 (0x00612000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00272000)
libdl.so.2 => /lib/libdl.so.2 (0x001c0000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00af6000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00364000)
libQtDBus.so.4 => /usr/lib/libQtDBus.so.4 (0x004c0000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x002e9000)
libaudio.so.2 => /usr/lib/libaudio.so.2 (0x00319000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00b00000)
libpng12.so.0 => /lib/libpng12.so.0 (0x00330000)
libz.so.1 => /lib/libz.so.1 (0x00481000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x0053b000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x001c4000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x0057e000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00597000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00355000)
librt.so.1 => /lib/librt.so.1 (0x0035a000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x00496000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x0049a000)
libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x005a7000)
libdrm.so.2 => /lib/libdrm.so.2 (0x005ad000)
/lib/ld-linux.so.2 (0x004a2000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0076f000)
libexpat.so.1 => /lib/libexpat.so.1 (0x00789000)
libXt.so.6 => /usr/lib/libXt.so.6 (0x009a3000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x005b7000)
libpcre.so.3 => /lib/libpcre.so.3 (0x00bcf000)
libuuid.so.1 => /lib/libuuid.so.1 (0x005bb000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x005c0000)

I also used nm which gives U which means that the symbol is undefined.

$ nm -D /home/swagatika/softwares/qvision.0.8.0/lib/libqvision.so.0 | grep _ZN12QApplication10commitDataER15QSessionManager
U _ZN12QApplication10commitDataER15QSessionManager

I do not have much knowledge about the linux commands, so please give suggestions with details if possible...


Thanks.


All times are GMT -5. The time now is 03:20 PM.