Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Apr 2017 13:25:35 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        tcberner@freebsd.org, FreeBSD Ports <freebsd-ports@freebsd.org>
Subject:   amd64 head -r317015 system ports -r438577 : qt5-widgets vs. libQt5Core.so "multiple definition of" for: __bss_start@Qt_5 _edata@Qt_5 _end@Qt_5
Message-ID:  <71DB1157-6B09-4698-A5BB-DB63814FFCC2@dsl-only.net>

next in thread | raw e-mail | index | archive | help
[This is indirectly from an attempt to build x11/lumina .
 context: head -r317015 ports -4438577 with devel/*binutils
 reverted to 2.27 via -r436731 .]

The qt5-widgets build stops with:

--- ../../../bin/uic ---
c++ -Wl,--as-needed -fstack-protector -Wl,--gc-sections -pthread =
-Wl,-rpath,/usr/local/lib/qt5 -o ../../../bin/uic =
.obj/customwidgetsinfo.o  .obj/databaseinfo.o  .obj/driver.o  =
.obj/treewalker.o  .obj/ui4.o  .obj/validator.o  .obj/cppextractimages.o =
 .obj/cppwritedeclaration.o  .obj/cppwriteicondata.o  =
.obj/cppwriteicondeclaration.o  .obj/cppwriteiconinitialization.o  =
.obj/cppwriteincludes.o  .obj/cppwriteinitialization.o  .obj/main.o  =
.obj/uic.o   =
-L/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-openso=
urce-src-5.7.1/lib -L/usr/local/lib -lQt5Core
=
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib/libQt5Core.so: In function `_edata':
(.ctors+0x27a48): multiple definition of `__bss_start@Qt_5'
=
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib/libQt5Core.so:(.ctors+0x27a48): first defined here
=
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib/libQt5Core.so: In function `_edata':
(.ctors+0x27a48): multiple definition of `_edata@Qt_5'
=
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib/libQt5Core.so:(.ctors+0x27a48): first defined here
=
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib/libQt5Core.so: In function `_end':
(.ctors+0x2b354): multiple definition of `_end@Qt_5'
c++: error: linker command failed with exit code 1 (use -v to see =
invocation)
*** [../../../bin/uic] Error code 1

make[2]: stopped in =
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/src/tools/uic
1 error


I'll note for reference the (separate lines for readability):

=
-L/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-openso=
urce-src-5.7.1/lib
-L/usr/local/lib
-lQt5Core

when:

=3D=3D=3D>   qt5-widgets-5.7.1 depends on shared library: libQt5Core.so =
- found (/usr/local/lib/qt5/libQt5Core.so)
=3D=3D=3D>   qt5-widgets-5.7.1 depends on shared library: libQt5Gui.so - =
found (/usr/local/lib/qt5/libQt5Gui.so)
=3D=3D=3D>  Configuring for qt5-widgets-5.7.1
/bin/ln -sf /usr/local/lib/qt5/libQt5Core.so =
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib
/bin/ln -sf /usr/local/lib/qt5/libQt5Gui.so =
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/lib
/bin/mkdir -p =
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1

(Side note: The mkdir -p for work/qtbase-opensource-src-5.7.1 is
after the ln -s usage that references it in the target
directory path. This seems odd.)





As for build environment details/oddities for my context:

# more /etc/make.conf=20
WANT_QT_VERBOSE_CONFIGURE=3D1
#
DEFAULT_VERSIONS+=3Dperl5=3D5.24
WRKDIRPREFIX=3D/usr/obj/portswork
#
# =46rom a local /usr/ports/Mk/bsd.port.mk extension:
ALLOW_OPTIMIZATIONS_FOR_WITH_DEBUG=3D
#
.if ${.CURDIR:M*/devel/*llvm*}
#WITH_DEBUG=3D
.elif ${.CURDIR:M*/www/webkit-qt5*}
#WITH_DEBUG=3D
.else
WITH_DEBUG=3D
.endif
WITH_DEBUG_FILES=3D
MALLOC_PRODUCTION=3D

# svnlite diff /usr/ports/Mk/
Index: /usr/ports/Mk/bsd.port.mk
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- /usr/ports/Mk/bsd.port.mk	(revision 436747)
+++ /usr/ports/Mk/bsd.port.mk	(working copy)
@@ -1646,7 +1646,11 @@
STRIP_CMD=3D	${TRUE}
.endif
DEBUG_FLAGS?=3D	-g
+.if defined(ALLOW_OPTIMIZATIONS_FOR_WITH_DEBUG)
+CFLAGS:=3D		${CFLAGS} ${DEBUG_FLAGS}
+.else
CFLAGS:=3D		${CFLAGS:N-O*:N-fno-strict*} ${DEBUG_FLAGS}
+.endif
.if defined(INSTALL_TARGET)
INSTALL_TARGET:=3D	${INSTALL_TARGET:S/^install-strip$/install/g}
.endif

# svnlite info /usr/ports/devel/binutils
Path: /usr/ports/devel/binutils
Working Copy Root Path: /usr/ports
URL: svn://svn0.us-west.freebsd.org/ports/head/devel/binutils
Relative URL: ^/head/devel/binutils
Repository Root: svn://svn0.us-west.freebsd.org/ports
Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
Revision: 436731
Node Kind: directory
Schedule: normal
Last Changed Author: bdrewery
Last Changed Rev: 434651
Last Changed Date: 2017-02-22 15:33:44 -0800 (Wed, 22 Feb 2017)

=3D=3D=3D
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?71DB1157-6B09-4698-A5BB-DB63814FFCC2>