Illegal instruction on older mac

client
modifications

#1

I can't run ownCloud client on an iMac with OS X 10.9.5 Mavericks. I compiled the code from git master branch on macOS 10.12.1 Sierra. It runs fine on the same computer, but shows Illegal instruction: 4 on an older mac.

Compilation process:

  1. git clone https://github.com/owncloud/client
  2. git submodule init
  3. git submodule update
  4. mkdir client-build
  5. cd client-build
  6. cmake -DCMAKE_BUILD_TYPE="debug" -DOPENSSL_INCLUDE_DIR=/usr/local/Cellar/openssl/1.0.2j/include/ -DNO_SHIBBOLETH=1 ..
  7. make
  8. admin/osx/macdeployqt.sh <.app bundle> <path/to/qmake>
  9. Pack everything in a .dmg archive
  10. Try to run from other mac.

Stacktrace:

Process 2038 stopped
* thread #1: tid = 0xf5200, 0x0000000101a638a5 libqt5keychain.0.dylib`QKeychain::JobPrivate::JobPrivate(QString const&, QKeychain::Job*) + 87, queue = 'com.apple.main-thread', stop reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
    frame #0: 0x0000000101a638a5 libqt5keychain.0.dylib`QKeychain::JobPrivate::JobPrivate(QString const&, QKeychain::Job*) + 87
