Hi Brian,

I merged updates to GraphicsWindowWin32 today, I don't know whether
they will have a baring on Cygwin support but it might be worth trying
a CVS update.  If there are tweaks you have to do could please send
them along to osg-submissions.

As for the thread exit issue, I can reproduce error with OpenThreads
WorkCrew, but don't have any problems with thread exit under Linux
w.r.t the new osgViewer library, and others under Windows and OSX
don't appear to be having this problem.   I have worked to ensure that
the threads are exited cooperatively i.e. without the need to doing a
thread cancel.

Perhaps once the windows are setup ok things behave better on the
threading front too.

Robert.

On 1/23/07, Brian Keener <[EMAIL PROTECTED]> wrote:
I should have provided some additional detail.  Compiling in Cygwin on an XP
laptop and I was getting the following error(s):

c++  -g -DOSG_COMPILE_UNIT_TESTS -DWIN32 -DNOMINMAX -W -Wall
-L../../../lib/CYGW
IN32  -L/usr/local/lib -L/usr/local/lib -shared
-Wl,--out-implib,libosgViewer.dl
l.a -Wl,--export-all-symbols  SimpleViewer.o View.o Scene.o Viewer.o
CompositeVi
ewer.o Version.o GraphicsWindowWin32.o   -losgGA -losgDB -losgUtil -losg
-lglu32
 -lopengl32 -lOpenThreads -o cygosgViewer.dll
GraphicsWindowWin32.o: In function
`_ZN9osgViewer20Win32WindowingSystem22getSamp
leOpenGLContextEv':
/usr/src/OpenSceneGraph/src/osgViewer/CYGWIN32.Debug/../GraphicsWindowWin32.cpp
:
690: undefined reference to [EMAIL PROTECTED]'
/usr/src/OpenSceneGraph/src/osgViewer/CYGWIN32.Debug/../GraphicsWindowWin32.cpp
:
699: undefined reference to [EMAIL PROTECTED]'
GraphicsWindowWin32.o: In function
`_ZN9osgViewer19GraphicsWindowWin3214setPixel
FormatEv':
/usr/src/OpenSceneGraph/src/osgViewer/CYGWIN32.Debug/../GraphicsWindowWin32.cpp
:
1150: undefined reference to [EMAIL PROTECTED]'
GraphicsWindowWin32.o: In function
`_ZN9osgViewer19GraphicsWindowWin3225swapBuff
ersImplementationEv':
/usr/src/OpenSceneGraph/src/osgViewer/CYGWIN32.Debug/../GraphicsWindowWin32.cpp
:
1315: undefined reference to [EMAIL PROTECTED]'
Creating library file: libosgViewer.dll.a
collect2: ld returned 1 exit status
make[3]: *** [cygosgViewer.dll] Error 1
make[3]: Leaving directory

but.... I think I finally resolved the SwapBuffer and SetPixelFormat and
ChoosePixelFormat errors.  I modifed the Makedefs in the Cygwin portion so that
the X_LIBS variable was included in the OTHER_LIBS variable which essentially
added -lgdi32 and -luser32 to the OTHER_LIBS and then the Viewer & OSG compiled
as expected.  It seems now though that OSG is having difficulty finding the
test data even though I have the OSG_FILE_PATH set to my test location of
/usr/local/OpenSceneGraph-data.  Also if I do not include the osgPlugins
subdirectory in the PATHS directive then it can't seem to find the plugins -
worked on earlier versions - the executable would run and process the image
(for example cow.osg) but now it needs the extra definitions - is this by
design.

There also still seems to be an issue in Cygwin regarding the Thread logic.  I
am seeing the same sort of symptons I saw with the OpenThread Workcrew test
program.  The programs do not seem to want to terminate and it appears (and I
am really making a WAG) the threads are blocking on each other or something.
In the case of the WorkCrew example I added logic to keep checking and signal
each thread to close as need and this resolved but I have a feeling that these
threads get started and we might be doing a broadcast when the mutex comes
available but the thread that needs it - does not see it or several try to act
on it at once or something similar. This was sort of what happened in Workcrew
(from my limited knowledge of threads) and it looked as if it needed to process
in a LIFO format. Just my thoughts and rantings but will look further when I
get OSG to compile and run with the test data in Cygwin.  In an attempt to
research this I added and uncommmented some notifies and this is my current
output from attempting to run osgViewer with cow.osg.  As you can see after the
last done the process just hangs and I have to kill it and then it stackdumps.
Prior to my last to CVS updates - last night and today I did get osgViewer to
run and show the cow with the extra definition of variables but it still hung.
Then I did a cvs update last night and could not even get it to compile and
then a cvs update today now has be back here - it will compile but not run and
I still have to set extra environment variables or add to them.

[EMAIL PROTECTED] /usr/local/OPenSceneGraph-data
$ osgViewer cow.osg
Constructing osg::View
Constructing osgViewer::View
osgViewer:Viewer::construct()
Created New Thread 0 Process: 303955976
Viewer::run()
Windows System Error #127 :  GraphicsWindowWin32::setPixelFormat() -
wglChoosePi
xelFormatARB extension not found. Reason : The specified procedure could not be
found.

  GraphicsWindow has not been created successfully.
Viewer::realize() - failed to set up any windows
osgViewer::~Viewer()
Destructing Thread 0 Process: 303955976
Thread 0 Process: 303955976 being deleted
Thread 0 Process: 303955976 was deleted
Destructing osgViewer::View
Destructing osg::View
Done destructing osg::View
Aborted (core dumped)

[EMAIL PROTECTED] /usr/local/OPenSceneGraph-data
$



_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to