Hello,

I have installed the scenegraph 1.8.0 alpha from the daily build ,not
sure though if it is properly installed as i have got several errors
while making it.

but after running the sudo make install and setting the LD_LIBRARY_PATH
i got the following output with osg-config

[EMAIL PROTECTED]:~/openSG/opSG$ osg-config
Usage: osg-config OPTIONS [LIBRARIES]
Options:
    [--prefix[=DIR]]
    [--exec-prefix[=DIR]]
    [--version]
    [--compiler]
    [--compiler-id]
    [--moc]
    [--uic]
    [--moc4]
    [--uic4]
    [--exe-linker]
    [--libs]
    [--cflags]
    [--lflags]
    [--llibs]
    [--opt]
    [--dbg]
Libraries:
    Base
    System
    Win32
    X
    GLUT
    QT
    QT4
    Sepia
    Contrib



and




[EMAIL PROTECTED]:~/openSG/opSG$ osg-config --libs --dbg Base System
GLUT QT
-g -L/usr/lib64/ -L/usr/lib64/ -L/usr/lib64/ -L/usr/share/qt3/lib/
-L/usr/lib64/ -L/usr/local/lib/dbg -lOSGWindowQT -lOSGWindowGLUT
-lOSGWindowX -lOSGSystem -lOSGBase -ltiff -ljpeg -lpng -lz -lqt-mt
-lglut -lGLU -lGL -lXmu -lXi -lXt -lX11 -lpthread -ldl -lm
-L/usr/X11R6/lib64


and


[EMAIL PROTECTED]:~/openSG/opSG$ osg-config --cflags --dbg Base
System GLUT QT
-D_GNU_SOURCE -DQT_CLEAN_NAMESPACE -DOSG_WITH_GLUT -DOSG_WITH_QT
-DOSG_WITH_TIF -DOSG_WITH_JPG -DOSG_WITH_PNG -D_OSG_HAVE_CONFIGURED_H_
-DQT_NO_XINERAMA -DQT_NO_XRENDER -DQT_NO_XFTFREETYPE -DQT_NO_XKB
-DQT_NO_SM_SUPPORT -DQT_NO_IMAGEIO_MNG -DQT_NO_IMAGEIO_JPEG
-DQT_NO_STYLE_AQUA -DQT_NO_STYLE_MAC -DQT_NO_STYLE_INTERLACE
-DQT_NO_STYLE_COMPACT -ansi -use_readonly_const -ftemplate-depth-100
-fPIC -O1 -g -DOSG_DEBUG -DOSG_WITH_QT -DOSG_WITH_GLUT -DOSG_WITH_TIF
-DOSG_WITH_JPG -DOSG_WITH_PNG -I/usr/include/ -I/usr/include/
-I/usr/include/ -I/usr/include/qt3/ -I/usr/include/GL/ -I/usr/local/include


Does that mean  it is properly installed?


Then i prepared a MakeFile and my first application (copied the code
from the site)



but got the following error:


[EMAIL PROTECTED]:~/openSG/opSG$ make firstScene
"g++" -c -D_GNU_SOURCE -DQT_CLEAN_NAMESPACE -DOSG_WITH_GLUT
-DOSG_WITH_QT -DOSG_WITH_TIF -DOSG_WITH_JPG -DOSG_WITH_PNG
-D_OSG_HAVE_CONFIGURED_H_ -DQT_NO_XINERAMA -DQT_NO_XRENDER
-DQT_NO_XFTFREETYPE -DQT_NO_XKB -DQT_NO_SM_SUPPORT -DQT_NO_IMAGEIO_MNG
-DQT_NO_IMAGEIO_JPEG -DQT_NO_STYLE_AQUA -DQT_NO_STYLE_MAC
-DQT_NO_STYLE_INTERLACE -DQT_NO_STYLE_COMPACT -ansi -use_readonly_const
-ftemplate-depth-100 -fPIC -O1 -g -DOSG_DEBUG -DOSG_WITH_GLUT
-DOSG_WITH_TIF -DOSG_WITH_JPG -DOSG_WITH_PNG -I/usr/include/
-I/usr/include/ -I/usr/include/ -I/usr/include/GL/ -I/usr/local/include
firstOSG.cpp
"g++" -o  firstScene firstOSG.o -g -L/usr/lib64/ -L/usr/lib64/
-L/usr/lib64/ -L/usr/lib64/ -L/usr/local/lib/dbg -lOSGWindowGLUT
-lOSGSystem -lOSGBase -ltiff -ljpeg -lpng -lz -lglut -lGLU -lGL -lXmu
-lXi -lXt -lX11 -lpthread -ldl -lm -L/usr/X11R6/lib64
/usr/bin/ld: cannot find -lOSGWindowGLUT
collect2: ld returned 1 exit status
make: *** [firstScene] Error 1



