I'm trying to build Gtk2-perl on MinGW. I have a Perl compiled with MinGW under "E:\perl-5.8.7", and MinGW itself and the Gtk2 libs are under "E: \msys\1.0\mingw". It's being linked with the command below. Note that it's linked using g++ because Perl itself (for some reason) is linked using g++ when built with MinGW, and so all xs modules also get linked using g++. ---- g++ -o blib\arch\auto\Gtk2\Gtk2.dll -Wl,--base-file -Wl,dll.base -mdll -s -L"e:\perl-5.8.7\lib\CORE" -L"e:\msys\1.0\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 E:\perl-5.8.7\lib\CORE\libperl58.a e: \msys\1.0\mingw\lib\libgdi32.a e:\msys\1.0\mingw\lib\libmsvcrt.a e: \msys\1.0\mingw\lib\libmoldname.a e:\msys\1.0\mingw\lib\libkernel32.a e: \msys\1.0\mingw\lib\libuser32.a e:\msys\1.0\mingw\lib\libgdi32.a e: \msys\1.0\mingw\lib\libwinspool.a e:\msys\1.0\mingw\lib\libcomdlg32.a e: \msys\1.0\mingw\lib\libadvapi32.a e:\msys\1.0\mingw\lib\libshell32.a e: \msys\1.0\mingw\lib\libole32.a e:\msys\1.0\mingw\lib\liboleaut32.a e: \msys\1.0\mingw\lib\libnetapi32.a e:\msys\1.0\mingw\lib\libuuid.a e: \msys\1.0\mingw\lib\libws2_32.a e:\msys\1.0\mingw\lib\libmpr.a e: \msys\1.0\mingw\lib\libwinmm.a e:\msys\1.0\mingw\lib\libversion.a e: \msys\1.0\mingw\lib\libodbc32.a dll.exp -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lperl58 ---- But this gives these errors: ---- xs/Gdk.o(.text+0x75):Gdk.c: undefined reference to `gperl_argv_new' xs/Gdk.o(.text+0x9a):Gdk.c: undefined reference to `gperl_argv_update' xs/Gdk.o(.text+0xa2):Gdk.c: undefined reference to `gperl_argv_free' xs/Gdk.o(.text+0x1d8):Gdk.c: undefined reference to `gperl_argv_new' <snip about 4000 more> ---- And that's where I'm stuck.
Attachment:
pgpporeon6muy.pgp
Description: PGP signature