help > RE: Plugin error after including Vaa3D sources
Aug 28, 2012  01:08 PM | Hanchuan Peng
RE: Plugin error after including Vaa3D sources
The API interface of Vaa3D is the v3d_interface.h where the plugin interface has been defined.

While you can actually include any vaa3d files in a plugin code, it is not the best way to do it.

I am not sure about the instantiation error your got, could be some dependency lib has not been detected.

-Hanchuan



Originally posted by Alessandro Bria:
Hi,

I am developing a plugin for Vaa3D and I need to include some sources from the v3d_main/3drenderer folder (in particular, renderer_hit.cpp) into my Qt project file. I do this in the .pro file:

#enabling the opengl module
QT += opengl

#set up Qt to avoid the arthurwidgets.h not found error
QT_PATH = $$dirname(QMAKE_QMAKE)/..
INCLUDEPATH+= $$QT_PATH/demos/shared

#including the Vaa3D sources file that I need
SOURCES += $$V3DMAINPATH/3drenderer/renderer_hit.cpp


It compiles successfully. However at runtime the plugin's instantiation fails:
Searching in ./plugins ...... 

Fail instantiation:  "/home/alex/Projects/Vaa3D/v3d_external/bin/plugins/teramanager/libteramanagerplugin.so" 

This also happens if I do not use the included sources in my code and also when I include sources from other directories, for example from v3d_main/v3d. It seems I cannot include any Vaa3D sources except those ones in the v3d_main/basic_c_fun folder.
I tried to include only the headers where the Vaa3D methods that I use are declared (but not defined), and I got an undefined symbol error at runtime.
I tried also to compile and to run a new example plugin after including some Vaa3D sources only, but I got the fail instantiation error. I deduced that this problem most likely does not depend on my code.

I'm working under Ubuntu 11.10 with Qt 4.7.3 and gcc 4.6.1.

I would thank in advance anybody who could help me.

Alessandro Bria

Threaded View

TitleAuthorDate
Alessandro Bria Aug 25, 2012
RE: Plugin error after including Vaa3D sources
Hanchuan Peng Aug 28, 2012