Robert,

I know you mentioned multi threaded but since you also mentioned you worked on 
some cleanup and since those hangs I had seen also appear to be cleanup 
releated in some form I took a stab at this and retrieved a fresh svn, 
recompiled and tried the examples.  The hang I experienced is still there but I 
did want to make note of a couple of changes to the source I had to make to get 
it to build and then run.

The first time I ran ccmake I just ran it and accepted what it found and then 
generated the makefile and ran make.  Whaen I ran make I ran into the invalid 
conversion from GLVOID to VOID we previously had run up against in Tesselator.

The next time I ran it I changed all X references to FLAG-NOTFOUND and added 
-DWIN32 -DDEBUG to CMAKE_CXX_FLAGS and CMAKE_C_FLAGS and generated a makefile 
and compiled.  The following is a result of that.

1) During the compile the make complained about not finding wsock32.lib. In 
CMakeLists.txt (in the trunk of the source tree) if WIN32 is set we set:
         SET (OSG_SOCKET_LIBS wsock32.lib)
         
this is fine for Mingw but I think Cygwin needs wsock32.a or           
mswsock.a.  I added the following 3 lines immediately after the above in 
CMakeLists.txt and reran ccmake and this time it compiled fine.  Not sure if 
mswsock.a would be a better choice but it worked.
         IF(CYGWIN)
                SET (OSG_SOCKET_LIBS wsock32.a)
         ENDIF(CYGWIN)

2) Once compiled and installed then osg could not find the plugins because it 
installed them to /usr/local/bin/osgdb_whatever but it looks for 
cygosgdb_whatever on Cygwin.  As soon as I renamed them (I would give you a 
patch but I have no idea where Cmake puts this) then the examples coul;d find 
the plugins no problem.  I know there has been some discussion of should they 
be in a plugin directory or just in bin and I know problem with that but the 
leading cyg was a gotcha - buit I knew from the past to look for it.

3)  As you had previously advised I tried osgconv since that was one of the 
simpler programs and I still got the hang but I also noticed something on the 
file sizes when osgconv told me the file data had been copied.  The command I 
execute and response was:

[EMAIL PROTECTED] /usr/local/bin
$ osgconv cow.osg /tmp/mycow.osg
Data written to '/tmp/mycow.osg'.

at which point it hangs and I wnet and looked at the data files both before and 
after I kill the process and cow.osg is 653747 bytes and mycow.osg is only 
645182 bytes.  Seems it didn't finish writing (or looks that way) even though 
it says it wrote the data.

I also cleared my full build and everything I installed of osg and tried one 
more ccmake.  This time I configured and left the X directories it found and 
only added -DWIN32 (no -DDEBUG) to the CMAKE_CXX_FLAGS and CMAKE_C_FLAGS and 
then generated my Makefiles.  Again it compiled and results were the same as 
above in #2 and #3 - #1 I had already fixed.

Hopefully it fixes the multi thread crash for you but it didn't help the hang 
although that file size sure makes me wonder what is hanging up.

bk



_______________________________________________
osg-users mailing list
osg-users@openscenegraph.net
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to