what did i miss ?


I am attaching the source code and MakeFile .


The contents of the MakeFile is:


#A very sipmle make file that will compile all  the OpenSG programs
#that will be done by me


#"opt" if i m using the optimized library
#otherwise use "dbg"
LIBTYPE ?= dbg

# set the path to  the installed osg-config
# executable here
OSGCONFIG := /usr/local/bin/osg-config 

#use g++ to compile the source file , you can use other compilers 
#as cc or gcc to do  the compilation 
CXX = "$(shell $(OSGCONFIG) --compiler)"

#the compiler flags go here
#to set  the flag we use the OSGCONFIG to
#set the option needed to compile and link
#the include path is found from the shell variable
CXXFLAGS = $(shell $(OSGCONFIG) --cflags --$(LIBTYPE) Base System GLUT)

#linker flags go here, probabaly for code optimization 
#we might add "-s" here to strip debug info and symbols
LDFLAGS = $(shell $(OSGCONFIG) --libs --$(LIBTYPE) Base System GLUT)


SRCS = firstOSG.cpp  

GOVIEWOBJS = $(SRCS:.cpp=.o)

#use the following one to erase files
RM = rm -rf

#program executable file name
PROGS = firstScene


#top-level rule, to compile everything
all: $(PROGS)


#rule to cleaning the recompilable files
clean:
        $(RM) $(PROGS) $(GOVIEWOBJS)

superclean:
        $(RM) $(PROGS) $(GOVIEWOBJS)


#rule to link  the program
$(PROGS): $(GOVIEWOBJS)
          $(CXX) -o  $@ $(GOVIEWOBJS) $(LDFLAGS)

#meta rules to compile any cpp source files
#here "%" character is a wildcard that matches any part of the filename
#the rule here means that "A file with a '.o' suffix is dependant on a
file with the same name but with a '.c' suffix "
%.o: %.cpp
        $(CXX) -c $(CXXFLAGS) $<

#rule for building dependency list and writing them to  a file
#named  ".depend"
depend:
        $(RM) .depend
        makedepend -f- -- $(CXXFLAGS) -- $(SRCS) > .depend

#now add a line to include the dependency list  
include .depend




the contents of the source file


// File : 01firstapp.cpp
//what follows here is the smallest OpenSG programm possible
//most things used here are explained now or on the next few pages, so don’t
//worry if not everything is clear right at the beginning...
//Some needed include files - these will become more, believe me ;)
#include <OpenSG/OSGConfig.h>
#include <OpenSG/OSGGLUT.h>
#include <OpenSG/OSGSimpleGeometry.h>
#include <OpenSG/OSGGLUTWindow.h>
#include <OpenSG/OSGSimpleSceneManager.h>
//In most cases it is useful to add this line, otherwise every OpenSG
command
//must be preceeded by an extra OSG::
OSG_USING_NAMESPACE
//The SimpleSceneManager is a useful class which helps us to
//manage simple configurations. It will be discussed in detail later on



SimpleSceneManager *mgr;
//we have a forward declaration here, just to have a better order
//of codepieces
int setupGLUT( int *argc, char *argv[] );


int main(int argc, char **argv)
{
    // Init the OpenSG subsystem
    osgInit(argc,argv);
    // We create a GLUT Window (that is almost the same for most
applications)
    int winid = setupGLUT(&argc, argv);
    GLUTWindowPtr gwin= GLUTWindow::create();
    gwin->setId(winid);
    gwin->init();
    // This will be our whole scene for now : an incredible torus
    NodePtr scene = makeTorus(.5, 2, 16, 16);
    // Create and setup our little friend - the SSM
    mgr = new SimpleSceneManager;
    mgr->setWindow(gwin);
    mgr->setRoot(scene);
    mgr->showAll();
    // Give Control to the GLUT Main Loop
    glutMainLoop();
    return 0;
}






// react to size changes
void reshape(int w, int h)
{
    mgr->resize(w, h);
    glutPostRedisplay();
}
// just redraw our scene if this GLUT callback is invoked
void display(void)
{
    mgr->redraw();
}
//The GLUT subsystem is set up here. This is very similar to other GLUT
//applications. If you have worked with GLUT before, you may have the
//feeling of meeting old friends again, if you have not used GLUT before
//that is no problem. GLUT will be introduced briefly on the next section
int setupGLUT(int *argc, char *argv[])
{
    glutInit(argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DEPTH | GLUT_DOUBLE);
    int winid = glutCreateWindow("OpenSG First Application");
    // register the GLUT callback functions
    glutDisplayFunc(display);
    glutReshapeFunc(reshape);
    return winid;
}





Sajjad

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to