Compiling and using master on macOS
Daniel
xracoonx at gmx.de
Wed Jul 8 06:21:21 UTC 2020
On 2020-07-07 00:24, Stephan Witt wrote:
> Am 06.07.2020 um 09:59 schrieb Daniel <xracoonx at gmx.de>:
>>
>> On 2020-03-15 21:37, Stephan Witt wrote:
>>> Am 15.03.2020 um 17:16 schrieb Daniel <xracoonx at gmx.de>:
>>>>
>>>> Hi,
>>>>
>>>> I am about to try compiling and using master on macOS. I just has a look at INSTALL.MacOSX. It mentions Qt version 4. That seems a bit outdated. But I guess that I am looking at the latest guide to compile on macOS, right?
>>> Yes, it’s outdated. It should work with Qt4 - but Qt4 cannot be used on recent macOS.
>>> Basically I’m using the script LyX-Mac-binary-release.sh in development folder. That’s much easier than other options, IMO.
>>> First step is to install Xcode and the automake and/or cmake utilities. This can be done with macports or homebrew. I’m using macports.
>>> Second step is to get Qt5 - as source or binary distribution. I’m using the source tarball and build Qt5 myself.
>>> Optional components are the spell checker and libmagic frameworks.
>>> Finally I start development/LyX-Mac-binary-release.sh with
>>> --enable-cxx11
>>> --with-qt-dir=/path/to/qt5
>>> Stephan
>>
>> Thanks. Finally came around trying it on macOS. I take it one has to run the last command with sh, right? So, from the lyx directory (in the lyxgit directory) I execute
>>
>> sh development/LyX-Mac-binary-release.sh --enable-cxx11 --with-qt-dir=/Users/<username>/Qt/5.9.9
>>
>> (where I replace <username> by my macOS user name. Unfortunately, I get the following:
>>
>> : command not found-binary-release.sh: line 2:
>> : command not found-binary-release.sh: line 4:
>> : command not found-binary-release.sh: line 9:
>> : command not found-binary-release.sh: line 19:
>> : command not found-binary-release.sh: line 23:
>> : command not found-binary-release.sh: line 27:
>> ': not a valid identifiery-release.sh: line 28: unset: `LD_LIBRARY_PATH
>> : command not found-binary-release.sh: line 29:
>> : command not found-binary-release.sh: line 44:
>> : command not found-binary-release.sh: line 49:
>> development/LyX-Mac-binary-release.sh: line 53: syntax error near unexpected tok'n `in
>> 'evelopment/LyX-Mac-binary-release.sh: line 53: `case "${QtVersion}:${QtAPI}" in
>>
>> By the way, if finally successful, where will this put the LyX.app?
>>
>> Daniel
>
> 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)
>
> The lyx-build contains the build directory, the installed package (LyX.app) and the resulting disk image.
>
> $ ls /Users/Shared/LyX/
> LyX-2.3.4.3+qt5-x86_64-cocoa.dmg (disk image)
> LyX-2.3.4.3.app (working app)
> LyX-2.3.4.3.build (binaries)
> LyX-2.3.5.2+qt5-x86_64-cocoa.dmg (disk image)
> LyX-2.3.5.2.app (working app)
> LyX-2.3.5.2.build (binaries)
> qt-5.9.9-build-x86_64 (binaries)
>
> The /bin/sh on a Mac is in fact a bash, IMO.
>
> Stephan
>
>
By the way, it might be that I don't really understand how and where
these commands are supposed to be called. But if I call
cat mklyx-2.3.4.3.sh
#!/bin/sh
ARCH=x86_64
SDK=10.14
MacOsXTarget=10.12
QtVersion=5.9.9
QtAPI=-cocoa
LyXVersion=lyx-2.3.4.3
EnableCXX11="--enable-cxx11"
QtConfigureOptions="-debug-and-release" QtAPI=${QtAPI}
QtVersion=${QtVersion} \
QtSourceVersion="qt-everywhere-src-${QtVersion}" \
PKG_CONFIG= \
sh ${MKFLAGS} ${LyXVersion}/development/LyX-Mac-binary-release.sh \
--with-sdkroot=${SDK} --with-macosx-target=${MacOsXTarget}
--with-arch=${ARCH} \
--with-qt-dir=/Users/Shared/LyX/qt-${QtVersion}-frameworks${QtAPI}-${ARCH} \
--with-util-dir=/Users/Shared/LyX/utilities \
${EnableCXX11} \
"$@"
I get
zsh: event not found: /bin/sh
Daniel
More information about the lyx-devel
mailing list