Opened 18 years ago

Closed 18 years ago

Last modified 16 years ago

#11258 closed defect (fixed)

wxwidgets-devel build fails due to missing identifier in link

Reported by: yaseppochi (Stephen J. Turnbull) Owned by: jyrkiwahlstedt
Priority: High Milestone:
Component: ports Version: 1.3.2
Keywords: Cc: jyrkiwahlstedt,markd@…
Port:

Description

port version says: 1.400

blocks upgrade of py-wxpython

port outdated says: py-wxpython 2.6.3.2_0 < 2.8.0.1_0

port list wxwidgets-devel says: wxWidgets-devel @2007-01-04   graphics/wxWidgets-devel

port upgrade wxwidgets-devel eventually dies, saying:

---> Building wxWidgets-devel Error: Target com.apple.build returned: shell command "cd /opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build && make -C contrib/src/gizmos" returned error 2 Command output: /usr/bin/g++-4.0 -dynamiclib -single_module -headerpad_max_install_names -o /opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build/lib/libwx_macu_gizmos-2.8.0.0.0.dylib gizmosdll_dynamicsash.o gizmosdll_editlbox.o gizmosdll_ledctrl.o gizmosdll_multicell.o gizmosdll_splittree.o gizmosdll_statpict.o -L/opt/local/lib -L/opt/local/lib -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -L/opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build/lib -install_name /opt/local/lib/libwx_macu_gizmos-2.8.0.dylib -compatibility_version 1.0 -current_version 1.0 -lz -lpthread -liconv -lwx_macu-2.8 -lwxregexu-2.8 -L/opt/local/lib -L/opt/local/lib -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -lz -lpthread -liconv -lpng -lz -ljpeg -ltiff -framework WebKit ld: warning prebinding disabled because dependent library: /opt/local/lib/libiconv.2.dylib is not prebound ld: Undefined symbols: ZN10wxListCtrl8SetFocusEv /usr/bin/libtool: internal link edit command failed make: * opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build/lib/libwx_macu_gizmos-2.8.0.0.0.dylib Error 1

---> Building wxWidgets-devel Error: Target com.apple.build returned: shell command "cd /opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build && make -C contrib/src/gizmos" returned error 2 Command output: /usr/bin/g++-4.0 -dynamiclib -single_module -headerpad_max_install_names -o /opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build/lib/libwx_macu_gizmos-2.8.0.0.0.dylib gizmosdll_dynamicsash.o gizmosdll_editlbox.o gizmosdll_ledctrl.o gizmosdll_multicell.o gizmosdll_splittree.o gizmosdll_statpict.o -L/opt/local/lib -L/opt/local/lib -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -L/opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build/lib -install_name /opt/local/lib/libwx_macu_gizmos-2.8.0.dylib -compatibility_version 1.0 -current_version 1.0 -lz -lpthread -liconv -lwx_macu-2.8 -lwxregexu-2.8 -L/opt/local/lib -L/opt/local/lib -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -lz -lpthread -liconv -lpng -lz -ljpeg -ltiff -framework WebKit ld: warning prebinding disabled because dependent library: /opt/local/lib/libiconv.2.dylib is not prebound ld: Undefined symbols: ZN10wxListCtrl8SetFocusEv /usr/bin/libtool: internal link edit command failed make: * opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2007-01-04/build/lib/libwx_macu_gizmos-2.8.0.0.0.dylib Error 1

Error: The following dependencies failed to build: wxWidgets-devel Error: Unable to upgrade port: 1

Change History (8)

comment:1 Changed 18 years ago by yaseppochi (Stephen J. Turnbull)

Still broken after updating 2007-02-02T16:00:00.

port info wxwidgets-devel says:

wxWidgets-devel 2007-01-29, graphics/wxWidgets-devel (Variants: darwin_8)

port upgrade wxwidgets-devel fails in exactly the same way.

comment:2 Changed 18 years ago by yaseppochi (Stephen J. Turnbull)

Updated to -r 22021.

port version claims 1.400, but is a few weeks old. port HEAD is broken for me as of -r 22014 (reported elsewhere).

wxwidgets-devel is still broken after moving to 2.8.2-rc1, in the same way as previous:

/usr/bin/g++-4.0 -dynamiclib -single_module -headerpad_max_install_names -o /opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2.8.2-rc1/build/lib/libwx_macu_gizmos-2.8.0.1.0.dylib  gizmosdll_dynamicsash.o gizmosdll_editlbox.o gizmosdll_ledctrl.o gizmosdll_multicell.o gizmosdll_splittree.o gizmosdll_statpict.o -L/opt/local/lib -L/opt/local/lib -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System    -L/opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2.8.2-rc1/build/lib -install_name /opt/local/lib/libwx_macu_gizmos-2.8.0.dylib   -compatibility_version 2.0 -current_version 2.0  -lz -lpthread -liconv -lwx_macu-2.8       -lwxregexu-2.8  -L/opt/local/lib -L/opt/local/lib -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System  -lz -lpthread -liconv  -lpng -lz -ljpeg -ltiff -framework WebKit   
ld: warning prebinding disabled because dependent library: /opt/local/lib/libiconv.2.dylib is not prebound
ld: Undefined symbols:
__ZN10wxListCtrl8SetFocusEv
/usr/bin/libtool: internal link edit command failed
make: *** [/opt/local/var/db/dports/build/_Users_steve_Software_MacPorts_dports_graphics_wxWidgets-devel/work/wxWidgets-2.8.2-rc1/build/lib/libwx_macu_gizmos-2.8.0.1.0.dylib] Error 1