libqt5keychain.0.dylib`QKeychain::JobPrivate::JobPrivate(QString const&, QKeychain::Job*) + 87:
-> 0x101a638a5:  vxorps %xmm0, %xmm0, %xmm0
   0x101a638a9:  vmovups %xmm0, 0x30(%rbx)
   0x101a638ae:  movq   %rax, 0x40(%rbx)
   0x101a638b2:  movq   %r14, 0x48(%rbx)
(lldb) bt
* thread #1: tid = 0xf5200, 0x0000000101a638a5 libqt5keychain.0.dylib`QKeychain::JobPrivate::JobPrivate(QString const&, QKeychain::Job*) + 87, queue = 'com.apple.main-thread', stop reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
  * frame #0: 0x0000000101a638a5 libqt5keychain.0.dylib`QKeychain::JobPrivate::JobPrivate(QString const&, QKeychain::Job*) + 87
    frame #1: 0x0000000101a63312 libqt5keychain.0.dylib`QKeychain::ReadPasswordJob::ReadPasswordJob(QString const&, QObject*) + 64
    frame #2: 0x00000001004c75bc libowncloudsync.0.dylib`OCC::HttpCredentials::fetchFromKeychain() + 1852
    frame #3: 0x00000001000e61c2 owncloud`OCC::AccountState::slotInvalidCredentials() + 402
    frame #4: 0x00000001000e5fb5 owncloud`OCC::AccountState::slotConnectionValidatorResult(OCC::ConnectionValidator::Status, QStringList const&) + 1029
    frame #5: 0x000000010011e66a owncloud`OCC::AccountState::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 154
    frame #6: 0x0000000101519ca9 QtCore`QMetaObject::activate(QObject*, int, int, void**) + 3113
    frame #7: 0x00000001004cbcbf libowncloudsync.0.dylib`OCC::ConnectionValidator::connectionResult(OCC::ConnectionValidator::Status, QStringList) + 79
    frame #8: 0x000000010041d354 libowncloudsync.0.dylib`OCC::ConnectionValidator::reportResult(OCC::ConnectionValidator::Status) + 68
    frame #9: 0x000000010041dd7e libowncloudsync.0.dylib`OCC::ConnectionValidator::slotStatusFound(QUrl const&, QMap<QString, QVariant> const&) + 1374
    frame #10: 0x00000001004cba4e libowncloudsync.0.dylib`OCC::ConnectionValidator::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 286
    frame #11: 0x0000000101519ca9 QtCore`QMetaObject::activate(QObject*, int, int, void**) + 3113
    frame #12: 0x00000001004d055b libowncloudsync.0.dylib`OCC::CheckServerJob::instanceFound(QUrl const&, QMap<QString, QVariant> const&) + 91
    frame #13: 0x000000010043dc2c libowncloudsync.0.dylib`OCC::CheckServerJob::finished() + 3244
    frame #14: 0x00000001004367e8 libowncloudsync.0.dylib`OCC::AbstractNetworkJob::slotFinished() + 3160
    frame #15: 0x00000001004c97bd libowncloudsync.0.dylib`OCC::AbstractNetworkJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 173
    frame #16: 0x0000000101519ca9 QtCore`QMetaObject::activate(QObject*, int, int, void**) + 3113
    frame #17: 0x0000000100cad1d4 QtNetwork`___lldb_unnamed_function914$$QtNetwork + 1236
    frame #18: 0x0000000101511cc1 QtCore`QObject::event(QEvent*) + 801
    frame #19: 0x000000010061a60d QtWidgets`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 301
    frame #20: 0x000000010061b9b1 QtWidgets`QApplication::notify(QObject*, QEvent*) + 369
    frame #21: 0x00000001014e7f84 QtCore`QCoreApplication::notifyInternal2(QObject*, QEvent*) + 164
    frame #22: 0x00000001014e8fab QtCore`QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 891
    frame #23: 0x0000000104a9830e libqcocoa.dylib`___lldb_unnamed_function472$$libqcocoa.dylib + 190
    frame #24: 0x0000000104a98bd1 libqcocoa.dylib`___lldb_unnamed_function484$$libqcocoa.dylib + 33
    frame #25: 0x00007fff86c135b1 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    frame #26: 0x00007fff86c04c62 CoreFoundation`__CFRunLoopDoSources0 + 242
    frame #27: 0x00007fff86c043ef CoreFoundation`__CFRunLoopRun + 831
    frame #28: 0x00007fff86c03e75 CoreFoundation`CFRunLoopRunSpecific + 309
    frame #29: 0x00007fff945cfa0d HIToolbox`RunCurrentEventLoopInMode + 226
    frame #30: 0x00007fff945cf7b7 HIToolbox`ReceiveNextEventCommon + 479
    frame #31: 0x00007fff9461d5cd HIToolbox`AcquireNextEventInMode + 51
    frame #32: 0x00007fff9471251b HIToolbox`_RunAppModalLoop + 131
    frame #33: 0x00007fff9471248b HIToolbox`RunAppModalLoopForWindow + 151
    frame #34: 0x00007fff9148ad11 AppKit`-[NSApplication _realDoModalLoop:peek:] + 357
    frame #35: 0x00007fff9148954e AppKit`-[NSApplication runModalForWindow:] + 117
    frame #36: 0x00007fff914890fd AppKit`-[NSAlert runModal] + 145
    frame #37: 0x0000000101a0d189 Sparkle`-[SUUIBasedUpdateDriver showAlert:] + 444
    frame #38: 0x0000000101a11020 Sparkle`-[SUUpdater showAlertText:informativeText:] + 183
    frame #39: 0x0000000101a1149d Sparkle`-[SUUpdater checkIfConfiguredProperly] + 1114
    frame #40: 0x0000000101a12ae7 Sparkle`-[SUUpdater checkForUpdatesWithDriver:] + 401
    frame #41: 0x0000000101a12608 Sparkle`-[SUUpdater checkForUpdatesInBackground] + 114
    frame #42: 0x00007fff90e28714 Foundation`__NSFireTimer + 96
    frame #43: 0x00007fff86c493e4 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
    frame #44: 0x00007fff86c48f1f CoreFoundation`__CFRunLoopDoTimer + 1151
    frame #45: 0x00007fff86cba5aa CoreFoundation`__CFRunLoopDoTimers + 298
    frame #46: 0x00007fff86c046a5 CoreFoundation`__CFRunLoopRun + 1525
    frame #47: 0x00007fff86c03e75 CoreFoundation`CFRunLoopRunSpecific + 309
    frame #48: 0x00007fff945cfa0d HIToolbox`RunCurrentEventLoopInMode + 226
    frame #49: 0x00007fff945cf685 HIToolbox`ReceiveNextEventCommon + 173
    frame #50: 0x00007fff945cf5bc HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 65
    frame #51: 0x00007fff9112c24e AppKit`_DPSNextEvent + 1434
    frame #52: 0x00007fff9112b89b AppKit`-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
    frame #53: 0x0000000104a974b6 libqcocoa.dylib`___lldb_unnamed_function465$$libqcocoa.dylib + 1254
    frame #54: 0x00000001014e4291 QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 417
    frame #55: 0x00000001014e85f7 QtCore`QCoreApplication::exec() + 343
    frame #56: 0x0000000100007c2b owncloud`main + 2731
    frame #57: 0x00007fff8ccf75fd libdyld.dylib`start + 1
(lldb)

#2

@danimo (fill up 20 characters)