maintainer-approval requested: [Bug 228219] emulators/virtualbox-ose: Stop linking programs statically and fix build with LibreSSL : [Attachment 193356] virtualbox-ose.diff

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun May 13 14:43:42 UTC 2018


Tobias Kortkamp <tobik at freebsd.org> has asked vbox at FreeBSD.org for
maintainer-approval:
Bug 228219: emulators/virtualbox-ose: Stop linking programs statically and fix
build with LibreSSL
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=228219

Attachment 193356: virtualbox-ose.diff
https://bugs.freebsd.org/bugzilla/attachment.cgi?id=193356&action=edit



--- Description ---
Hi,

it seems that virtualbox-ose attempts to link statically with some
libraries. This fails on 12.0-CURRENT/amd64 (r333416) with
DEFAULT_VERSIONS=ssl=libressl in make.conf:

    kBuild: Linking VBoxCpuReport
    /usr/bin/ld: error: duplicate symbol: arc4random
    >>> defined at arc4random.o:(arc4random) in archive
/usr/local/lib/libcrypto.a
    >>> defined at arc4random.c:223 (/usr/src/lib/libc/gen/arc4random.c:223)
    >>> 	   arc4random.o:(.text+0x6D0) in archive /usr/lib/libc.a

    /usr/bin/ld: error: duplicate symbol: arc4random_buf
    >>> defined at arc4random.o:(arc4random_buf) in archive
/usr/local/lib/libcrypto.a
    >>> defined at arc4random.c:235 (/usr/src/lib/libc/gen/arc4random.c:235)
    >>> 	   arc4random.o:(.text+0xAE0) in archive /usr/lib/libc.a

    /usr/bin/ld: error: duplicate symbol: arc4random_uniform
    >>> defined at arc4random_uniform.o:(arc4random_uniform) in archive
/usr/local/lib/libcrypto.a
    >>> defined at arc4random.c:259 (/usr/src/lib/libc/gen/arc4random.c:259)
    >>> 	   arc4random.o:(.text+0x1110) in archive /usr/lib/libc.a
    c++: error: linker command failed with exit code 1 (use -v to see
invocation)
    kmk: ***
[/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd
.amd64/release/obj/VBoxCpuReport/VBoxCpuReport]
Error 1
    The failing command:
    @c++		     '-Wl,-rpath,/usr/local/lib/virtualbox' -static  
-m64   -o
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/obj/VBoxCpuReport/VBoxCpuReport
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/obj/VBoxCpuReport/VBoxCpuReport.o
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/obj/VBoxCpuReport/VBoxCpuReportMsrSup.o
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/obj/VBoxCpuReport/dt/VMMR3/CPUMR3CpuId.o
  -L/usr/local/lib  
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/lib/SUPR3Static.a
 
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/lib/RuntimeR3.a
 
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/lib/RuntimeR3.a
 
/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.2.12/out/freebsd.
amd64/release/lib/VBox-liblzf.a
  -lz	-lpthread   -lssl   -lcrypto
    *** Error code 2

The attached patch adds FreeBSD to the list of platforms where this is
not allowed. (It seems the last update did not regenerate the patches,
so sorry for the extra noise in the patch.)


More information about the freebsd-emulation mailing list