Bonjour amis developpezs...
j'ai un petit souci avec le GCC:
en fait j'ai un petit main qui utilise deux librairies, libosgViewer.so et libosgDB.so.
je travail avec des installations local, c'est à dire que j'ai installé OSG dans un dossier Build et j'ai MODIFIER la variable LD_LIBRARY_PATH pour pointé sur le dossier lib de OSG que j'ai installer avec make install...
l'execution de la commande 'export' m'indique bien la bonne valeur de la variable, mais quand je compile avec la commandeben le process ne trouve pas les fichiers d'include!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part gcc -losgViewer -losgDB main.cpp -o main
aidez moi svp.
voici mon main.cpp:
voici le resultat de la comande echo $PATH et echo $LD_LIBRARY_PATH:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #include <osgDB/ReadFile> #include <osgViewer/Viewer> int main(int argc, char** argv) { osg::ArgumentParser arguments(&argc,argv); osgViewer::Viewer viewer; viewer.setUpViewInWindow(100,100,500,500); osg::ref_ptr<osg::Node> loadedModel = osgDB::readNodeFiles(arguments); viewer.setSceneData( loadedModel.get() ); viewer.run(); delete viewer; }
et enfin voici le resultat de la compilation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 [sbox-FREMANTLE_X86: ~] > echo $PATH /host_usr/bin:/scratchbox/devkits/git/bin:/scratchbox/devkits/svn/bin:/scratchbox/devkits/doctools/bin:/scratchbox/devkits/debian-etch/bin:/scratchbox/devkits/perl/bin:/scratchbox/tools/bin:/targets/links/arch_tools/bin:/scratchbox/compilers/bin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/sbin:/usr/sbin:/home/xxxxx/OSG/OpenSceneGraph-Es2/Build_debug/INSTALL/usr/local/bin:/home/xxxxx/VirtualPlanetBuilder-0.9.11/Build/GLES/Debug/usr/local/bin:/home/xxxxx/QBee/QBee-qt-maemo5-OSGes2/Development/Builds/debug/Bin [sbox-FREMANTLE_X86: ~] > echo $LD_LIBRARY_PATH /lib:/usr/lib:/usr/local/lib:/usr/X11R6/lib:/home/xxxxx/QBee/QBee-qt-maemo5-OSGes2/Development/Builds/debug/Lib:/home/xxxxx/OSG/OpenSceneGraph-Es2/Build_debug/INSTALL/usr/local/lib:/home/xxxxx/QT/qt-maemo5-opengl-es2/lib:/home/xxxxx/VirtualPlanetBuilder-0.9.11/Build/GLES/Debug/usr/local/lib
merci pour votre aide, c'est très urgent, ça me bloque tout mon travail!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 [sbox-FREMANTLE_X86: ~] > gcc -losgDB -losgViewer -g main.cpp -o main main.cpp:1:26: error: osgDB/ReadFile: No such file or directory main.cpp:2:28: error: osgViewer/Viewer: No such file or directory main.cpp: In function 'int main(int, char**)': main.cpp:6: error: 'osg' has not been declared main.cpp:6: error: expected `;' before 'arguments' main.cpp:8: error: 'osgViewer' has not been declared main.cpp:8: error: expected `;' before 'viewer' main.cpp:9: error: 'viewer' was not declared in this scope main.cpp:10: error: 'osg' has not been declared main.cpp:10: error: 'osg' has not been declared main.cpp:10: error: 'loadedModel' was not declared in this scope main.cpp:10: error: 'osgDB' has not been declared main.cpp:10: error: 'arguments' was not declared in this scope main.cpp:13: error: type '<type error>' argument given to 'delete', expected pointer
PS: je suis sous Ubuntu Karmic.
Partager