Thread: [Fxruby-users] My fox build segfaults on Solaris 9 gcc.
Status: Inactive
Brought to you by:
lyle
From: Hugh S. S. E. E. <hg...@dm...> - 2004-07-06 15:26:40
|
The last thing I get on building the Fox library is g++ -shared FX4Splitter.lo FXAccelTable.lo FXApp.lo FXArrowButton.lo FXBMPIcon.lo FXBMPImage.lo FXBitmap.lo FXBitmapFrame.lo FXBitmapView.lo FXButton.lo FXBZStream.lo FXCURCursor.lo FXCanvas.lo FXCharset.lo FXCheckButton.lo FXColorBar.lo FXColorDialog.lo FXColorNames.lo FXColorSelector.lo FXColorWell.lo FXColorWheel.lo FXComboBox.lo FXComposite.lo FXCursor.lo FXDC.lo FXDCPrint.lo FXDCWindow.lo FXDLL.lo FXDataTarget.lo FXDebugTarget.lo FXDelegator.lo FXDial.lo FXDialogBox.lo FXDict.lo FXDirBox.lo FXDirDialog.lo FXDirList.lo FXDirSelector.lo FXDocument.lo FXDragCorner.lo FXDrawable.lo FXDriveBox.lo FXException.lo FXFile.lo FXFileDialog.lo FXFileDict.lo FXFileList.lo FXFileSelector.lo FXFileStream.lo FXFoldingList.lo FXFont.lo FXFontDialog.lo FXFontSelector.lo FXFrame.lo FXGIFCursor.lo FXGIFIcon.lo FXGIFImage.lo FXGLCanvas.lo FXGLCone.lo FXGLContext.lo FXGLCube.lo FXGLCylinder.lo FXGLObject.lo FXGLShape.lo FXGLSphere.lo FXGLTriangleMesh.lo FXGLViewer.lo FXGLVisual.lo FXGradientBar.lo FXGroupBox.lo FXGZStream.lo FXHash.lo FXHeader.lo FXHorizontalFrame.lo FXICOIcon.lo FXICOImage.lo FXIcon.lo FXIconList.lo FXId.lo FXImage.lo FXImageFrame.lo FXImageView.lo FXInputDialog.lo FXJPGIcon.lo FXJPGImage.lo FXLabel.lo FXList.lo FXListBox.lo FXMDIButton.lo FXMDIChild.lo FXMDIClient.lo FXMainWindow.lo FXMat3d.lo FXMat4d.lo FXMat3f.lo FXMat4f.lo FXMatrix.lo FXMemoryStream.lo FXMenuBar.lo FXMenuButton.lo FXMenuCaption.lo FXMenuCascade.lo FXMenuCheck.lo FXMenuRadio.lo FXMenuCommand.lo FXMenuPane.lo FXMenuSeparator.lo FXMenuTitle.lo FXMessageBox.lo FXObject.lo FXObjectList.lo FXOptionMenu.lo FXPCXIcon.lo FXPCXImage.lo FXPNGIcon.lo FXPNGImage.lo FXPPMIcon.lo FXPPMImage.lo FXPacker.lo FXPicker.lo FXPopup.lo FXPoint.lo FXPrintDialog.lo FXProgressBar.lo FXProgressDialog.lo FXQuatd.lo FXQuatf.lo FXRGBIcon.lo FXRGBImage.lo FXRadioButton.lo FXRangef.lo FXRanged.lo FXRealSlider.lo FXRealSpinner.lo FXRecentFiles.lo FXRectangle.lo FXRegion.lo FXRegistry.lo FXReplaceDialog.lo FXRex.lo FXRootWindow.lo FXRuler.lo FXScrollArea.lo FXScrollBar.lo FXScrollPane.lo FXScrollWindow.lo FXSearchDialog.lo FXSeparator.lo FXSettings.lo FXShell.lo FXShutter.lo FXSize.lo FXSlider.lo FXSpinner.lo FXSpheref.lo FXSphered.lo FXSplitter.lo FXSpring.lo FXStatusBar.lo FXStatusLine.lo FXStream.lo FXString.lo FXStringDict.lo FXSwitcher.lo FXTGAIcon.lo FXTGAImage.lo FXTIFIcon.lo FXTIFImage.lo FXTabBar.lo FXTabBook.lo FXTabItem.lo FXTable.lo FXText.lo FXTextCodec.lo FXTextField.lo FXThread.lo FXToggleButton.lo FXToolBar.lo FXToolBarGrip.lo FXToolBarShell.lo FXToolBarTab.lo FXToolTip.lo FXTopWindow.lo FXTreeList.lo FXTreeListBox.lo FXTriStateButton.lo FXUndoList.lo FXURL.lo FXUTF8Codec.lo FXUTF16Codec.lo FXUTF32Codec.lo FXVec2d.lo FXVec2f.lo FXVec3d.lo FXVec3f.lo FXVec4d.lo FXVec4f.lo FXVerticalFrame.lo FXVisual.lo FXWindow.lo FXWizard.lo FXWString.lo FXXBMIcon.lo FXXBMImage.lo FXXPMIcon.lo FXXPMImage.lo fxbmpio.lo fxfilematch.lo fxgifio.lo fxicoio.lo fxjpegio.lo fxparsegeometry.lo fxpcxio.lo fxpngio.lo fxppmio.lo fxpriv.lo fxpsio.lo fxfsquantize.lo fxezquantize.lo fxwuquantize.lo fxrgbio.lo fxtargaio.lo fxtifio.lo fxutils.lo fxwinkbd.lo fxxbmio.lo fxxpmio.lo icons.lo vsscanf.lo -Wl,--rpath -Wl,/usr/openwin/lib -L/usr/openwin/lib -lXext -lX11 -lsocket -lnsl -ldl -lpthread -ljpeg -lpng -lz -lbz2 -lm -lGL -lGLU -lc -Wl,-soname -Wl,libFOX-1.2.so.0 -o .libs/libFOX-1.2.so.0.0.6 collect2: ld terminated with signal 11 [Segmentation Fault], core dumped gmake[1]: *** [libFOX-1.2.la] Error 1 gmake[1]: Leaving directory `/export/home/Scratch/hgs/fox-1.2.6/src' gmake: *** [all-recursive] Error 1 The only thing that seems obvious to me is to ensure that the LD used is gnu ld and not the Sun one. Given this is invoked by g++, how might I be certain about this? It is not defined in the (top) Makefile. Anything else I should look out for? Thank you, Hugh |
From: jeroen <je...@fo...> - 2004-07-07 03:47:41
|
On Tuesday 06 July 2004 10:26 am, Hugh Sasse Staff Elec Eng wrote: > The last thing I get on building the Fox library is > > g++ -shared FX4Splitter.lo FXAccelTable.lo FXApp.lo > FXArrowButton.lo FXBMPIcon.lo FXBMPImage.lo FXBitmap.lo > FXBitmapFrame.lo FXBitmapView.lo FXButton.lo FXBZStream.lo > FXCURCursor.lo FXCanvas.lo FXCharset.lo FXCheckButton.lo > FXColorBar.lo FXColorDialog.lo FXColorNames.lo FXColorSelector.lo > FXColorWell.lo FXColorWheel.lo FXComboBox.lo FXComposite.lo > FXCursor.lo FXDC.lo FXDCPrint.lo FXDCWindow.lo FXDLL.lo > FXDataTarget.lo FXDebugTarget.lo FXDelegator.lo FXDial.lo > FXDialogBox.lo FXDict.lo FXDirBox.lo FXDirDialog.lo FXDirList.lo > FXDirSelector.lo FXDocument.lo FXDragCorner.lo FXDrawable.lo > FXDriveBox.lo FXException.lo FXFile.lo FXFileDialog.lo FXFileDict.lo > FXFileList.lo FXFileSelector.lo FXFileStream.lo FXFoldingList.lo > FXFont.lo FXFontDialog.lo FXFontSelector.lo FXFrame.lo > FXGIFCursor.lo FXGIFIcon.lo FXGIFImage.lo FXGLCanvas.lo FXGLCone.lo > FXGLContext.lo FXGLCube.lo FXGLCylinder.lo FXGLObject.lo > FXGLShape.lo FXGLSphere.lo FXGLTriangleMesh.lo FXGLViewer.lo > FXGLVisual.lo FXGradientBar.lo FXGroupBox.lo FXGZStream.lo FXHash.lo > FXHeader.lo FXHorizontalFrame.lo FXICOIcon.lo FXICOImage.lo > FXIcon.lo FXIconList.lo FXId.lo FXImage.lo FXImageFrame.lo > FXImageView.lo FXInputDialog.lo FXJPGIcon.lo FXJPGImage.lo > FXLabel.lo FXList.lo FXListBox.lo FXMDIButton.lo FXMDIChild.lo > FXMDIClient.lo FXMainWindow.lo FXMat3d.lo FXMat4d.lo FXMat3f.lo > FXMat4f.lo FXMatrix.lo FXMemoryStream.lo FXMenuBar.lo > FXMenuButton.lo FXMenuCaption.lo FXMenuCascade.lo FXMenuCheck.lo > FXMenuRadio.lo FXMenuCommand.lo FXMenuPane.lo FXMenuSeparator.lo > FXMenuTitle.lo FXMessageBox.lo FXObject.lo FXObjectList.lo > FXOptionMenu.lo FXPCXIcon.lo FXPCXImage.lo FXPNGIcon.lo > FXPNGImage.lo FXPPMIcon.lo FXPPMImage.lo FXPacker.lo FXPicker.lo > FXPopup.lo FXPoint.lo FXPrintDialog.lo FXProgressBar.lo > FXProgressDialog.lo FXQuatd.lo FXQuatf.lo FXRGBIcon.lo FXRGBImage.lo > FXRadioButton.lo FXRangef.lo FXRanged.lo FXRealSlider.lo > FXRealSpinner.lo FXRecentFiles.lo FXRectangle.lo FXRegion.lo > FXRegistry.lo FXReplaceDialog.lo FXRex.lo FXRootWindow.lo FXRuler.lo > FXScrollArea.lo FXScrollBar.lo FXScrollPane.lo FXScrollWindow.lo > FXSearchDialog.lo FXSeparator.lo FXSettings.lo FXShell.lo > FXShutter.lo FXSize.lo FXSlider.lo FXSpinner.lo FXSpheref.lo > FXSphered.lo FXSplitter.lo FXSpring.lo FXStatusBar.lo > FXStatusLine.lo FXStream.lo FXString.lo FXStringDict.lo > FXSwitcher.lo FXTGAIcon.lo FXTGAImage.lo FXTIFIcon.lo FXTIFImage.lo > FXTabBar.lo FXTabBook.lo FXTabItem.lo FXTable.lo FXText.lo > FXTextCodec.lo FXTextField.lo FXThread.lo FXToggleButton.lo > FXToolBar.lo FXToolBarGrip.lo FXToolBarShell.lo FXToolBarTab.lo > FXToolTip.lo FXTopWindow.lo FXTreeList.lo FXTreeListBox.lo > FXTriStateButton.lo FXUndoList.lo FXURL.lo FXUTF8Codec.lo > FXUTF16Codec.lo FXUTF32Codec.lo FXVec2d.lo FXVec2f.lo FXVec3d.lo > FXVec3f.lo FXVec4d.lo FXVec4f.lo FXVerticalFrame.lo FXVisual.lo > FXWindow.lo FXWizard.lo FXWString.lo FXXBMIcon.lo FXXBMImage.lo > FXXPMIcon.lo FXXPMImage.lo fxbmpio.lo fxfilematch.lo fxgifio.lo > fxicoio.lo fxjpegio.lo fxparsegeometry.lo fxpcxio.lo fxpngio.lo > fxppmio.lo fxpriv.lo fxpsio.lo fxfsquantize.lo fxezquantize.lo > fxwuquantize.lo fxrgbio.lo fxtargaio.lo fxtifio.lo fxutils.lo > fxwinkbd.lo fxxbmio.lo fxxpmio.lo icons.lo vsscanf.lo -Wl,--rpath > -Wl,/usr/openwin/lib -L/usr/openwin/lib -lXext -lX11 -lsocket -lnsl > -ldl -lpthread -ljpeg -lpng -lz -lbz2 -lm -lGL -lGLU -lc > -Wl,-soname -Wl,libFOX-1.2.so.0 -o .libs/libFOX-1.2.so.0.0.6 > collect2: ld terminated with signal 11 [Segmentation Fault], core > dumped > gmake[1]: *** [libFOX-1.2.la] Error 1 > gmake[1]: Leaving directory `/export/home/Scratch/hgs/fox-1.2.6/src' > gmake: *** [all-recursive] Error 1 > > The only thing that seems obvious to me is to ensure that the LD > used is gnu ld and not the Sun one. Given this is invoked by g++, > how might I be certain about this? It is not defined in the (top) > Makefile. Anything else I should look out for? I keep up with FOX compiling on SUN; it should compile out of the box using SUN's own compiler. If you have a problem with compiling using GCC, my first suggestion is to make sure GCC is properly installed [its a complex beast!]. Make sure you have a recent GCC, and that your paths are set properly [in particular, GCC's installation typically includes "repaired" header files which may be necessary]. On some machines you need to use native linker, and some GNU ld; I don't know what the recommendation is for the SPARC target. SUN has a collection of GNU software on their site, I don't know if this includes GCC but if it does then that might be helpful, assuming the SUN developers are more on top of this situation that we are. Regards, - Jeroen -- +----------------------------------------------------------------------------+ | Copyright (C) 23:40 07/ 6/2004 Jeroen van der Zijp. All Rights Reserved. | +----------------------------------------------------------------------------+ |
From: Hugh S. S. E. E. <hg...@dm...> - 2004-07-07 09:22:55
|
On Tue, 6 Jul 2004, jeroen wrote: > On Tuesday 06 July 2004 10:26 am, Hugh Sasse Staff Elec Eng wrote: >> The last thing I get on building the Fox library is >> >> g++ -shared FX4Splitter.lo FXAccelTable.lo FXApp.lo >> FXArrowButton.lo FXBMPIcon.lo FXBMPImage.lo FXBitmap.lo [....] >> -ldl -lpthread -ljpeg -lpng -lz -lbz2 -lm -lGL -lGLU -lc >> -Wl,-soname -Wl,libFOX-1.2.so.0 -o .libs/libFOX-1.2.so.0.0.6 >> collect2: ld terminated with signal 11 [Segmentation Fault], core >> dumped >> gmake[1]: *** [libFOX-1.2.la] Error 1 >> gmake[1]: Leaving directory `/export/home/Scratch/hgs/fox-1.2.6/src' >> gmake: *** [all-recursive] Error 1 >> >> The only thing that seems obvious to me is to ensure that the LD >> used is gnu ld and not the Sun one. Given this is invoked by g++, >> how might I be certain about this? It is not defined in the (top) >> Makefile. Anything else I should look out for? > > I keep up with FOX compiling on SUN; it should compile out of the > box using SUN's own compiler. If you have a problem with compiling I'll give that a go, but Ruby compiles with GCC, so will the libraries interoperate? There are dire warnings about this in the changes docs for GCC, and I don't know enough to test for the ramificiations in any particular case. > using GCC, my first suggestion is to make sure GCC is properly > installed [its a complex beast!]. Make sure you have a recent I believe it is. It does fail some tests when built, but I can compile most things with it [pine, exim, Ruby, Perl,...]. I know of no post-install diag/test suite I could use but would be glad to hear about one. Given that many `make check` tests fail but even unexpected failures are to be expected I think the chances of such a thing coming into being are slim. > GCC, and that your paths are set properly [in particular, GCC's 3.3.2. I've avoided 3.4.0 because it is .0, but now 3.4.1 is out I may try building that. > installation typically includes "repaired" header files which may > be necessary]. Can you explicitly tell me how to test for these things? I've not even been able to extract which linker it is using from GCC or G++. It occurs to me that I might get something out of strace, but I get a lot of information out of that! :-) > > On some machines you need to use native linker, and some GNU ld; I > don't know what the recommendation is for the SPARC target. ld: /usr/ccs/bin/ld /usr/lib/ld.so /usr/lib/ld /usr/ucb/ld /usr/local/bin/ld and sum says they are all different, the last being Gnu ld 41228 18 /usr/ccs/bin/ld 12100 4 /usr/ucb/ld 40682 3969 /usr/local/bin/ld and Sun Workshop compiler doesn't seem to have an ld in the same dir as the compiler. > > SUN has a collection of GNU software on their site, I don't know Yes, I think we used that gcc to build this one. > if this includes GCC but if it does then that might be helpful, Is there any way to test this though? I could spend ages fiddling with different GCC's, different versions of binutils, etc, and when it works I still won't know why. > assuming the SUN developers are more on top of this situation that > we are. > > > Regards, > > > - Jeroen > Thank you, Hugh |
From: Vincent C. <co...@st...> - 2004-07-07 09:33:41
|
Hi Hugh, A couple things you might want to try: - Make sure your Solaris 9 patch level is up-to-date. /usr/ccs/bin/ld should not segfault. Install a Recommended Cluster and/or a Maintenance update. - You might want to try to 'export LD=/usr/ccs/bin/ld' before you run configure to make sure that 'ld' will link the shared library instead of using 'g++ -shared'. This solved problems for me under Solaris 8 but of course YMMV... Good luck, Vincent ,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-, Vincent S. Cojot, Computer Engineering. STEP project. _.,-*~'`^`'~*-,._.,-*~ Ecole Polytechnique de Montreal, Comite Micro-Informatique. _.,-*~'`^`'~*-,. Linux Xview/OpenLook resources page _.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~' http://step.polymtl.ca/~coyote _.,-*~'`^`'~*-,._ co...@st... They cannot scare me with their empty spaces Between stars - on stars where no human race is I have it in me so much nearer home To scare myself with my own desert places. - Robert Frost |
From: Hugh S. S. E. E. <hg...@dm...> - 2004-07-07 16:06:56
|
On Wed, 7 Jul 2004, Vincent Cojot wrote: > > Hi Hugh, > > A couple things you might want to try: > > - Make sure your Solaris 9 patch level is up-to-date. /usr/ccs/bin/ld should > not segfault. Install a Recommended Cluster and/or a Maintenance update. We will follow this up in due course -- it is my colleague who looks after that side of things, and I've told him about this, Meanwhile.... > > - You might want to try to 'export LD=/usr/ccs/bin/ld' before you run > configure to make sure that 'ld' will link the shared library instead of > using 'g++ -shared'. This solved problems for me under Solaris 8 but of > course YMMV... About the only thing I have not meddled with is LD_LIBRARY_PATH, which has been sufficient to the task I think. I got these results as the first combination which worked: + echo /usr/ccs/bin/ld /progs/SUNWspro/bin/cc g++ gmake /usr/ccs/bin/ld /progs/SUNWspro/bin/cc g++ gmake + exit 0 versions: ld: Software Generation Utilities - Solaris Link Editors: 5.9-1.375 cc: Sun WorkShop 6 update 2 C 5.3 2001/05/15 gcc (GCC) 3.3.2 GNU Make 3.80 This is as a result of this script to try everything exhaustively: #!/bin/sh -vx # vim:sw=2 for ld in /usr/ccs/bin/ld /usr/ucb/ld /usr/local/bin/ld do LD=$ld export LD for cc in gcc /progs/SUNWspro/bin/cc /usr/ucb/cc do CC=$cc export CC for cxx in g++ CC do CXX=$cxx export CXX for make in gmake make do MAKE=$make export MAKE $MAKE distclean ./configure && $MAKE && echo $LD $CC $CXX $MAKE && exit 0 done done done done That g++ should work together with cc seems odd to me. Are there any tests I can run on this to really thrash it before accepting it as functioning correctly? While I'm at it, are there any tests that it would be useful to the Fox/FXRuby community to do on this system? > > Good luck, > > Vincent Thank you, Hugh |