Wireshark-dev: Re: [Wireshark-dev] [Wireshark-commits] master 5b62526: OK, try cmake -E copy.
From: Evan Huus <eapache@xxxxxxxxx>
Date: Fri, 6 Feb 2015 10:21:58 -0500
The last few days (possibly correlating with this commit or with some
other cmake change) my out-of-tree cmake build on OSX has failed to
launch the qt gui:

---
Application Specific Information:
abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib            0x00007fff8c7b6286 __pthread_kill + 10
1   libsystem_c.dylib                 0x00007fff8e5aab53 abort + 129
2   org.qt-project.QtCore             0x00000001140a9159
qt_message_fatal(QtMsgType, QMessageLogContext const&, QString const&)
+ 9
3   org.qt-project.QtCore             0x00000001140aa611
QMessageLogger::fatal(char const*, ...) const + 161
4   org.qt-project.QtGui              0x0000000113afb307
QGuiApplicationPrivate::createPlatformIntegration() + 6359
5   org.qt-project.QtGui              0x0000000113afb32b
QGuiApplicationPrivate::createEventDispatcher() + 27
6   org.qt-project.QtCore             0x00000001142c4b11
QCoreApplication::init() + 113
7   org.qt-project.QtCore             0x00000001142c4a87
QCoreApplication::QCoreApplication(QCoreApplicationPrivate&) + 39
8   org.qt-project.QtGui              0x0000000113af879e
QGuiApplication::QGuiApplication(QGuiApplicationPrivate&) + 14
9   org.qt-project.QtWidgets          0x00000001131cf3be
QApplication::QApplication(int&, char**, int) + 206
10  org.wireshark.Wireshark           0x000000010dedb7d1
WiresharkApplication::WiresharkApplication(int&, char**) + 33
(wireshark_application.cpp:478)
11  org.wireshark.Wireshark           0x000000010dd39512 main + 690
(wireshark-qt.cpp:629)
12  libdyld.dylib                     0x00007fff8d2125c9 start + 1
---

When I launch it by hand:

---
objc[16899]: Class NotificationReceiver is implemented in both
/usr/local/opt/qt5/lib/QtWidgets.framework/Versions/5/QtWidgets and
/Users/eapache/src/wireshark.org/build/run/Wireshark.app/Contents/Frameworks/QtWidgets.framework/Versions/5/QtWidgets.
One of the two will be used. Which one is undefined.
objc[16899]: Class QCocoaPageLayoutDelegate is implemented in both
/usr/local/opt/qt5/lib/QtPrintSupport.framework/Versions/5/QtPrintSupport
and /Users/eapache/src/wireshark.org/build/run/Wireshark.app/Contents/Frameworks/QtPrintSupport.framework/Versions/5/QtPrintSupport.
One of the two will be used. Which one is undefined.
objc[16899]: Class QCocoaPrintPanelDelegate is implemented in both
/usr/local/opt/qt5/lib/QtPrintSupport.framework/Versions/5/QtPrintSupport
and /Users/eapache/src/wireshark.org/build/run/Wireshark.app/Contents/Frameworks/QtPrintSupport.framework/Versions/5/QtPrintSupport.
One of the two will be used. Which one is undefined.
QObject::moveToThread: Current thread (0x7fcaf9d1c9f0) is not the
object's thread (0x7fcaf9c1e380).
Cannot move to target thread (0x7fcaf9d1c9f0)

On Mac OS X, you might be loading two sets of Qt binaries into the
same process. Check that all plugins are compiled against the right Qt
binaries. Export DYLD_PRINT_LIBRARIES=1 and check that only one set of
binaries are being loaded.
This application failed to start because it could not find or load the
Qt platform plugin "cocoa".

Available platform plugins are: cocoa.

Reinstalling the application may fix this problem.
---

So it looks like the build is now copying files into the frameworks
folder and the app doesn't know which lib to pick?

On Wed, Feb 4, 2015 at 7:47 PM, Wireshark code review
<code-review-do-not-reply@xxxxxxxxxxxxx> wrote:
> URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=5b6252654f173a79e5f4c31f9d584cc3870df1da
> Submitter: Guy Harris (guy@xxxxxxxxxxxx)
> Changed: branch: master
> Repository: wireshark
>
> Commits:
>
> 5b62526 by Guy Harris (guy@xxxxxxxxxxxx):
>
>     OK, try cmake -E copy.
>
>     It didn't fail with cp, so maybe that's just random luck, or maybe the
>     built-in copy functions have an issue, or maybe just copy_if_different
>     has an issue (64-bit inode number issues?).  Try just copy, and see what
>     happens.
>
>     Change-Id: I84abf3846af9305c19ad4a78d5c9df31b1e1e61e
>     Reviewed-on: https://code.wireshark.org/review/6961
>     Reviewed-by: Guy Harris <guy@xxxxxxxxxxxx>
>
>
> Actions performed:
>
>     from  a2e48c6   On OS X, temporarily use cp to install some files.
>     adds  5b62526   OK, try cmake -E copy.
>
>
> Summary of changes:
>  CMakeLists.txt |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> ___________________________________________________________________________
> Sent via:    Wireshark-commits mailing list <wireshark-commits@xxxxxxxxxxxxx>
> Archives:    http://www.wireshark.org/lists/wireshark-commits
> Unsubscribe: https://wireshark.org/mailman/options/wireshark-commits
>              mailto:wireshark-commits-request@xxxxxxxxxxxxx?subject=unsubscribe