I've been experimenting with poudriere, and added wireshark-qt5 to my bulk build file. The compilation fails in the configure stage with the following errors: checking if profile builds must be generated... no checking for GLIB... yes checking for Qt5Core - version >= 5.0.0... yes (version 5.7.1) checking for Qt5Gui - version >= 5.0.0... yes (version 5.7.1) checking for Qt5Widgets - version >= 5.0.0... yes (version 5.7.1) checking for Qt5PrintSupport - version >= 5.0.0... yes (version 5.7.1) checking for Qt5Multimedia - version >= 5.0.0... no checking for Qt5MacExtras - version >= 5.0.0... no checking whether Qt works without -fPIC... no checking whether Qt works with -fPIC... no configure: error: Couldn't compile Qt without -fPIC nor with -fPIC ===> Script "configure" failed unexpectedly. Please report the problem to marcus@FreeBSD.org [maintainer] and attach the "/wrkdirs/usr/ports/net/wireshark-qt5/work/wireshark-2.2.5/config.log" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. a /usr/local/sbin/pkg-static info -g -Ea). *** Error code 1 Stop. make: stopped in /usr/ports/net/wireshark-qt5 It's interesting to note that it compiles fine on my workstation outside of poudriere.
Can you send me that config.log?
Created attachment 181142 [details] config.log from the poudriere build Sorry, should have done this when I created the report...
I'm seeing this: /usr/local/include/qt5/QtCore/qcompilerdetection.h:562:6: error: Qt requires a C++11 compiler and yours does not seem to be that. # error Qt requires a C++11 compiler and yours does not seem to be that. ^ In file included from conftest.cpp:34: In file included from /usr/local/include/qt5/QtCore/QtCore:4: In file included from /usr/local/include/qt5/QtCore/qabstractanimation.h:43: In file included from /usr/local/include/qt5/QtCore/qobject.h:46: In file included from /usr/local/include/qt5/QtCore/qobjectdefs.h:48: In file included from /usr/local/include/qt5/QtCore/qnamespace.h:43: In file included from /usr/local/include/qt5/QtCore/qglobal.h:1145: In file included from /usr/local/include/qt5/QtCore/qatomic.h:46: /usr/local/include/qt5/QtCore/qbasicatomic.h:61:4: error: "Qt requires C++11 support" # error "Qt requires C++11 support" ^ 2 errors generated. Is there anything weird with your poudriere environment that would lend to a non-standard C++ compiler? I'm not seeing any errors from the system build servers.
Created attachment 181165 [details] config.log from successful build I've been digging into this a bit more. If you look at line 1485 of the first log file I attached here (from the poudriere build) you'll see that for some reason it's using -std=c++11 during the test. In the second log (from outside poudriere) it doesn't use that flag. Similarly, on line 1599 (poudriere) where it's testing to see if the compiler handles c++11 by default... it's testing using the -std=c++11 flag. On the successful build, that's not the case... and unless I'm mistaken something is definitely wrong inside poudriere that it's testing for c++11 by default when it's using the "use c++11 standard" flag. So when it gets down to testing the Qt stuff, poudriere configure is no longer using -std=c++11 (because it thinks the compiler uses it by default) while the successful build uses the flag. BTW: Why do we require llvm39 for this build when it picks up and uses llvm 3.8.0 from base?
Have you asked the poudriere people about this? In terms of llvm 3.9, wireshark doesn't explicitly request it. It may come from something else. Either that or poudriere is picking up something it shouldn't.
I tracked it down. Turns out that the kde-freebsd guys have changed bsd.qt.mk to force every qt5 port to use c++11, and that messes up wireshark's c++11 configuration stuff. This is only in their area51 repository. Gonna send them a note to tell them about this side effect. Sorry to have wasted your time. I've marked this bug closed.
Qt 5.7 requires C++11.