chibi:MacPorts steve$ port version
Version: 1.400

comment:3 Changed 18 years ago by yaseppochi (Stephen J. Turnbull)

The above report is for my home machine which is Mac OS X 10.4 (micro version is probably .8, but I can't check at the moment).

Now I'm at work and my PowerBook G4 running Mac OS X 10.3.9 successfully upgraded overnight:

Turnbull-Stephen% sudo port upgrade py-wxpython
Password:
Portfile changed since last build; discarding previous state.
--->  Fetching python25
--->  Attempting to fetch Python-2.5.tar.bz2 from http://www.python.org/ftp/python/2.5
--->  Verifying checksum(s) for python25
--->  Extracting python25
--->  Configuring python25
--->  Building python25 with target all
--->  Staging python25 into destroot
--->  Packaging tgz archive for python25 2.5_0
--->  Installing python25 2.5_0
--->  Activating python25 2.5_0
--->  Cleaning python25
--->  Fetching wxWidgets-devel
--->  Attempting to fetch wxWidgets-2.8.2-rc1.tar.bz2 from http://biolpc22.york.ac.uk/pub/2.8.2-rc1/
--->  Verifying checksum(s) for wxWidgets-devel
--->  Extracting wxWidgets-devel
--->  Configuring wxWidgets-devel
--->  Building wxWidgets-devel
--->  Staging wxWidgets-devel into destroot
--->  Packaging tgz archive for wxWidgets-devel 2.8.2-rc1_0
--->  Installing wxWidgets-devel 2.8.2-rc1_0
--->  Activating wxWidgets-devel 2.8.2-rc1_0
--->  Cleaning wxWidgets-devel
--->  Fetching py-wxpython
--->  Attempting to fetch wxPython-src-2.8.1.1.tar.bz2 from http://easynews.dl.sourceforge.net/wxpython
--->  Verifying checksum(s) for py-wxpython
--->  Extracting py-wxpython
--->  Configuring py-wxpython
--->  Building py-wxpython with target build
--->  Staging py-wxpython into destroot
--->  Packaging tgz archive for py-wxpython 2.8.1.1_0
--->  Installing py-wxpython 2.8.1.1_0
--->  Activating py-wxpython 2.8.1.1_0
--->  Cleaning py-wxpython
--->  Unpacking tgz archive for wxWidgets-devel 2.8.2-rc1_0
--->  Deactivating wxWidgets-devel 2.8.2-rc1_0
--->  Activating wxWidgets-devel 2.8.2-rc1_0
--->  Cleaning wxWidgets-devel

I don't know what other differences (besides the OS) may be present, I'll check on it when I go home. It's possible that I've edited the Portfile or something. It's also very likely that the active versions of GTK+ are different between the two systems.

comment:4 Changed 18 years ago by yaseppochi (Stephen J. Turnbull)

Current system: Mac OS X 10.4.8, port 1.400 (r22036). Current svn of wxWidgets-devel installed OK on my Mac OS X 10.3.9 system, presumably because that was a fresh install in the first place.

The problem apparently was the presence of an existing wxWidgets-devel installation. port was going out to the existing installation to link to, but the library there was missing some definitions so the link failed as described above.

The following patch results in a link command that should work correctly (but untested, I'd already done the scorched earth thing and removed all packages related to wxWidgets, then reinstalled fresh):

Index: dports/graphics/wxWidgets-devel/Portfile
===================================================================
--- dports/graphics/wxWidgets-devel/Portfile    (revision 22249)
+++ dports/graphics/wxWidgets-devel/Portfile    (working copy)
@@ -47,9 +47,7 @@
 
 set sub                        wx-devel
 configure.cmd  ../configure
-configure.env  CPPFLAGS="-I${prefix}/include" \
-                               CFLAGS="-I${prefix}/include" \
-                               LDFLAGS="-L${prefix}/lib"
+configure.env  LDFLAGS="-L${build.dir}/lib"
 configure.args --mandir=${prefix}/share/man \
                                --libdir=${prefix}/lib/${sub} \
                                --bindir=${prefix}/lib/${sub}/bin \

However, a fresh installation does build correctly with this patch, so I would recommend it. The link flag "-L${build.dir}/lib" appears twice in the link command, once before "-L/opt/local/lib" (what you want) and once after. I'm not sure which comes from LDFLAGS; if it's the latter then you can nuke the configure.env setting entirely.

comment:5 Changed 18 years ago by pipping@…

Milestone: Port Bugs

comment:6 Changed 18 years ago by markd@…

Cc: jwa@… markd@… added
Owner: changed from macports-dev@… to jwa@…

Assign to maintainer.

comment:7 Changed 18 years ago by jyrkiwahlstedt

Resolution: fixed
Status: newclosed

fixed in r24099

comment:8 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.