Compiling and using master on macOS

Daniel xracoonx at gmx.de
Thu Jul 16 05:46:48 UTC 2020


On 2020-07-16 06:52, Stephan Witt wrote:
> Am 16.07.2020 um 02:00 schrieb Daniel <daniel.ramoeller at gmail.com>:
>>
>> On 2020-07-15 22:45, Stephan Witt wrote:
>>> Am 15.07.2020 um 07:53 schrieb Daniel <xracoonx at gmx.de>:
>>>>
>>>> On 2020-07-13 04:02, Daniel wrote:
>>>>> On 2020-07-08 08:28, Stephan Witt wrote:
>>>>>> Am 07.07.2020 um 07:35 schrieb Daniel <xracoonx at gmx.de>:
>>>>>>>
>>>>>>> On 2020-07-07 07:30, Daniel wrote:
>>>>>>>> On 2020-07-07 00:24, Stephan Witt wrote:
>>>>>>>>>
>>>>>>>>> I’ve made a protocol of the steps I took to build the package on a new system. See the attached log. Probably the crucial thing is the mklyx-2.3.4.3.sh script.
>>>>>>>>>
>>>>>>>>> I’m used to configure and build LyX out of source. I have a working directory with one or more versions of LyX source code and a directory lyx-build for the results. For Qt I have a source directory and an install target in parallel, the build directory is in lyx-build.
>>>>>>>>>
>>>>>>>>> $ ls /Users/Shared/LyX
>>>>>>>>> lyx-2.3.4.3 (source)
>>>>>>>>> lyx-2.3.5.2 (source)
>>>>>>>>> lyx-build (directory)
>>>>>>>>> qt-5.9.9-frameworks-cocoa-x86_64  (QTDIR for 5.9.9)
>>>>>>>>> qt-everywhere-opensource-src-5.9.9 (source)
>>>>> configure: error: cannot compile a simple Qt executable. Check you have the right $QTDIR.
>>>>> (Where <user-dir> is my user directory.) Seems as if my Qt install was not correct. It created a bunch of stuff in
>>>>> ~/Qt/5.9.9/clang_64
>>>>> But I am not sure that is what is needed. During the installation I chose
>>>>> Qt > Qt 5.9.9 > macOS
>>>>
>>>> Maybe the problem is that I am using the install version of Qt? You mention a "qt-5.9.9-frameworks-cocoa-x86_64  (QTDIR for 5.9.9)" and "qt-everywhere-opensource-src-5.9.9 (source)". Where do I get these from? What is the Qt source needed for?
>>>>
>>>> I have added the Qt sources via the installer but that didn't help either. It does not matter whether I use any of these
>>>>
>>>> --with-qt-dir=/Users/dram/Qt
>>>> --with-qt-dir=/Users/dram/Qt/5.9.9
>>>> --with-qt-dir=/Users/dram/Qt/5.9.9/clang_64
>>>> --with-qt-dir=/Users/dram/Qt/5.9.9/clang_64/bin
>>>>
>>>> I can build the Qt example apps via Qt designer.
>>>>
>>>> Does anyone have a further idea what might be going on?
>>> You should have something like that in your QTDIR:
>>> $ ls /Users/Shared/LyX/qt-5.9.9-frameworks-cocoa-x86_64/lib
>>> Qt3DAnimation.framework				QtTest.framework				libQt5DeviceDiscoverySupport.a			libQt5GraphicsSupport_debug.prl
>>> Qt3DCore.framework				QtTextToSpeech.framework			libQt5DeviceDiscoverySupport.la			libQt5OpenGLExtensions.a
>>> Qt3DExtras.framework				QtWebChannel.framework				libQt5DeviceDiscoverySupport.prl		libQt5OpenGLExtensions.la
>>> Qt3DInput.framework				QtWebSockets.framework				libQt5DeviceDiscoverySupport_debug.a		libQt5OpenGLExtensions.prl
>>> Qt3DLogic.framework				QtWidgets.framework				libQt5DeviceDiscoverySupport_debug.la		libQt5OpenGLExtensions_debug.a
>>> Qt3DRender.framework				QtXml.framework					libQt5DeviceDiscoverySupport_debug.prl		libQt5OpenGLExtensions_debug.la
>>> QtCharts.framework				QtXmlPatterns.framework				libQt5EventDispatcherSupport.a			libQt5OpenGLExtensions_debug.prl
>>> QtConcurrent.framework				cmake						libQt5EventDispatcherSupport.la			libQt5PlatformCompositorSupport.a
>>> QtCore.framework				libQt5AccessibilitySupport.a			libQt5EventDispatcherSupport.prl		libQt5PlatformCompositorSupport.la
>>> QtDBus.framework				libQt5AccessibilitySupport.la			libQt5EventDispatcherSupport_debug.a		libQt5PlatformCompositorSupport.prl
>>> QtDataVisualization.framework			libQt5AccessibilitySupport.prl			libQt5EventDispatcherSupport_debug.la		libQt5PlatformCompositorSupport_debug.a
>>> QtGamepad.framework				libQt5AccessibilitySupport_debug.a		libQt5EventDispatcherSupport_debug.prl		libQt5PlatformCompositorSupport_debug.la
>>> QtGui.framework					libQt5AccessibilitySupport_debug.la		libQt5FbSupport.a				libQt5PlatformCompositorSupport_debug.prl
>>> QtMacExtras.framework				libQt5AccessibilitySupport_debug.prl		libQt5FbSupport.la				libQt5ThemeSupport.a
>>> QtMultimedia.framework				libQt5Bootstrap.a				libQt5FbSupport.prl				libQt5ThemeSupport.la
>>> QtMultimediaWidgets.framework			libQt5Bootstrap.la				libQt5FbSupport_debug.a				libQt5ThemeSupport.prl
>>> QtNetwork.framework				libQt5Bootstrap.prl				libQt5FbSupport_debug.la			libQt5ThemeSupport_debug.a
>>> QtNetworkAuth.framework				libQt5CglSupport.a				libQt5FbSupport_debug.prl			libQt5ThemeSupport_debug.la
>>> QtOpenGL.framework				libQt5CglSupport.la				libQt5FontDatabaseSupport.a			libQt5ThemeSupport_debug.prl
>>> QtPositioning.framework				libQt5CglSupport.prl				libQt5FontDatabaseSupport.la			libqtfreetype.a
>>> QtPrintSupport.framework			libQt5CglSupport_debug.a			libQt5FontDatabaseSupport.prl			libqtfreetype.prl
>>> QtPurchasing.framework				libQt5CglSupport_debug.la			libQt5FontDatabaseSupport_debug.a		libqtfreetype_debug.a
>>> QtRemoteObjects.framework			libQt5CglSupport_debug.prl			libQt5FontDatabaseSupport_debug.la		libqtfreetype_debug.prl
>>> QtRepParser.framework				libQt5ClipboardSupport.a			libQt5FontDatabaseSupport_debug.prl		libqtlibpng.a
>>> QtSensors.framework				libQt5ClipboardSupport.la			libQt5GraphicsSupport.a				libqtlibpng.prl
>>> QtSerialBus.framework				libQt5ClipboardSupport.prl			libQt5GraphicsSupport.la			libqtlibpng_debug.a
>>> QtSerialPort.framework				libQt5ClipboardSupport_debug.a			libQt5GraphicsSupport.prl			libqtlibpng_debug.prl
>>> QtSql.framework					libQt5ClipboardSupport_debug.la			libQt5GraphicsSupport_debug.a			pkgconfig
>>> QtSvg.framework					libQt5ClipboardSupport_debug.prl		libQt5GraphicsSupport_debug.la
>>> $ ls /Users/Shared/LyX/qt-5.9.9-frameworks-cocoa-x86_64/include/
>>> QtAccessibilitySupport		QtCore				QtFontDatabaseSupport		QtNetwork			QtPrintSupport			QtXml
>>> QtCglSupport			QtDeviceDiscoverySupport	QtGraphicsSupport		QtOpenGLExtensions		QtSvg
>>> QtClipboardSupport		QtEventDispatcherSupport	QtGui				QtPlatformCompositorSupport	QtThemeSupport
>>> QtConcurrent			QtFbSupport			QtMacExtras			QtPlatformHeaders		QtWidgets
>>> If it’s not like that I don’t know how to proceed. The only option would be to go your route - but mine is working for me.
>>> The download area for Qt sources is here: http://download.qt.io/archive/qt/
>>> Stephan
>>
>> I am not trying to follow my route since don't have any own route. Since there is no detailed description of your route anywhere (yet), I am just using what was already on my system and using other methods I remember from how it was working on Windows, e.g. installing Qt via the installer, to fill in the gaps in your log.
> 
> There is no gap in my log, IMO. You’re not using the script development/LyX-Mac-binary-release.sh. And you are using the Qt installer and not the source to build your own frameworks. And the are additional problems difficult to diagnose from remote with your utility chain.
> 
> That way it’s difficult for me to help - but I’m trying.
> 
>> I have the following files in the directories:
>>
>> % ls /Users/<user name>/Qt/5.9.9/clang_64/lib/
>> Qt3DAnimation.framework
>> Qt3DCore.framework
>> Qt3DExtras.framework
>> Qt3DInput.framework
>> Qt3DLogic.framework
>> Qt3DQuick.framework
>> Qt3DQuickAnimation.framework
>> Qt3DQuickExtras.framework
>> Qt3DQuickInput.framework
>> Qt3DQuickRender.framework
>> Qt3DQuickScene2D.framework
>> Qt3DRender.framework
>> QtBluetooth.framework
>> QtConcurrent.framework
>> QtCore.framework
>> QtDBus.framework
>> QtDesigner.framework
>> QtDesignerComponents.framework
>> QtGamepad.framework
>> QtGui.framework
>> QtHelp.framework
>> QtLocation.framework
>> QtMacExtras.framework
>> QtMultimedia.framework
>> QtMultimediaQuick_p.framework
>> QtMultimediaWidgets.framework
>> QtNetwork.framework
>> QtNfc.framework
>> QtOpenGL.framework
>> QtPositioning.framework
>> QtPrintSupport.framework
>> QtQml.framework
>> QtQuick.framework
>> QtQuickControls2.framework
>> QtQuickParticles.framework
>> QtQuickTemplates2.framework
>> QtQuickTest.framework
>> QtQuickWidgets.framework
>> QtScxml.framework
>> QtSensors.framework
>> QtSerialBus.framework
>> QtSerialPort.framework
>> QtSql.framework
>> QtSvg.framework
>> QtTest.framework
>> QtUiPlugin.framework
>> QtWebChannel.framework
>> QtWebSockets.framework
>> QtWebView.framework
>> QtWidgets.framework
>> QtXml.framework
>> QtXmlPatterns.framework
>> cmake
>> libQt5AccessibilitySupport.a
>> libQt5AccessibilitySupport.la
>> libQt5AccessibilitySupport.prl
>> libQt5AccessibilitySupport_debug.a
>> libQt5AccessibilitySupport_debug.la
>> libQt5AccessibilitySupport_debug.prl
>> libQt5Bootstrap.a
>> libQt5Bootstrap.la
>> libQt5Bootstrap.prl
>> libQt5CglSupport.a
>> libQt5CglSupport.la
>> libQt5CglSupport.prl
>> libQt5CglSupport_debug.a
>> libQt5CglSupport_debug.la
>> libQt5CglSupport_debug.prl
>> libQt5ClipboardSupport.a
>> libQt5ClipboardSupport.la
>> libQt5ClipboardSupport.prl
>> libQt5ClipboardSupport_debug.a
>> libQt5ClipboardSupport_debug.la
>> libQt5ClipboardSupport_debug.prl
>> libQt5DeviceDiscoverySupport.a
>> libQt5DeviceDiscoverySupport.la
>> libQt5DeviceDiscoverySupport.prl
>> libQt5DeviceDiscoverySupport_debug.a
>> libQt5DeviceDiscoverySupport_debug.la
>> libQt5DeviceDiscoverySupport_debug.prl
>> libQt5EventDispatcherSupport.a
>> libQt5EventDispatcherSupport.la
>> libQt5EventDispatcherSupport.prl
>> libQt5EventDispatcherSupport_debug.a
>> libQt5EventDispatcherSupport_debug.la
>> libQt5EventDispatcherSupport_debug.prl
>> libQt5FbSupport.a
>> libQt5FbSupport.la
>> libQt5FbSupport.prl
>> libQt5FbSupport_debug.a
>> libQt5FbSupport_debug.la
>> libQt5FbSupport_debug.prl
>> libQt5FontDatabaseSupport.a
>> libQt5FontDatabaseSupport.la
>> libQt5FontDatabaseSupport.prl
>> libQt5FontDatabaseSupport_debug.a
>> libQt5FontDatabaseSupport_debug.la
>> libQt5FontDatabaseSupport_debug.prl
>> libQt5GraphicsSupport.a
>> libQt5GraphicsSupport.la
>> libQt5GraphicsSupport.prl
>> libQt5GraphicsSupport_debug.a
>> libQt5GraphicsSupport_debug.la
>> libQt5GraphicsSupport_debug.prl
>> libQt5OpenGLExtensions.a
>> libQt5OpenGLExtensions.la
>> libQt5OpenGLExtensions.prl
>> libQt5OpenGLExtensions_debug.a
>> libQt5OpenGLExtensions_debug.la
>> libQt5OpenGLExtensions_debug.prl
>> libQt5PacketProtocol.a
>> libQt5PacketProtocol.la
>> libQt5PacketProtocol.prl
>> libQt5PacketProtocol_debug.a
>> libQt5PacketProtocol_debug.la
>> libQt5PacketProtocol_debug.prl
>> libQt5PlatformCompositorSupport.a
>> libQt5PlatformCompositorSupport.la
>> libQt5PlatformCompositorSupport.prl
>> libQt5PlatformCompositorSupport_debug.a
>> libQt5PlatformCompositorSupport_debug.la
>> libQt5PlatformCompositorSupport_debug.prl
>> libQt5QmlDebug.a
>> libQt5QmlDebug.la
>> libQt5QmlDebug.prl
>> libQt5QmlDebug_debug.a
>> libQt5QmlDebug_debug.la
>> libQt5QmlDebug_debug.prl
>> libQt5QmlDevTools.a
>> libQt5QmlDevTools.la
>> libQt5QmlDevTools.prl
>> libQt5ThemeSupport.a
>> libQt5ThemeSupport.la
>> libQt5ThemeSupport.prl
>> libQt5ThemeSupport_debug.a
>> libQt5ThemeSupport_debug.la
>> libQt5ThemeSupport_debug.prl
>> libQt5UiTools.a
>> libQt5UiTools.la
>> libQt5UiTools.prl
>> libQt5UiTools_debug.a
>> libQt5UiTools_debug.la
>> libQt5UiTools_debug.prl
>> libqtfreetype.a
>> libqtfreetype.prl
>> libqtfreetype_debug.a
>> libqtfreetype_debug.prl
>> libqtlibpng.a
>> libqtlibpng.prl
>> libqtlibpng_debug.a
>> libqtlibpng_debug.prl
>> pkgconfig
>>
>>
>> %ls /Users/dram/Qt/5.9.9/clang_64/include
>> QtAccessibilitySupport		QtOpenGLExtensions
>> QtCglSupport			QtPacketProtocol
>> QtClipboardSupport		QtPlatformCompositorSupport
>> QtDeviceDiscoverySupport	QtPlatformHeaders
>> QtEventDispatcherSupport	QtQmlDebug
>> QtFbSupport			QtThemeSupport
>> QtFontDatabaseSupport		QtUiTools
>> QtGraphicsSupport
> 
> See my other answer just sent. Let us stop the use of different mail paths.
> 
> Stephan
> 
Thanks for your help. I understand that it is difficult. There was no 
objection. I just wanted to make sure that you understand why I am 
diverging from the steps you suggested. By "gaps" I meant the missing 
information about how to obtain the Qt sources. The links in 
INSTALL.MacOSX are all broken. So, I just went to the Qt's website and 
followed the path for obtaining Qt which gave me an installer where I 
chose "macOS". Actually, I see now that one can get the sources through 
the installer as well. Anyway, you said

