Thanks for the reply.

After messing with the CMakeLists in OpenThreads (forced pthreads), I
got it to compile and build me a static lib archive... unfortutely I
have pretty much the same problem, about a bajillion of these errors
originating from various osg sources.

Program.cpp:(.text+0x5158): undefined reference to
`OpenThreads::Mutex::Mutex(OpenThreads::Mutex::MutexType)'
Program.cpp:(.text+0x5160): undefined reference to
`OpenThreads::Mutex::~Mutex()'



On Tue, May 29, 2012 at 5:02 PM, Thomas Hogarth
<[email protected]> wrote:
> Hi Preet
>
> Good to hear you're working on a Blackberry port.
>
> In regard to the libs you need your main aim is to get osgViewer compiling.
> If that compiles then you can setup a viewer a render your scenegraph.
>
> You'll have two options for this, you can either create your own 
> implementation of osgViewer::GraphicsWindow to handle setting up an OpenGL 
> context, window etc. Or you can just use the OpenGL example you have and 
> setup the viewer using the setupViewerAsEmbeded function which will allow you 
> to draw the osg scenegraph into your example OpenGL view.
>
> Probably easiest to try setupViewerAsEmbeded first to test osg itself is 
> working, then you can try and create your own viewer.
>
> With regard to OpenThreads it's probably related to the actual operating 
> system you are using to build the libs. For example if you are on windows 
> then CMake is probably selecting the windows threading stuff because it's not 
> aware your trying to build for blackberry.
>
> If you take a look at src/OpenThreads/CMakeLists.txt near the bottom you'll 
> find this
>
>
> Code:
> IF(NOT ANDROID)
> # Use our modified version of FindThreads.cmake which has Sproc hacks.
>    FIND_PACKAGE(Threads)
> ENDIF()
> # Do we have sproc?
> IF(CMAKE_SYSTEM MATCHES IRIX)
>    IF(CMAKE_USE_SPROC_INIT)
>        # In this case, only Sproc exists, so no option.
>        SET(OPENTHREADS_USE_SPROC_INSTEAD_OF_PTHREADS 1)
>    ELSE()
>        IF(CMAKE_HAVE_SPROC_H)
>            OPTION(OPENTHREADS_USE_SPROC_INSTEAD_OF_PTHREADS "Set to ON to 
> build OpenThreads against sproc instead of pthreads" OFF)
>        ENDIF()
>    ENDIF()
> ENDIF(CMAKE_SYSTEM MATCHES IRIX)
>
> # Add support for using Qt threads
> IF(QT4_FOUND)
>    OPTION(BUILD_OPENTHREADS_WITH_QT "Build OpenThreads with Qt threading 
> support." OFF)
> ENDIF()
>
> # Maybe we should be using the FindThreads.cmake module?
> IF(ANDROID)
>    SUBDIRS(pthreads)
> ELSEIF(QT4_FOUND AND BUILD_OPENTHREADS_WITH_QT)
>    SUBDIRS(qt)
> ELSEIF(WIN32)
>    # So I think Cygwin wants to use pthreads
>    IF(CYGWIN)
>        SUBDIRS(pthreads)
>    ELSE()
>        # Everybody else including Msys should probably go here
>        SUBDIRS(win32)
>        # examples)
>    ENDIF()
> ELSE()
>    IF(UNIX)
>        IF(OPENTHREADS_USE_SPROC_INSTEAD_OF_PTHREADS)
>            SUBDIRS(sproc)
>        ELSE()
>            SUBDIRS(pthreads)
>        ENDIF()
>    ELSE()
>        MESSAGE("Sorry, OpenThreads may not support your platform")
>    ENDIF()
> ENDIF()
>
>
>
>
> In there it is selecting the correct  threading module for the platform. For 
> a temporary fix you can just force the use of pthreads.
>
> Regarding plugins, cmake will only generate build targets for pulgins for 
> which it has found the dependancies. Be careful though that it doesn't find 
> your operating system versions. For good asset support you'll need at least
> libpng for loading of png images, and freetypes for fonts.
>
> The osg format plugins themselves have no external dependancies so should 
> build as long as osg does.
>
> Cheers
> Tom
>
> ------------------
> Read this topic online here:
> http://forum.openscenegraph.org/viewtopic.php?p=47924#47924
>
>
>
>
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to