Closed klou closed 7 years ago
Webkit is deprecated and it was removed from Qt5 since 5.6 version
It should fail even to compile. strange. for qt-5.8 a new version is in development, and I hope @stigger will help us when ready :)
Well, it doesn't detect webkit, so that part isn't essential.
I went back and applied all of the patches/mac (some of these had to be done manually), but still the same result.
We need some Mac expert here. I have no idea. I believe @stigger compiled Psi for Mac just few days ago. Maybe w/o patches, but it doesn't matter.
Well, I'm trying to get a pre-Haswell build (per #651), and also incorporate patch from #625.
Apk produced with make is not ready for use. You need copy all the dependencies into apk. Instead you should use our scripts from maintanence repo.
Quickly reading through macosx/psibuild
, requires install Qt from source? Guess I'll get back to you guys in a few days ...
Here is the build of master with #625. Qt should be installed using brew install qt5 --with-qtwebkit
, configuration is ./configure --qtdir=/usr/local/opt/qt5 --with-qca-lib=/usr/local/Cellar/qca/2.1.1/lib --enable-webkit --disable-qdbus --disable-xss --release
.
The .app bundle was assembled manually, I'll take a look at the scripts later.
There seems to be a qt5-related issue where psi/psi+ cannot connect to the server. Switching offline/online several times usually helps. This does not reproduce when built with qt4.
Thanks for uploading this, but it still has problems on < 2011 Macs. I'll try to assemble the app bundle with my binary later tonight (from a 2011 11" i7 MBA), as I recall there were some missing pieces like the Framework directory. The included log is from a White Unibody Macbook 2010 (C2D 2.4)
Process: psi-plus [65624]
Path: /Volumes/VOLUME/*/psi-plus.app/Contents/MacOS/psi-plus
Identifier: org.psi-im
Version: Psi 0.16.571.637 [2017-02-15] (0.16.571.637 [2017-02-15])
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: psi-plus [65624]
User ID: 1362438137
Date/Time: 2017-02-16 09:42:25.150 -0800
OS Version: Mac OS X 10.12.3 (16D32)
Report Version: 12
Anonymous UUID: 05C4D047-DA46-22D2-E337-5A1822FD48E1
Sleep/Wake UUID: 05FA201C-BB25-4E27-86AF-B960BEFF84AB
Time Awake Since Boot: 200000 seconds
Time Since Wake: 410 seconds
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: DYLD, [0x1] Library missing
Application Specific Information:
dyld: launch, loading dependent libraries
Dyld Error Message:
Library not loaded: @rpath/libidn.11.dylib
Referenced from: /Volumes/VOLUME/*/psi-plus.app/Contents/MacOS/psi-plus
Reason: image not found
Binary Images:
0x103e88000 - 0x104624ffb +org.psi-im (Psi 0.16.571.637 [2017-02-15] - 0.16.571.637 [2017-02-15]) <C379CB46-AA51-312E-9135-B87B667CCD8C> /var/folders/*/psi-plus.app/Contents/MacOS/psi-plus
0x10491c000 - 0x1049b3ff7 + (??? - ???) <0049A3DA-32FB-3030-9230-AED98F9A2A10> /var/folders/*/psi-plus.app/Contents/Frameworks/qca-qt5.framework/Versions/2.1.1/qca-qt5
0x1092fb000 - 0x109338267 dyld (421.2) <947FC440-80F9-32F7-A773-6FC418FE1AB7> /usr/lib/dyld
0x7fffa12ba000 - 0x7fffa208cff3 com.apple.AppKit (6.9 - 1504.81.100) <0CCB2E18-076E-3D8A-A777-A6E57EF2570A> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
0x7fffa2d26000 - 0x7fffa2d26fff com.apple.Carbon (154 - 157) <1BF9C0EB-45A0-3584-85DC-F64A9914F40D> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
0x7fffa374c000 - 0x7fffa3be0ff7 com.apple.CoreFoundation (6.9 - 1348.28) <0F1FAA52-1C06-327E-A170-382B48B1846D> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
0x7fffa5749000 - 0x7fffa57deff7 com.apple.framework.IOKit (2.0.2 - 1324.30.13) <163BE7FA-B29A-348F-8B5F-E301F2E8C964> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x7fffb84d7000 - 0x7fffb88ac127 libobjc.A.dylib (706) <47104A1B-13E8-369F-BC36-27FF465809FD> /usr/lib/libobjc.A.dylib
0x7fffb8ccf000 - 0x7fffb8ce0ff3 libz.1.dylib (67) <46E3FFA2-4328-327A-8D34-A03E20BFFB8E> /usr/lib/libz.1.dylib
Model: MacBook7,1, BootROM MB71.0039.B0E, 2 processors, Intel Core 2 Duo, 2.4 GHz, 4 GB, SMC 1.60f6
Graphics: NVIDIA GeForce 320M, NVIDIA GeForce 320M, PCI, 256 MB
Memory Module: BANK 0/DIMM0, 2 GB, DDR3, 1067 MHz, 0x80CE, 0x4D34373142353637334648302D4346382020
Memory Module: BANK 1/DIMM0, 2 GB, DDR3, 1067 MHz, 0x80CE, 0x4D34373142353637334648302D4346382020
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x93), Broadcom BCM43xx 1.0 (5.106.98.100.24)
Bluetooth: Version 5.0.3f1, 3 services, 27 devices, 1 incoming serial ports
Network Service: Ethernet, Ethernet, en0
Serial ATA Device: Crucial_CT128MX100SSD1, 128.04 GB
Serial ATA Device: MATSHITADVD-R UJ-898
USB Device: USB 2.0 Bus
USB Device: USB 2.0 Bus
USB Device: Built-in iSight
USB Device: USB Bus
USB Device: USB Bus
USB Device: BRCM2070 Hub
USB Device: Bluetooth USB Host Controller
USB Device: Apple Internal Keyboard / Trackpad
Thunderbolt Bus:
(I can install libidn
from homebrew
on this test C2D machine, but I kind of think that it should be included.)
Sorry, I forgot to include it. Just copy the binary into psi-plus.app/Contents/Frameworks and you should be good to go.
Thanks. This app bundle (with libidn) works at home when I have all of the external dependencies already installed (though I needed to rip out and re-install qt5 from homebrew to get it to also install QtWebkit).
However, it still looks for QtCore in /usr/local/opt/qt5/lib/QtCore.framework/Versions/5/QtCore even though it exists within psi-plus.app/Contents/Frameworks on my test machine w/o homebrew dependencies.
Is there a conflict between installed libraries and bundled ones?
Sorry, I forgot to include it. Just copy the binary into psi-plus.app/Contents/Frameworks and you should be good to go.
Its not enough. You should change dependencies inside apk with install_name_tool. Also, apk should include ALL the dependencies, including Qt Frameworks, plugins etc. Look at our script and you will see the work you should do to make standalone package. This is not so easy
Here is the link from Qt documentation http://doc.qt.io/qt-5/osx-deployment.html Its a good place to start
@wadealer Yes, I know that and I did that:
$ otool -L psi-plus
psi-plus:
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1348.28.0)
/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 157.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1504.75.0)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
@rpath/qca-qt5.framework/qca-qt5 (compatibility version 2.0.0, current version 2.1.1)
@rpath/libidn.11.dylib (compatibility version 18.0.0, current version 18.16.0)
@rpath/QtNetwork.framework/QtNetwork (compatibility version 5.8.0, current version 5.8.0)
@rpath/QtCore.framework/QtCore (compatibility version 5.8.0, current version 5.8.0)
/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
@rpath/QtGui.framework/QtGui (compatibility version 5.8.0, current version 5.8.0)
@rpath/QtXml.framework/QtXml (compatibility version 5.8.0, current version 5.8.0)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
@rpath/QtWebKitWidgets.framework/QtWebKitWidgets (compatibility version 5.8.0, current version 5.8.0)
@rpath/QtWidgets.framework/QtWidgets (compatibility version 5.8.0, current version 5.8.0)
@rpath/QtWebKit.framework/QtWebKit (compatibility version 5.8.0, current version 5.8.0)
@rpath/QtMultimedia.framework/QtMultimedia (compatibility version 5.8.0, current version 5.8.0)
@rpath/QtConcurrent.framework/QtConcurrent (compatibility version 5.8.0, current version 5.8.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.4.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0)
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 775.9.7)
/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1349.25.0)
What I forgot to do is to perform the same manipulations on qca-qt5.framework.
Ok. it's proven we can compile for mac and it works. our maintenance repo now has scripts for that. An experimental build is here https://sourceforge.net/projects/psiplus/files/Mac-OS-X/psi-plus-1.0.9.835-webkit-qt5-git-2017-06-11-macosx.dmg/download It has some other probems so.. for other bug reports..
I'm attempting to compile a Qt5 version of Psi+, using HomeBrew to fill the dependencies. Unfortunately, it looks like webkit is not available (especially under Qt5), so "--enable-webkit" doesn't seem to work.
Anyways, the resulting Psi+.app (or psi-plus.app) won't launch, with the error message
You can't open the application "Psi+" because it may be damaged or incomplete.
Any ideas on what the problem might be?
OSX 10.12.3 XCode 8.2.1 Qt 5.8.x from Home Brew QCA 2.1.1 from Home Brew
Configured with
./configure --enable-webkit --enable-whiteboarding
.After
make
,/psi-plus.app
andsrc/psi+.app
both show the same error when trying to launch.Also,
make -C mac/ dmg
correctly creates a dmg, but the included app is still faulty.