Line too long on windows with msys



Hi,

Deep into installing  Gtk2 on windows using msys  and mingw I ran
into the  infamous line  too long' problem  at the  final linking
stage of Gtk2.dll.

Re-reading  my  archive  of  the  list  gives  no  solutions  and
searching  google does not  even gave  me the  exact size  of the
limit :-/

So far I have pretty long command to handle:

g++ -o blib\arch\auto\Gtk2\Gtk2.dll -Wl,--base-file -Wl,dll.base -mdll -s -L"c:\perl\lib\CORE" 
-L"C:\MinGW\lib" xs/Gdk.o xs/GdkColor.o xs/GdkCursor.o xs/GdkDnd.o xs/GdkDrawable.o xs/GdkEvent.o xs/GdkGC.o 
xs/GdkInput.o xs/GdkKeys.o xs/GdkPixbuf.o xs/GdkPixbufLoader.o xs/GdkPixmap.o xs/GdkProperty.o xs/GdkRegion.o 
xs/GdkRgb.o xs/GdkSelection.o xs/GdkTypes.o xs/GdkVisual.o xs/GdkWindow.o xs/Gtk2.o xs/GtkAccelGroup.o 
xs/GtkAccelLabel.o xs/GtkAccelMap.o xs/GtkAdjustment.o xs/GtkAlignment.o xs/GtkArrow.o xs/GtkAspectFrame.o 
xs/GtkBin.o xs/GtkBox.o xs/GtkButton.o xs/GtkButtonBox.o xs/GtkCalendar.o xs/GtkCellEditable.o 
xs/GtkCellRenderer.o xs/GtkCellRendererPixbuf.o xs/GtkCellRendererText.o xs/GtkCellRendererToggle.o 
xs/GtkCheckButton.o xs/GtkCheckMenuItem.o xs/GtkColorSelection.o xs/GtkColorSelectionDialog.o xs/GtkCombo.o 
xs/GtkContainer.o xs/GtkCurve.o xs/GtkDialog.o xs/GtkDnd.o xs/GtkDrawingArea.o xs/GtkEditable.o xs/GtkEntry.o 
xs/GtkEventBox.o xs/GtkFileSelection.o xs/GtkFixed.o xs/GtkFontSelection.o xs/GtkFrame.o xs/GtkGC.o 
xs/GtkGammaCurve.o xs/GtkHBox.o xs/GtkHButtonBox.o xs/GtkHPaned.o xs/GtkHRuler.o xs/GtkHScale.o 
xs/GtkHScrollbar.o xs/GtkHSeparator.o xs/GtkHandleBox.o xs/GtkIconFactory.o xs/GtkImage.o 
xs/GtkImageMenuItem.o xs/GtkInputDialog.o xs/GtkInvisible.o xs/GtkItem.o xs/GtkItemFactory.o xs/GtkLabel.o 
xs/GtkLayout.o xs/GtkList.o xs/GtkListItem.o xs/GtkListStore.o xs/GtkMenu.o xs/GtkMenuBar.o xs/GtkMenuItem.o 
xs/GtkMenuShell.o xs/GtkMessageDialog.o xs/GtkMisc.o xs/GtkNotebook.o xs/GtkObject.o xs/GtkOptionMenu.o 
xs/GtkPaned.o xs/GtkPlug.o xs/GtkProgressBar.o xs/GtkRadioButton.o xs/GtkRadioMenuItem.o xs/GtkRange.o 
xs/GtkRc.o xs/GtkRuler.o xs/GtkScale.o xs/GtkScrolledWindow.o xs/GtkSelection.o xs/GtkSeparatorMenuItem.o 
xs/GtkSizeGroup.o xs/GtkSocket.o xs/GtkSpinButton.o xs/GtkStatusbar.o xs/GtkStock.o xs/GtkStyle.o 
xs/GtkTable.o xs/GtkTearoffMenuItem.o xs/GtkTextChildAnchor.o xs/GtkTextBuffer.o xs/GtkTextIter.o 
xs/GtkTextMark.o xs/GtkTextTag.o xs/GtkTextTagTable.o xs/GtkTextView.o xs/GtkToggleButton.o xs/GtkToolbar.o 
xs/GtkTooltips.o xs/GtkTreeDnd.o xs/GtkTreeModel.o xs/GtkTreeModelSort.o xs/GtkTreeSelection.o 
xs/GtkTreeSortable.o xs/GtkTreeStore.o xs/GtkTreeView.o xs/GtkTreeViewColumn.o xs/GtkVBox.o 
xs/GtkVButtonBox.o xs/GtkVPaned.o xs/GtkVRuler.o xs/GtkVScale.o xs/GtkVScrollbar.o xs/GtkVSeparator.o 
xs/GtkViewport.o xs/GtkWidget.o xs/GtkWindow.o xs/PangoAttributes.o xs/PangoContext.o xs/PangoFont.o 
xs/PangoFontset.o xs/PangoFontMap.o xs/PangoLayout.o xs/PangoRenderer.o xs/PangoScript.o xs/PangoTabs.o 
xs/PangoTypes.o xs/GdkDisplay.o xs/GdkDisplayManager.o xs/GdkScreen.o xs/GtkClipboard.o xs/GtkAction.o 
xs/GtkActionGroup.o xs/GtkCellLayout.o xs/GtkColorButton.o xs/GtkComboBox.o xs/GtkComboBoxEntry.o 
xs/GtkEntryCompletion.o xs/GtkExpander.o xs/GtkFileChooser.o xs/GtkFileChooserDialog.o 
xs/GtkFileChooserWidget.o xs/GtkFileFilter.o xs/GtkFontButton.o xs/GtkIconTheme.o xs/GtkRadioAction.o 
xs/GtkRadioToolButton.o xs/GtkSeparatorToolItem.o xs/GtkToggleAction.o xs/GtkToggleToolButton.o 
xs/GtkToolButton.o xs/GtkToolItem.o xs/GtkTreeModelFilter.o xs/GtkUIManager.o xs/GdkPango.o 
xs/GtkAboutDialog.o xs/GtkCellRendererCombo.o xs/GtkCellRendererProgress.o xs/GtkCellView.o 
xs/GtkFileChooserButton.o xs/GtkIconView.o xs/GtkMenuToolButton.o -Wl,--image-base,0x69100000  
C:\perl\lib\CORE\libperl58.a C:\PhD\lib\libgtk-win32-2.0.dll.a C:\PhD\lib\libgdk-win32-2.0.dll.a 
C:\PhD\lib\libatk-1.0.dll.a C:\PhD\lib\libgdk_pixbuf-2.0.dll.a C:\PhD\lib\libpangowin32-1.0.dll.a 
C:\MinGW\lib\libgdi32.a C:\PhD\lib\libpango-1.0.dll.a C:\PhD\lib\libgobject-2.0.dll.a 
C:\PhD\lib\libgmodule-2.0.dll.a C:\PhD\lib\libglib-2.0.dll.a C:\PhD\lib\libintl.a C:\PhD\lib\libiconv.a 
C:\PhD\lib\libgthread-2.0.dll.a C:\MinGW\lib\libmsvcrt.a C:\MinGW\lib\libmoldname.a 
C:\MinGW\lib\libkernel32.a C:\MinGW\lib\libuser32.a C:\MinGW\lib\libgdi32.a C:\MinGW\lib\libwinspool.a 
C:\MinGW\lib\libcomdlg32.a C:\MinGW\lib\libadvapi32.a C:\MinGW\lib\libshell32.a C:\MinGW\lib\libole32.a 
C:\MinGW\lib\liboleaut32.a C:\MinGW\lib\libnetapi32.a C:\MinGW\lib\libuuid.a C:\MinGW\lib\libws2_32.a 
C:\MinGW\lib\libmpr.a C:\MinGW\lib\libwinmm.a C:\MinGW\lib\libversion.a C:\MinGW\lib\libodbc32.a dll.exp


Questions :

- can we put  all the object filenames into a  file and give that
  to g++ ?
 
- can we create intermediate libraries and give them to the final
  link stage ?

Any advice taken !

Will  provide full instructions  to do  it yourself  when problem
solved !

Thanks in advance :)

       Vincent

Some versions :
perl => 5.8.7 (build with mingw g++)
ExtUtils-Depends => 0.205
ExtUtils-PkgConfig => 1.07
Glib => 1.105 (the latest stable or not ?)(builds, some tests failed)
Gtk2 => 1.104 (latest stable ?)
ExtUtils-MakeMaker => 6.30 (updated fron CPAN but patched anyway to recognize some libs)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]