> In case you want to do the single steps w/o the build script you may try the following: ...

Which made it seem like it's worth trying to just keep going without the 
Qt sources. But I am missing at least "QtCore" and "QtSvg" in the 
include directory.  I am still confused why the binaries the installer 
ships are not sufficient. I guess that brings your help on the current 
path (working with the Qt-shipped binaries) to an end.

> Am 16.07.2020 um 02:10 schrieb Daniel <daniel.ramoeller at gmail.com>:
>>
>> On 2020-07-15 22:45, Stephan Witt wrote:
>>> The download area for Qt sources is here: http://download.qt.io/archive/qt/
>>
>> You listed:
>>
>> qt-5.9.9-frameworks-cocoa-x86_64  (QTDIR for 5.9.9)
>> qt-everywhere-opensource-src-5.9.9 (source)
>>
>> I found the sources at https://download.qt.io/archive/qt/5.9/5.9.9/single/:
>>
>> qt-everywhere-opensource-src-5.9.9.zip
>> qt-everywhere-opensource-src-5.9.9.tar.xz
>>
>> But I found nothing that resembles the QTDIR for 5.9.9, i.e. qt-5.9.9-frameworks-cocoa-x86_64.
> 
> Yes, of course. It’s created by the install step of the Qt build from source.

Not obvious for me. Might be worth pointing out in the "guide" for the 
beginners.

> The script LyX-Mac-binary-release.sh I’m using contains the Qt build as sub function build_qt(). Basically it contains two steps:
> 
> 1. configure and build Qt from source
> 2. create and or fill the include directory with the missing links
> 
> I decided to do it that way because this structure is working with the LyX structure.
I guess I should try again with the Qt sources obtained from the new 
link you sent. I'll try to do it tonight.

Daniel



More information about the lyx-devel mailing list