compile in the Fedora 13

edited August 2010 in General
I'm new to linux and g++.
First I can't find the bin directory.
After I changed it to /usr/lib/qt4, the program run for a while.
It stop in the "can't read symbol" error.
Please help me to solve the problem.
Thanks a lot!

[root@localhost klayout-0.20.2]# ./build.sh -qt /usr/lib/qt4 -qtinc /usr/include
Qt installation directory is /usr/lib/qt4/lib (lib), /usr/lib/qt4/bin (tools) and /usr/include (includes)
Ruby installation directory is (lib), (includes) and not-used (config for 1.9.x)
Platform is linux-32-gcc-release
Building plugins:

Running build ..
gmake
for d in main ; do (gmake -C $d dep ; gmake -C $d all) || exit 1; done
gmake[1]: Entering directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
gmake[1]: Nothing to be done for `dep'.
gmake[1]: Leaving directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
gmake[1]: Entering directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
g++ -Wl,-E -o klayout layMain.o tlString.o tlInternational.o tlObserver.o tlTimer.o tlLog.o tlProgress.o tlXMLParser.o tlException.o tlCollection.o tlClassRegistry.o tlStream.o tlDeflate.o tlDataMapping.o tlVariant.o tlAssert.o tlThreadedWorkers.o dbObject.o dbUserObject.o dbClipboard.o dbClipboardData.o dbManager.o dbLayout.o dbLayerProperties.o dbLayoutDiff.o dbPCellDeclaration.o dbPCellVariant.o dbPCellHeader.o dbLibraryManager.o dbLibraryProxy.o dbCellMapping.o dbTrans.o dbPoint.o dbPath.o dbPolygon.o dbBox.o dbEdge.o dbCell.o dbClip.o dbCellInst.o dbBoxConvert.o dbInstances.o dbVector.o dbLayoutUtils.o dbLayoutStateModel.o dbStatic.o dbCellGraphUtils.o dbMemStatistics.o dbGDS2.o dbGDS2WriterBase.o dbGDS2Writer.o dbGDS2ReaderBase.o dbGDS2Reader.o dbTextWriter.o dbOASIS.o dbOASISReader.o dbOASISWriter.o dbPolygonTools.o dbReader.o dbWriter.o dbWriterTools.o dbStream.o dbShape.o dbShapes.o dbShapes2.o dbSaveLayoutOptions.o dbLoadLayoutOptions.o dbArray.o dbStreamLayers.o dbHershey.o dbPropertiesRepository.o dbInstElement.o dbEdgeProcessor.o layAnnotationShapes.o layApplication.o layParsedLayerSource.o layCursor.o layBrowser.o layMouseTracker.o layZoomBox.o layRubberBox.o layMarker.o layViewOp.o layVersion.o layCellView.o layRedrawLayerInfo.o layRedrawThread.o layRedrawThreadWorker.o layRedrawThreadCanvas.o layViewObject.o layEditable.o layProperties.o layPlugin.o layConverters.o layDrawing.o layCellTreeModel.o layColorPalette.o layStipplePalette.o layCanvasPlane.o layRenderer.o layBitmap.o layBitmapRenderer.o layBitmapsToImage.o laySvgRendering.o laySnap.o layFileDialog.o layLayerProperties.o layProgress.o layViewport.o layLayoutViewConfig.o layExceptions.o layStream.o layTechnology.o layFinder.o layObjectInstPath.o antConfig.o antPlugin.o antService.o antObject.o antTemplate.o imgObject.o imgPlugin.o imgService.o edtSnap.o edtPlugin.o edtConfig.o edtService.o edtServiceImpl.o edtUtils.o edtMainService.o rdb.o rdbFile.o rdbReader.o rdbRVEReader.o rba.o extXORPlugin.o extRS274XReader.o extRS274XApertures.o extStreamImport.o extStreamImporter.o extGerberDrillFileReader.o extGerberImport.o extGerberImporter.o extNetTracer.o dbGDS2Converter.o dbGDS2Text.o dbGDS2TextReader.o dbGDS2TextWriter.o layGridNet.o layProgressWidget.o layLayoutCanvas.o layAbstractMenu.o laySession.o layMainWindow.o layNavigator.o layMainConfigPages.o layTechSetupDialog.o layWidgets.o layDialogs.o layDisplayState.o layBookmarkList.o layLayoutView.o layLayoutViewConfigPages.o laySaveLayoutOptionsDialog.o layLoadLayoutOptionsDialog.o layHierarchyControlPanel.o layLayerControlPanel.o layDitherPattern.o layLayerTreeModel.o layBrowserDialog.o layLogViewerDialog.o layOASISWriterPlugin.o layGDS2ReaderPlugin.o layGDS2WriterPlugin.o laySelector.o layMove.o tlDeferredExecution.o SettingsFormImpl.o RubyErrorFormImpl.o ConfigurationDialogImpl.o PropertiesDialogImpl.o ClipDialogImpl.o BrowseShapesFormImpl.o BrowseInstancesFormImpl.o CellSelectionFormImpl.o SelectCellViewFormImpl.o BookmarkManagementFormImpl.o EditStipplesFormImpl.o SelectStippleFormImpl.o LayoutPropertiesFormImpl.o EditStippleWidget.o antConfigPage.o antPropertiesPage.o imgPropertiesPage.o imgWidgets.o edtPropertiesPages.o edtInstPropertiesPage.o edtEditorOptionsPages.o edtDialogs.o edtPartialService.o gtf.o rbaConsoleImpl.o extXORToolDialog.o extStreamImportDialog.o extGerberImportDialog.o extNetTracerDialog.o extNetTracerConfig.o rdbMarkerBrowser.o rdbMarkerBrowserPage.o rdbMarkerBrowserDialog.o rdbInfoWidget.o layGridNet_moc.o layProgressWidget_moc.o layLayoutCanvas_moc.o layAbstractMenu_moc.o laySession_moc.o layMainWindow_moc.o layNavigator_moc.o layMainConfigPages_moc.o layTechSetupDialog_moc.o layWidgets_moc.o layDialogs_moc.o layDisplayState_moc.o layBookmarkList_moc.o layLayoutView_moc.o layLayoutViewConfigPages_moc.o laySaveLayoutOptionsDialog_moc.o layLoadLayoutOptionsDialog_moc.o layHierarchyControlPanel_moc.o layLayerControlPanel_moc.o layDitherPattern_moc.o layLayerTreeModel_moc.o layBrowserDialog_moc.o layLogViewerDialog_moc.o layOASISWriterPlugin_moc.o layGDS2ReaderPlugin_moc.o layGDS2WriterPlugin_moc.o laySelector_moc.o layMove_moc.o tlDeferredExecution_moc.o SettingsFormImpl_moc.o RubyErrorFormImpl_moc.o ConfigurationDialogImpl_moc.o PropertiesDialogImpl_moc.o ClipDialogImpl_moc.o BrowseShapesFormImpl_moc.o BrowseInstancesFormImpl_moc.o CellSelectionFormImpl_moc.o SelectCellViewFormImpl_moc.o BookmarkManagementFormImpl_moc.o EditStipplesFormImpl_moc.o SelectStippleFormImpl_moc.o LayoutPropertiesFormImpl_moc.o EditStippleWidget_moc.o antConfigPage_moc.o antPropertiesPage_moc.o imgPropertiesPage_moc.o imgWidgets_moc.o edtPropertiesPages_moc.o edtInstPropertiesPage_moc.o edtEditorOptionsPages_moc.o edtDialogs_moc.o edtPartialService_moc.o gtf_moc.o rbaConsoleImpl_moc.o extXORToolDialog_moc.o extStreamImportDialog_moc.o extGerberImportDialog_moc.o extNetTracerDialog_moc.o extNetTracerConfig_moc.o rdbMarkerBrowser_moc.o rdbMarkerBrowserPage_moc.o rdbMarkerBrowserDialog_moc.o rdbInfoWidget_moc.o resources.o -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt
/usr/bin/ld: tlStream.o: undefined reference to symbol 'gzclose'
/usr/bin/ld: note: 'gzclose' is defined in DSO /lib/libz.so.1 so try adding it to the linker command line
/lib/libz.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
gmake[1]: *** [klayout] Error 1
gmake[1]: Leaving directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
gmake: *** [all] Error 1

Comments

  • edited August 2010

    Hi Aaron,

    Although I have not used Fedora myself yet, I guess the problem can be solved by explicitly adding the zlib library explicitly. To do so, please add "-lz" to line 30 of "config/Makefile.conf.linux-32-gcc-release" (if you are building a 32bit binary) or "config/Makefile.conf.linux-64-gcc-release" (if you are building a 64bit binary):

    LIBS=-L$(QTLIB) -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz
    

    In my case (Ubuntu), the zlib comes implicitly with the Qt libraries which does not seem to be the case for Fedora.

    I admit that is not clean. I'll add the zlib to the official Makefiles as well.

    Hopefully that helps.

    Best regards,

    Matthias

  • edited 11:28PM
    Matthias,

    thanks the quick reply!
    I try it immediately.
    It looks like lost another parameter.

    "undefined reference to symbol 'dlopen@@GLIBC_2.1'"

    Do I have to install anything ?
    Thanks!

    Aaron.






    [root@localhost klayout-0.20.2]# ./build.sh -qt /usr/lib/qt4 -qtinc /usr/include
    Qt installation directory is /usr/lib/qt4/lib (lib), /usr/lib/qt4/bin (tools) and /usr/include (includes)
    Ruby installation directory is (lib), (includes) and not-used (config for 1.9.x)
    Platform is linux-32-gcc-release
    Building plugins:

    Running build ..
    gmake
    for d in main ; do (gmake -C $d dep ; gmake -C $d all) || exit 1; done
    gmake[1]: Entering directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    gmake[1]: Nothing to be done for `dep'.
    gmake[1]: Leaving directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    gmake[1]: Entering directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    g++ -Wl,-E -o klayout layMain.o tlString.o tlInternational.o tlObserver.o tlTimer.o tlLog.o tlProgress.o tlXMLParser.o tlException.o tlCollection.o tlClassRegistry.o tlStream.o tlDeflate.o tlDataMapping.o tlVariant.o tlAssert.o tlThreadedWorkers.o dbObject.o dbUserObject.o dbClipboard.o dbClipboardData.o dbManager.o dbLayout.o dbLayerProperties.o dbLayoutDiff.o dbPCellDeclaration.o dbPCellVariant.o dbPCellHeader.o dbLibraryManager.o dbLibraryProxy.o dbCellMapping.o dbTrans.o dbPoint.o dbPath.o dbPolygon.o dbBox.o dbEdge.o dbCell.o dbClip.o dbCellInst.o dbBoxConvert.o dbInstances.o dbVector.o dbLayoutUtils.o dbLayoutStateModel.o dbStatic.o dbCellGraphUtils.o dbMemStatistics.o dbGDS2.o dbGDS2WriterBase.o dbGDS2Writer.o dbGDS2ReaderBase.o dbGDS2Reader.o dbTextWriter.o dbOASIS.o dbOASISReader.o dbOASISWriter.o dbPolygonTools.o dbReader.o dbWriter.o dbWriterTools.o dbStream.o dbShape.o dbShapes.o dbShapes2.o dbSaveLayoutOptions.o dbLoadLayoutOptions.o dbArray.o dbStreamLayers.o dbHershey.o dbPropertiesRepository.o dbInstElement.o dbEdgeProcessor.o layAnnotationShapes.o layApplication.o layParsedLayerSource.o layCursor.o layBrowser.o layMouseTracker.o layZoomBox.o layRubberBox.o layMarker.o layViewOp.o layVersion.o layCellView.o layRedrawLayerInfo.o layRedrawThread.o layRedrawThreadWorker.o layRedrawThreadCanvas.o layViewObject.o layEditable.o layProperties.o layPlugin.o layConverters.o layDrawing.o layCellTreeModel.o layColorPalette.o layStipplePalette.o layCanvasPlane.o layRenderer.o layBitmap.o layBitmapRenderer.o layBitmapsToImage.o laySvgRendering.o laySnap.o layFileDialog.o layLayerProperties.o layProgress.o layViewport.o layLayoutViewConfig.o layExceptions.o layStream.o layTechnology.o layFinder.o layObjectInstPath.o antConfig.o antPlugin.o antService.o antObject.o antTemplate.o imgObject.o imgPlugin.o imgService.o edtSnap.o edtPlugin.o edtConfig.o edtService.o edtServiceImpl.o edtUtils.o edtMainService.o rdb.o rdbFile.o rdbReader.o rdbRVEReader.o rba.o extXORPlugin.o extRS274XReader.o extRS274XApertures.o extStreamImport.o extStreamImporter.o extGerberDrillFileReader.o extGerberImport.o extGerberImporter.o extNetTracer.o dbGDS2Converter.o dbGDS2Text.o dbGDS2TextReader.o dbGDS2TextWriter.o layGridNet.o layProgressWidget.o layLayoutCanvas.o layAbstractMenu.o laySession.o layMainWindow.o layNavigator.o layMainConfigPages.o layTechSetupDialog.o layWidgets.o layDialogs.o layDisplayState.o layBookmarkList.o layLayoutView.o layLayoutViewConfigPages.o laySaveLayoutOptionsDialog.o layLoadLayoutOptionsDialog.o layHierarchyControlPanel.o layLayerControlPanel.o layDitherPattern.o layLayerTreeModel.o layBrowserDialog.o layLogViewerDialog.o layOASISWriterPlugin.o layGDS2ReaderPlugin.o layGDS2WriterPlugin.o laySelector.o layMove.o tlDeferredExecution.o SettingsFormImpl.o RubyErrorFormImpl.o ConfigurationDialogImpl.o PropertiesDialogImpl.o ClipDialogImpl.o BrowseShapesFormImpl.o BrowseInstancesFormImpl.o CellSelectionFormImpl.o SelectCellViewFormImpl.o BookmarkManagementFormImpl.o EditStipplesFormImpl.o SelectStippleFormImpl.o LayoutPropertiesFormImpl.o EditStippleWidget.o antConfigPage.o antPropertiesPage.o imgPropertiesPage.o imgWidgets.o edtPropertiesPages.o edtInstPropertiesPage.o edtEditorOptionsPages.o edtDialogs.o edtPartialService.o gtf.o rbaConsoleImpl.o extXORToolDialog.o extStreamImportDialog.o extGerberImportDialog.o extNetTracerDialog.o extNetTracerConfig.o rdbMarkerBrowser.o rdbMarkerBrowserPage.o rdbMarkerBrowserDialog.o rdbInfoWidget.o layGridNet_moc.o layProgressWidget_moc.o layLayoutCanvas_moc.o layAbstractMenu_moc.o laySession_moc.o layMainWindow_moc.o layNavigator_moc.o layMainConfigPages_moc.o layTechSetupDialog_moc.o layWidgets_moc.o layDialogs_moc.o layDisplayState_moc.o layBookmarkList_moc.o layLayoutView_moc.o layLayoutViewConfigPages_moc.o laySaveLayoutOptionsDialog_moc.o layLoadLayoutOptionsDialog_moc.o layHierarchyControlPanel_moc.o layLayerControlPanel_moc.o layDitherPattern_moc.o layLayerTreeModel_moc.o layBrowserDialog_moc.o layLogViewerDialog_moc.o layOASISWriterPlugin_moc.o layGDS2ReaderPlugin_moc.o layGDS2WriterPlugin_moc.o laySelector_moc.o layMove_moc.o tlDeferredExecution_moc.o SettingsFormImpl_moc.o RubyErrorFormImpl_moc.o ConfigurationDialogImpl_moc.o PropertiesDialogImpl_moc.o ClipDialogImpl_moc.o BrowseShapesFormImpl_moc.o BrowseInstancesFormImpl_moc.o CellSelectionFormImpl_moc.o SelectCellViewFormImpl_moc.o BookmarkManagementFormImpl_moc.o EditStipplesFormImpl_moc.o SelectStippleFormImpl_moc.o LayoutPropertiesFormImpl_moc.o EditStippleWidget_moc.o antConfigPage_moc.o antPropertiesPage_moc.o imgPropertiesPage_moc.o imgWidgets_moc.o edtPropertiesPages_moc.o edtInstPropertiesPage_moc.o edtEditorOptionsPages_moc.o edtDialogs_moc.o edtPartialService_moc.o gtf_moc.o rbaConsoleImpl_moc.o extXORToolDialog_moc.o extStreamImportDialog_moc.o extGerberImportDialog_moc.o extNetTracerDialog_moc.o extNetTracerConfig_moc.o rdbMarkerBrowser_moc.o rdbMarkerBrowserPage_moc.o rdbMarkerBrowserDialog_moc.o rdbInfoWidget_moc.o resources.o -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz
    /usr/bin/ld: layApplication.o: undefined reference to symbol 'dlopen@@GLIBC_2.1'
    /usr/bin/ld: note: 'dlopen@@GLIBC_2.1' is defined in DSO /lib/libdl.so.2 so try adding it to the linker command line
    /lib/libdl.so.2: could not read symbols: Invalid operation
    collect2: ld returned 1 exit status
    gmake[1]: *** [klayout] Error 1
    gmake[1]: Leaving directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    gmake: *** [all] Error 1
  • edited 11:28PM
    Matthias,

    I add -ldl in the file you told me. It works!
    I can run klayout and open GDS file. It looks great.
    About following message, do I have to do something?

    Aaron.

    "
    To run it, you may need to add the following to your LD_LIBRARY_PATH:
    /usr/lib/qt4/lib
    QGtkStyle was unable to detect the current GTK+ theme.
    Qt: Session management error: None of the authentication protocols specified are supported
    KLayout 0.20.2
    QGtkStyle was unable to detect the current GTK+ theme.
    Qt: Session management error: None of the authentication protocols specified are supported
    "








    [root@localhost klayout-0.20.2]# ./build.sh -qt /usr/lib/qt4 -qtinc /usr/include
    Qt installation directory is /usr/lib/qt4/lib (lib), /usr/lib/qt4/bin (tools) and /usr/include (includes)
    Ruby installation directory is (lib), (includes) and not-used (config for 1.9.x)
    Platform is linux-32-gcc-release
    Building plugins:

    Running build ..
    gmake
    for d in main ; do (gmake -C $d dep ; gmake -C $d all) || exit 1; done
    gmake[1]: Entering directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    gmake[1]: Nothing to be done for `dep'.
    gmake[1]: Leaving directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    gmake[1]: Entering directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'
    g++ -Wl,-E -o klayout layMain.o tlString.o tlInternational.o tlObserver.o tlTimer.o tlLog.o tlProgress.o tlXMLParser.o tlException.o tlCollection.o tlClassRegistry.o tlStream.o tlDeflate.o tlDataMapping.o tlVariant.o tlAssert.o tlThreadedWorkers.o dbObject.o dbUserObject.o dbClipboard.o dbClipboardData.o dbManager.o dbLayout.o dbLayerProperties.o dbLayoutDiff.o dbPCellDeclaration.o dbPCellVariant.o dbPCellHeader.o dbLibraryManager.o dbLibraryProxy.o dbCellMapping.o dbTrans.o dbPoint.o dbPath.o dbPolygon.o dbBox.o dbEdge.o dbCell.o dbClip.o dbCellInst.o dbBoxConvert.o dbInstances.o dbVector.o dbLayoutUtils.o dbLayoutStateModel.o dbStatic.o dbCellGraphUtils.o dbMemStatistics.o dbGDS2.o dbGDS2WriterBase.o dbGDS2Writer.o dbGDS2ReaderBase.o dbGDS2Reader.o dbTextWriter.o dbOASIS.o dbOASISReader.o dbOASISWriter.o dbPolygonTools.o dbReader.o dbWriter.o dbWriterTools.o dbStream.o dbShape.o dbShapes.o dbShapes2.o dbSaveLayoutOptions.o dbLoadLayoutOptions.o dbArray.o dbStreamLayers.o dbHershey.o dbPropertiesRepository.o dbInstElement.o dbEdgeProcessor.o layAnnotationShapes.o layApplication.o layParsedLayerSource.o layCursor.o layBrowser.o layMouseTracker.o layZoomBox.o layRubberBox.o layMarker.o layViewOp.o layVersion.o layCellView.o layRedrawLayerInfo.o layRedrawThread.o layRedrawThreadWorker.o layRedrawThreadCanvas.o layViewObject.o layEditable.o layProperties.o layPlugin.o layConverters.o layDrawing.o layCellTreeModel.o layColorPalette.o layStipplePalette.o layCanvasPlane.o layRenderer.o layBitmap.o layBitmapRenderer.o layBitmapsToImage.o laySvgRendering.o laySnap.o layFileDialog.o layLayerProperties.o layProgress.o layViewport.o layLayoutViewConfig.o layExceptions.o layStream.o layTechnology.o layFinder.o layObjectInstPath.o antConfig.o antPlugin.o antService.o antObject.o antTemplate.o imgObject.o imgPlugin.o imgService.o edtSnap.o edtPlugin.o edtConfig.o edtService.o edtServiceImpl.o edtUtils.o edtMainService.o rdb.o rdbFile.o rdbReader.o rdbRVEReader.o rba.o extXORPlugin.o extRS274XReader.o extRS274XApertures.o extStreamImport.o extStreamImporter.o extGerberDrillFileReader.o extGerberImport.o extGerberImporter.o extNetTracer.o dbGDS2Converter.o dbGDS2Text.o dbGDS2TextReader.o dbGDS2TextWriter.o layGridNet.o layProgressWidget.o layLayoutCanvas.o layAbstractMenu.o laySession.o layMainWindow.o layNavigator.o layMainConfigPages.o layTechSetupDialog.o layWidgets.o layDialogs.o layDisplayState.o layBookmarkList.o layLayoutView.o layLayoutViewConfigPages.o laySaveLayoutOptionsDialog.o layLoadLayoutOptionsDialog.o layHierarchyControlPanel.o layLayerControlPanel.o layDitherPattern.o layLayerTreeModel.o layBrowserDialog.o layLogViewerDialog.o layOASISWriterPlugin.o layGDS2ReaderPlugin.o layGDS2WriterPlugin.o laySelector.o layMove.o tlDeferredExecution.o SettingsFormImpl.o RubyErrorFormImpl.o ConfigurationDialogImpl.o PropertiesDialogImpl.o ClipDialogImpl.o BrowseShapesFormImpl.o BrowseInstancesFormImpl.o CellSelectionFormImpl.o SelectCellViewFormImpl.o BookmarkManagementFormImpl.o EditStipplesFormImpl.o SelectStippleFormImpl.o LayoutPropertiesFormImpl.o EditStippleWidget.o antConfigPage.o antPropertiesPage.o imgPropertiesPage.o imgWidgets.o edtPropertiesPages.o edtInstPropertiesPage.o edtEditorOptionsPages.o edtDialogs.o edtPartialService.o gtf.o rbaConsoleImpl.o extXORToolDialog.o extStreamImportDialog.o extGerberImportDialog.o extNetTracerDialog.o extNetTracerConfig.o rdbMarkerBrowser.o rdbMarkerBrowserPage.o rdbMarkerBrowserDialog.o rdbInfoWidget.o layGridNet_moc.o layProgressWidget_moc.o layLayoutCanvas_moc.o layAbstractMenu_moc.o laySession_moc.o layMainWindow_moc.o layNavigator_moc.o layMainConfigPages_moc.o layTechSetupDialog_moc.o layWidgets_moc.o layDialogs_moc.o layDisplayState_moc.o layBookmarkList_moc.o layLayoutView_moc.o layLayoutViewConfigPages_moc.o laySaveLayoutOptionsDialog_moc.o layLoadLayoutOptionsDialog_moc.o layHierarchyControlPanel_moc.o layLayerControlPanel_moc.o layDitherPattern_moc.o layLayerTreeModel_moc.o layBrowserDialog_moc.o layLogViewerDialog_moc.o layOASISWriterPlugin_moc.o layGDS2ReaderPlugin_moc.o layGDS2WriterPlugin_moc.o laySelector_moc.o layMove_moc.o tlDeferredExecution_moc.o SettingsFormImpl_moc.o RubyErrorFormImpl_moc.o ConfigurationDialogImpl_moc.o PropertiesDialogImpl_moc.o ClipDialogImpl_moc.o BrowseShapesFormImpl_moc.o BrowseInstancesFormImpl_moc.o CellSelectionFormImpl_moc.o SelectCellViewFormImpl_moc.o BookmarkManagementFormImpl_moc.o EditStipplesFormImpl_moc.o SelectStippleFormImpl_moc.o LayoutPropertiesFormImpl_moc.o EditStippleWidget_moc.o antConfigPage_moc.o antPropertiesPage_moc.o imgPropertiesPage_moc.o imgWidgets_moc.o edtPropertiesPages_moc.o edtInstPropertiesPage_moc.o edtEditorOptionsPages_moc.o edtDialogs_moc.o edtPartialService_moc.o gtf_moc.o rbaConsoleImpl_moc.o extXORToolDialog_moc.o extStreamImportDialog_moc.o extGerberImportDialog_moc.o extNetTracerDialog_moc.o extNetTracerConfig_moc.o rdbMarkerBrowser_moc.o rdbMarkerBrowserPage_moc.o rdbMarkerBrowserDialog_moc.o rdbInfoWidget_moc.o resources.o -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o strm2gds.o /home/Aaron/Downloads/klayout-0.20.2/src/strm2gds.cc
    gcc -DQT_THREAD_SUPPORT -DQT3_SUPPORT -MM -MG -x c++ /home/Aaron/Downloads/klayout-0.20.2/src/dbForceLinkStreams.cc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include >dbForceLinkStreams.d || (rm -rf dbForceLinkStreams.d; exit 1)
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o dbForceLinkStreams.o /home/Aaron/Downloads/klayout-0.20.2/src/dbForceLinkStreams.cc
    ar -r common.a tlString.o tlInternational.o tlObserver.o tlTimer.o tlLog.o tlProgress.o tlXMLParser.o tlException.o tlCollection.o tlClassRegistry.o tlStream.o tlDeflate.o tlDataMapping.o tlVariant.o tlAssert.o tlThreadedWorkers.o dbObject.o dbUserObject.o dbClipboard.o dbClipboardData.o dbManager.o dbLayout.o dbLayerProperties.o dbLayoutDiff.o dbPCellDeclaration.o dbPCellVariant.o dbPCellHeader.o dbLibraryManager.o dbLibraryProxy.o dbCellMapping.o dbTrans.o dbPoint.o dbPath.o dbPolygon.o dbBox.o dbEdge.o dbCell.o dbClip.o dbCellInst.o dbBoxConvert.o dbInstances.o dbVector.o dbLayoutUtils.o dbLayoutStateModel.o dbStatic.o dbCellGraphUtils.o dbMemStatistics.o dbGDS2.o dbGDS2WriterBase.o dbGDS2Writer.o dbGDS2ReaderBase.o dbGDS2Reader.o dbTextWriter.o dbOASIS.o dbOASISReader.o dbOASISWriter.o dbPolygonTools.o dbReader.o dbWriter.o dbWriterTools.o dbStream.o dbShape.o dbShapes.o dbShapes2.o dbSaveLayoutOptions.o dbLoadLayoutOptions.o dbArray.o dbStreamLayers.o dbHershey.o dbPropertiesRepository.o dbInstElement.o dbEdgeProcessor.o layAnnotationShapes.o layApplication.o layParsedLayerSource.o layCursor.o layBrowser.o layMouseTracker.o layZoomBox.o layRubberBox.o layMarker.o layViewOp.o layVersion.o layCellView.o layRedrawLayerInfo.o layRedrawThread.o layRedrawThreadWorker.o layRedrawThreadCanvas.o layViewObject.o layEditable.o layProperties.o layPlugin.o layConverters.o layDrawing.o layCellTreeModel.o layColorPalette.o layStipplePalette.o layCanvasPlane.o layRenderer.o layBitmap.o layBitmapRenderer.o layBitmapsToImage.o laySvgRendering.o laySnap.o layFileDialog.o layLayerProperties.o layProgress.o layViewport.o layLayoutViewConfig.o layExceptions.o layStream.o layTechnology.o layFinder.o layObjectInstPath.o antConfig.o antPlugin.o antService.o antObject.o antTemplate.o imgObject.o imgPlugin.o imgService.o edtSnap.o edtPlugin.o edtConfig.o edtService.o edtServiceImpl.o edtUtils.o edtMainService.o rdb.o rdbFile.o rdbReader.o rdbRVEReader.o rba.o extXORPlugin.o extRS274XReader.o extRS274XApertures.o extStreamImport.o extStreamImporter.o extGerberDrillFileReader.o extGerberImport.o extGerberImporter.o extNetTracer.o dbGDS2Converter.o dbGDS2Text.o dbGDS2TextReader.o dbGDS2TextWriter.o layGridNet.o layProgressWidget.o layLayoutCanvas.o layAbstractMenu.o laySession.o layMainWindow.o layNavigator.o layMainConfigPages.o layTechSetupDialog.o layWidgets.o layDialogs.o layDisplayState.o layBookmarkList.o layLayoutView.o layLayoutViewConfigPages.o laySaveLayoutOptionsDialog.o layLoadLayoutOptionsDialog.o layHierarchyControlPanel.o layLayerControlPanel.o layDitherPattern.o layLayerTreeModel.o layBrowserDialog.o layLogViewerDialog.o layOASISWriterPlugin.o layGDS2ReaderPlugin.o layGDS2WriterPlugin.o laySelector.o layMove.o tlDeferredExecution.o SettingsFormImpl.o RubyErrorFormImpl.o ConfigurationDialogImpl.o PropertiesDialogImpl.o ClipDialogImpl.o BrowseShapesFormImpl.o BrowseInstancesFormImpl.o CellSelectionFormImpl.o SelectCellViewFormImpl.o BookmarkManagementFormImpl.o EditStipplesFormImpl.o SelectStippleFormImpl.o LayoutPropertiesFormImpl.o EditStippleWidget.o antConfigPage.o antPropertiesPage.o imgPropertiesPage.o imgWidgets.o edtPropertiesPages.o edtInstPropertiesPage.o edtEditorOptionsPages.o edtDialogs.o edtPartialService.o gtf.o rbaConsoleImpl.o extXORToolDialog.o extStreamImportDialog.o extGerberImportDialog.o extNetTracerDialog.o extNetTracerConfig.o rdbMarkerBrowser.o rdbMarkerBrowserPage.o rdbMarkerBrowserDialog.o rdbInfoWidget.o layGridNet_moc.o layProgressWidget_moc.o layLayoutCanvas_moc.o layAbstractMenu_moc.o laySession_moc.o layMainWindow_moc.o layNavigator_moc.o layMainConfigPages_moc.o layTechSetupDialog_moc.o layWidgets_moc.o layDialogs_moc.o layDisplayState_moc.o layBookmarkList_moc.o layLayoutView_moc.o layLayoutViewConfigPages_moc.o laySaveLayoutOptionsDialog_moc.o layLoadLayoutOptionsDialog_moc.o layHierarchyControlPanel_moc.o layLayerControlPanel_moc.o layDitherPattern_moc.o layLayerTreeModel_moc.o layBrowserDialog_moc.o layLogViewerDialog_moc.o layOASISWriterPlugin_moc.o layGDS2ReaderPlugin_moc.o layGDS2WriterPlugin_moc.o laySelector_moc.o layMove_moc.o tlDeferredExecution_moc.o SettingsFormImpl_moc.o RubyErrorFormImpl_moc.o ConfigurationDialogImpl_moc.o PropertiesDialogImpl_moc.o ClipDialogImpl_moc.o BrowseShapesFormImpl_moc.o BrowseInstancesFormImpl_moc.o CellSelectionFormImpl_moc.o SelectCellViewFormImpl_moc.o BookmarkManagementFormImpl_moc.o EditStipplesFormImpl_moc.o SelectStippleFormImpl_moc.o LayoutPropertiesFormImpl_moc.o EditStippleWidget_moc.o antConfigPage_moc.o antPropertiesPage_moc.o imgPropertiesPage_moc.o imgWidgets_moc.o edtPropertiesPages_moc.o edtInstPropertiesPage_moc.o edtEditorOptionsPages_moc.o edtDialogs_moc.o edtPartialService_moc.o gtf_moc.o rbaConsoleImpl_moc.o extXORToolDialog_moc.o extStreamImportDialog_moc.o extGerberImportDialog_moc.o extNetTracerDialog_moc.o extNetTracerConfig_moc.o rdbMarkerBrowser_moc.o rdbMarkerBrowserPage_moc.o rdbMarkerBrowserDialog_moc.o rdbInfoWidget_moc.o resources.o
    ar: creating common.a
    g++ -Wl,-E -o strm2gds strm2gds.o dbForceLinkStreams.o common.a -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o strm2oas.o /home/Aaron/Downloads/klayout-0.20.2/src/strm2oas.cc
    g++ -Wl,-E -o strm2oas strm2oas.o dbForceLinkStreams.o common.a -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o strm2txt.o /home/Aaron/Downloads/klayout-0.20.2/src/strm2txt.cc
    g++ -Wl,-E -o strm2txt strm2txt.o dbForceLinkStreams.o common.a -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o strmcmp.o /home/Aaron/Downloads/klayout-0.20.2/src/strmcmp.cc
    g++ -Wl,-E -o strmcmp strmcmp.o dbForceLinkStreams.o common.a -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o strmclip.o /home/Aaron/Downloads/klayout-0.20.2/src/strmclip.cc
    g++ -Wl,-E -o strmclip strmclip.o dbForceLinkStreams.o common.a -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gcc -I/home/Aaron/Downloads/klayout-0.20.2/src -I/home/Aaron/Downloads/klayout-0.20.2/src -I. -I/usr/include -Wall -pedantic -Wno-deprecated -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-long -Wno-strict-aliasing -DQT_THREAD_SUPPORT -DQT3_SUPPORT -c -O3 -x c++ -o strmxor.o /home/Aaron/Downloads/klayout-0.20.2/src/strmxor.cc
    g++ -Wl,-E -o strmxor strmxor.o dbForceLinkStreams.o common.a -L/usr/lib/qt4/lib -lQtGui -lQtCore -lQtXml -lrt -lstdc++ -lcrypt -lz -ldl
    gmake[1]: Leaving directory `/home/Aaron/Downloads/klayout-0.20.2/build.linux-32-gcc-release/main'

    Installing binaries ..
    mkdir -p /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release
    cp main/klayout /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release
    for bin in strm2gds strm2oas strmcmp strmclip ; \
    do \
    cp main/$bin /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release ; \
    done
    for plugin in ; \
    do \
    cp $plugin/*.so /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release ; \
    done
    chmod 755 /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release/*
    Build done.

    Final binary is ready in /home/Aaron/Downloads/klayout-0.20.2/bin.linux-32-gcc-release/klayout.
    To run it, you may need to add the following to your LD_LIBRARY_PATH:
    /usr/lib/qt4/lib
    QGtkStyle was unable to detect the current GTK+ theme.
    Qt: Session management error: None of the authentication protocols specified are supported
    KLayout 0.20.2
    QGtkStyle was unable to detect the current GTK+ theme.
    Qt: Session management error: None of the authentication protocols specified are supported
    klayout [<options>] [<file>] ..
    options
    -c <config file> Use this configuration file
    -d <debug level> Set debug level
    -e Editable mode (allow editing of files)
    -ne Readonly mode (editing of files is disabled)
    -gr <file name> Record GUI test file
    -gp <file name> Replay GUI test file
    -gb <line number> Replay GUI test file up to (including) line
    -gx <millisec> Replay rate for GUI test file
    -gi Incremental logs for GUI test file
    -i Disable undo buffering (less memory requirements)
    -ni Enable undo buffering (default, overrides previous -i option)
    -l <layer file> Use layer definition file
    -m <database file> Load RDB (report database) file (into previous layout view)
    -p <plugin> Load the plugin (can be used multiple times)
    -s Load files into same view
    -t Don't update the configuration file on exit
    -u <file name> Restore session from given file
    -v Print program version and exit
    -x Synchronous drawing mode
    -z Non-GUI mode
  • edited 11:28PM

    Hi Aaron,

    thanks for that hint. I'll all -ldl to the official Makefiles as well.

    Regarding the error message: that is a known bug in Qt 4.6.2 (http://bugreports.qt.nokia.com/browse/QTBUG-9240). I get the same error message on Ubuntu. Since I am not (knowingly) using session management, I guess you can ignore this message. Apparently it will be fixed in 4.6.3.

    Best regards,

    Matthias

  • edited 11:28PM
    I built klayout-0.20.2 on Fedora 11 with this command:

    ./build.sh -qtlib /usr/lib64 -qtinc /usr/include -qtbin /usr/lib64/qt4/bin

    No other changes to klayout were required.

    I re-wrote part of the build instructions to explain this, and I will be sending it to you, Matthias.
Sign In or Register to comment.