Re: cmake build with qt6 (macos) does not include "plugins"
Am Thu, 21 Mar 2024 23:21:18 +0100 schrieb pdv : > On 20/03/2024 11:26, Pavel Sanda wrote: > > On Tue, Mar 19, 2024 at 04:02:34PM +0100, pdv wrote: > >> These steps have been added to my previous patch (new patch included) and I > >> also derived the QT_PLUGINS_DIR and QT_LIBRARY_DIRS variables from the > >> existing Qt6_DIR/Qt5_DIR variable, so they must not longer be supplied. > > > > I see there is some very old bug related to osx budles, pehaps it should be > > closed? > > https://www.lyx.org/trac/ticket/9018 > > > >> I only tested this with Qt6. > > > > Unf we are staying out of Qt6 for mac because of serious issues we were not > > able to > > solve (see bug https://www.lyx.org/trac/ticket/12641 ). > > > > Pavel > > That will not be so easy (with cmake). > The signing issue also holds for Qt5. > > I've done my homework again. > I realized that my previous solution (although it worked for me) was not > ideal. I can't remember why anymore but for Qt6 I copied just all the > plugins, which of course worked but was ineffective. > > It's clear now that (for installing a bundle on macos with cmake) there > is no difference between Qt5 (supposed the version is GTE 5.10) and Qt6. > > This makes things much simpler. > > But at least with the latest macos tools (Sonoma and XCode15) a bundle > refuses to run if it 's not signed properly. > > Both issues are solved with the patch included and have now been tested > with Qt5.15 and Qt6.7. > > For completeness: I've checked the font-emph shortcut issue and, as > reported in the ticket mentioned, ^CmdE works with Qt5.15 but not with > Qt6.7. However the sequence ^C E does work. I don't know whether this is > intended as a workaround for this issue or was already implemented. > > pdv Committed at 4d02fb7a on master and 00d59c17 on 2.4.1-devel Kornel pgpwXEIkI6neQ.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Thu, 21 Mar 2024 23:21:18 +0100 schrieb pdv : > On 20/03/2024 11:26, Pavel Sanda wrote: > > On Tue, Mar 19, 2024 at 04:02:34PM +0100, pdv wrote: > >> These steps have been added to my previous patch (new patch included) and I > >> also derived the QT_PLUGINS_DIR and QT_LIBRARY_DIRS variables from the > >> existing Qt6_DIR/Qt5_DIR variable, so they must not longer be supplied. > > > > I see there is some very old bug related to osx budles, pehaps it should be > > closed? > > https://www.lyx.org/trac/ticket/9018 > > > >> I only tested this with Qt6. > > > > Unf we are staying out of Qt6 for mac because of serious issues we were not > > able to > > solve (see bug https://www.lyx.org/trac/ticket/12641 ). > > > > Pavel > > That will not be so easy (with cmake). > The signing issue also holds for Qt5. > > I've done my homework again. > I realized that my previous solution (although it worked for me) was not > ideal. I can't remember why anymore but for Qt6 I copied just all the > plugins, which of course worked but was ineffective. > > It's clear now that (for installing a bundle on macos with cmake) there > is no difference between Qt5 (supposed the version is GTE 5.10) and Qt6. > > This makes things much simpler. > > But at least with the latest macos tools (Sonoma and XCode15) a bundle > refuses to run if it 's not signed properly. > > Both issues are solved with the patch included and have now been tested > with Qt5.15 and Qt6.7. > > For completeness: I've checked the font-emph shortcut issue and, as > reported in the ticket mentioned, ^CmdE works with Qt5.15 but not with > Qt6.7. However the sequence ^C E does work. I don't know whether this is > intended as a workaround for this issue or was already implemented. > > pdv Committed at 58aca890. Since 1.) It is tested on mac 2.) Uses cmake variable LYX_BUNDLE=ON (which is only used on mac so far as I can see) I do not expect problems with other OP's. Kornel pgpTxXvldb6VC.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On 20/03/2024 11:26, Pavel Sanda wrote: On Tue, Mar 19, 2024 at 04:02:34PM +0100, pdv wrote: These steps have been added to my previous patch (new patch included) and I also derived the QT_PLUGINS_DIR and QT_LIBRARY_DIRS variables from the existing Qt6_DIR/Qt5_DIR variable, so they must not longer be supplied. I see there is some very old bug related to osx budles, pehaps it should be closed? https://www.lyx.org/trac/ticket/9018 I only tested this with Qt6. Unf we are staying out of Qt6 for mac because of serious issues we were not able to solve (see bug https://www.lyx.org/trac/ticket/12641 ). Pavel That will not be so easy (with cmake). The signing issue also holds for Qt5. I've done my homework again. I realized that my previous solution (although it worked for me) was not ideal. I can't remember why anymore but for Qt6 I copied just all the plugins, which of course worked but was ineffective. It's clear now that (for installing a bundle on macos with cmake) there is no difference between Qt5 (supposed the version is GTE 5.10) and Qt6. This makes things much simpler. But at least with the latest macos tools (Sonoma and XCode15) a bundle refuses to run if it 's not signed properly. Both issues are solved with the patch included and have now been tested with Qt5.15 and Qt6.7. For completeness: I've checked the font-emph shortcut issue and, as reported in the ticket mentioned, ^CmdE works with Qt5.15 but not with Qt6.7. However the sequence ^C E does work. I don't know whether this is intended as a workaround for this issue or was already implemented. pdvdiff --git a/development/cmake/post_install/CMakeLists.txt b/development/cmake/post_install/CMakeLists.txt index 52a2f782af..b2346cac44 100644 --- a/development/cmake/post_install/CMakeLists.txt +++ b/development/cmake/post_install/CMakeLists.txt @@ -26,18 +26,28 @@ if(LYX_BUNDLE) set(qtplugin_dest_dir "${LYX_BUNDLE_NAME}.app/Contents") set(qt_conf_path "${LYX_BUNDLE_NAME}.app/Contents/Resources/qt.conf") endif() - -if(Qt5Core_FOUND) - file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") - install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX "\\_debug\\.dylib$" EXCLUDE) - if(APPLE) - if(Qt5Core_VERSION VERSION_GREATER_EQUAL 5.10.0) - install_qt_plugin("Qt5::QMacStylePlugin") - endif() -install_qt_plugin("Qt5::QCocoaIntegrationPlugin") + +if(${LYX_USE_QT} STREQUAL "QT5") + set(QtScope "Qt5") +elseif(${LYX_USE_QT} STREQUAL "QT6") + set(QtScope "Qt6") +endif() + +get_target_property( MyLoc "${QtScope}::QSvgPlugin" LOCATION) +get_filename_component(MyDir ${MyLoc} PATH) +set(QT_PLUGINS_DIR ${MyDir}/..) +set(QT_LIBRARY_DIRS ${QT_PLUGINS_DIR}/../lib) + +file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") +install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX "\\_debug\\.dylib$" EXCLUDE) + +if(APPLE) + if(Qt6Core_FOUND OR (Qt5Core_FOUND AND (Qt5Core_VERSION VERSION_GREATER_EQUAL 5.10.0))) + install_qt_plugin("${QtScope}::QMacStylePlugin") endif() + install_qt_plugin("${QtScope}::QCocoaIntegrationPlugin") endif() - + # Install code does the following: # - Creates the qt.conf file # - install the platform specific plugins (with Qt5) @@ -50,7 +60,13 @@ if(LYX_BUNDLE) fixup_bundle(\"\${CMAKE_INSTALL_PREFIX}/${installed_lyx_path}\" \"\${QTPLUGINS}\" \"${QT_LIBRARY_DIRS}\")" COMPONENT Runtime ) - + +if(APPLE) + # fixup_bundle invalidates the codesign, so the app must be signed again. + add_custom_target(sign_install WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX} + COMMAND /usr/bin/codesign --deep --force --sign "${CPACK_BUNDLE_APPLE_CERT_APP}" "LyX2.4.app" VERBATIM) +endif() + if (APPLE AND LYX_DMG) # Setup the disk image layout install(CODE " -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build on macos (Sonoma, XCode) fails and remedy
Am Tue, 19 Mar 2024 15:31:00 +0100 schrieb pdv : > Using the latest commit and building lyx with cmake on macos-sonoma with > xcode fails with multiple error messages like this one: > > -- > CMake Error in po/CMakeLists.txt: >The custom command generating > > /po/LyX2.4.cat.pot > >is attached to multiple targets: > > translations > update-gmo > > but none of these is a common dependency of the other(s). This is not > allowed by the Xcode "new build system". > --- > > These issues are solved by adding the following target dependencies > (patch included) > > add_dependencies(update-gmo translations) > add_dependencies(update-gmo update-po) > > add_dependencies(cleanupdatetex2lyxtests updatetex2lyxtests) > > > pdv It's in at 3f790725. Kornel pgpeiWA5bVpUU.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Sat, 4 Nov 2023 18:05:42 +0100 schrieb pdv : > On 04/11/2023 17:55, pdv wrote: > > On 21/03/2023 19:27, Kornel Benko wrote: > >> Am Tue, 21 Mar 2023 15:27:41 +0100 > >> schrieb pdv : > >> > >>> On 21/03/2023 11:00, Kornel Benko wrote: > Am Mon, 20 Mar 2023 20:05:32 +0100 > schrieb pdv : > > It's within the first if() else(), that's thus for qt6(see below). I > > suppose this should work for all platforms, but I checked it on macos > > only. Your patch is limited to APPLE and also works for me; If this > > problem doesn't occur for other platforms, it's ok for me of course. > > Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). > > If you could try to use cmake without this option, I'd be interested > if it works for > you too. > >>> > >>> Apparently no problem. -DLYX_BUNDLE=OFF works too for me. > >>> > In this case we could get rid of it (probably). > > Kornel > > >>> > >>> > >> > >> Good, so I will disable this option for lyx2.5 then. > >> > >> Kornel > >> > >> > > I have build the latest lyx-master and I still need my (previous) patch > > to build a LyX.app which includes all required Qt6 frameworks (I want a > > stand-alone app). > > > > I'm using a recent version of CMake and apparently versions older than > > 3.5 will not longer be supported. To get rid of the annoying warnings > > I've upped the minimum version from 3.1 to 3.5 (new patch included). > > > > pdv > > > Sorry, forgot to include the patch. I have similar patch ( for all CMakeLists.txt) ready and only waiting for 2.4 to be out. Kornel pgpmn8MSMhSUx.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On Tue, Mar 19, 2024 at 04:02:34PM +0100, pdv wrote: > These steps have been added to my previous patch (new patch included) and I > also derived the QT_PLUGINS_DIR and QT_LIBRARY_DIRS variables from the > existing Qt6_DIR/Qt5_DIR variable, so they must not longer be supplied. I see there is some very old bug related to osx budles, pehaps it should be closed? https://www.lyx.org/trac/ticket/9018 > I only tested this with Qt6. Unf we are staying out of Qt6 for mac because of serious issues we were not able to solve (see bug https://www.lyx.org/trac/ticket/12641 ). Pavel -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On 07/11/2023 17:42, pdv wrote: On 06/11/2023 19:17, pdv wrote: On 04/11/2023 20:35, Kornel Benko wrote: Am Sat, 4 Nov 2023 18:05:42 +0100 schrieb pdv : On 04/11/2023 17:55, pdv wrote: On 21/03/2023 19:27, Kornel Benko wrote: Am Tue, 21 Mar 2023 15:27:41 +0100 schrieb pdv : On 21/03/2023 11:00, Kornel Benko wrote: Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. Apparently no problem. -DLYX_BUNDLE=OFF works too for me. In this case we could get rid of it (probably). Kornel Good, so I will disable this option for lyx2.5 then. Kornel I have build the latest lyx-master and I still need my (previous) patch to build a LyX.app which includes all required Qt6 frameworks (I want a stand-alone app). I'm using a recent version of CMake and apparently versions older than 3.5 will not longer be supported. To get rid of the annoying warnings I've upped the minimum version from 3.1 to 3.5 (new patch included). pdv Sorry, forgot to include the patch. Will be done for 2.4.x versions. Also for other CMakeLists.txt's in the lyx-sources. Kornel OK, thanks. Regarding the original issue, I'm still largely in the dark. I've build qt-6.2 (-debug-and-release option), installed cmake3.26 and I'm using macos 10.14 and xcode. lyx has been updated to a very recent master-version. Building a complete (qt frameworks included) debuggable LyX2.4.app with cmake does not work for me; the plug-ins are not copied into the bundle and cmake's fixup_bundle step subsequently fails. When I apply my patch (see first message) the plugins are copied but the fixup_bundle step still fails. Only the QtCore, ... frameworks have been copied to the bundle (probably by the install command in my patch), but not the QtCore_debug, ... versions, although no error is reported by fixup_bundle at copy time. That's because they are copied to a folder named /@rpath/ in my build-folder instead of into the bundle. Apparently the @rpath used in the qt libraries is not handled properly by the cmake scripts. Can anyone confirm that a stand-alone LyX2.4.app can be build with cmake on macos or have any other suggestion? pdv The problem with the _debug libraries is obvious. As for qt5 no _debug libraries should be copied for qt6 either. I adapted my patch (included) accordingly. I once more tested a number of configurations and this is my conclusion. I can build a bundle with LYX_DMG=off and LYX_BUNDLE=on, the latter sets also LYX_CPACK=on. These are my resulting settings after cmake configure: LYX_ENABLE_BUILD_TYPE:STRING = AUTO : Allows to tweak the compiled code (AUTO release prerelease development gprof) LYX_CPACK:BOOL = ON : Use the CPack management (Implies LYX_INSTALL option) LYX_LOCALVERSIONING:BOOL = ON : Add version info to created package name (only used if LYX_CPACK option set) LYX_INSTALL:BOOL = OFF : Build install projects/rules (implies a bunch of other options) LYX_NLS:BOOL = ON : Enable Native Language Support (NLS) LYX_REQUIRE_SPELLCHECK:BOOL = OFF : Abort if no spellchecker available LYX_ASPELL:BOOL = ON : Require aspell LYX_ENCHANT:BOOL = OFF : Require Enchant LYX_HUNSPELL:BOOL = ON : Require Hunspell LYX_RELEASE:BOOL = ON : Build release version, build debug when disabled LYX_DEBUG:BOOL = OFF : Enforce debug build LYX_NO_OPTIMIZE:BOOL = OFF : Don't use any optimization/debug flags LYX_ENABLE_ASSERTIONS:BOOL = ON : Run sanity checks in the program LYX_PACKAGE_SUFFIX:BOOL = ON : Use version suffix for packaging LYX_SUFFIX_VALUE:STRING = : Use this string as suffix LYX_PCH:BOOL = OFF : Use precompiled headers LYX_MERGE_FILES:BOOL = OFF : Merge source files into one compilation unit LYX_MERGE_REBUILD:BOOL = OFF : Rebuild generated files from merged files build LYX_QUIET:BOOL = ON : Don't generate verbose makefiles LYX_INSTALL_PREFIX:BOOL = OFF : Install path for LyX LYX_BUNDLE:BOOL = ON : Build bundle (experimental) LYX_ENABLE_URLTESTS:BOOL = OFF : Enable for URL tests
Re: cmake build with qt6 (macos) does not include "plugins"
On Sat, Nov 11, 2023 at 06:07:14PM +0100, Kornel Benko wrote: > Am Sat, 11 Nov 2023 11:14:51 -0500 > schrieb Scott Kostyshak : > > > > diff --git a/development/cmake/post_install/CMakeLists.txt > > > b/development/cmake/post_install/CMakeLists.txt index > > > 52a2f782af..f83cdaad0b 100644 > > > --- a/development/cmake/post_install/CMakeLists.txt > > > +++ b/development/cmake/post_install/CMakeLists.txt > > > @@ -28,14 +28,18 @@ if(LYX_BUNDLE) > > > endif() > > > > > > if(Qt5Core_FOUND) > > > - file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") > > > - install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION > > > "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX > > > "\\_debug\\.dylib$" EXCLUDE) > > > + file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") > > > + install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION > > > "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX > > > "\\_debug\\.dylib$" EXCLUDE) > > > if(APPLE) if(Qt5Core_VERSION VERSION_GREATER_EQUAL 5.10.0) > > > install_qt_plugin("Qt5::QMacStylePlugin") > > > endif() > > > install_qt_plugin("Qt5::QCocoaIntegrationPlugin") > > > endif() > > > +else() > > > +# With QT6, just copy all the plugins > > > +file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/*") > > > +install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION > > > "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX > > > "\\_debug\\.dylib$" EXCLUDE) > > > endif() > > > # Install code does the following: > > > > @Kornel seems like we might want this one in master? > > > > Scott > > Yes, I am only waiting for 2.4 be out. Nobody outside of MAC seems to use > BUNDLE though. Sounds good, Scott signature.asc Description: PGP signature -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Sat, 11 Nov 2023 11:14:51 -0500 schrieb Scott Kostyshak : > > diff --git a/development/cmake/post_install/CMakeLists.txt > > b/development/cmake/post_install/CMakeLists.txt index > > 52a2f782af..f83cdaad0b 100644 > > --- a/development/cmake/post_install/CMakeLists.txt > > +++ b/development/cmake/post_install/CMakeLists.txt > > @@ -28,14 +28,18 @@ if(LYX_BUNDLE) > > endif() > > > > if(Qt5Core_FOUND) > > - file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") > > - install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION > > "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX "\\_debug\\.dylib$" > > EXCLUDE) > > + file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") > > + install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION > > "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX "\\_debug\\.dylib$" > > EXCLUDE) > > if(APPLE) if(Qt5Core_VERSION VERSION_GREATER_EQUAL 5.10.0) > > install_qt_plugin("Qt5::QMacStylePlugin") > > endif() > > install_qt_plugin("Qt5::QCocoaIntegrationPlugin") > > endif() > > +else() > > +# With QT6, just copy all the plugins > > +file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/*") > > +install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION > > "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX "\\_debug\\.dylib$" > > EXCLUDE) > > endif() > > # Install code does the following: > > @Kornel seems like we might want this one in master? > > Scott Yes, I am only waiting for 2.4 be out. Nobody outside of MAC seems to use BUNDLE though. Kornel pgpRGXK9Zg_AU.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On Tue, Nov 07, 2023 at 05:42:27PM +0100, pdv wrote: > On 06/11/2023 19:17, pdv wrote: > > On 04/11/2023 20:35, Kornel Benko wrote: > > > Am Sat, 4 Nov 2023 18:05:42 +0100 > > > schrieb pdv : > > > > > > > On 04/11/2023 17:55, pdv wrote: > > > > > On 21/03/2023 19:27, Kornel Benko wrote: > > > > > > Am Tue, 21 Mar 2023 15:27:41 +0100 > > > > > > schrieb pdv : > > > > > > > > > > > > > On 21/03/2023 11:00, Kornel Benko wrote: > > > > > > > > Am Mon, 20 Mar 2023 20:05:32 +0100 > > > > > > > > schrieb pdv : > > > > > > > > > It's within the first if() else(), that's > > > > > > > > > thus for qt6(see below). I > > > > > > > > > suppose this should work for all platforms, > > > > > > > > > but I checked it on macos > > > > > > > > > only. Your patch is limited to APPLE and also works for me; > > > > > > > > > If this > > > > > > > > > problem doesn't occur for other platforms, > > > > > > > > > it's ok for me of course. > > > > > > > > > > > > > > > > Probably no one else is using the bundle option > > > > > > > > (-DLYX_BUNDLE=ON). > > > > > > > > > > > > > > > > If you could try to use cmake without this option, I'd be > > > > > > > > interested > > > > > > > > if it works for > > > > > > > > you too. > > > > > > > > > > > > > > Apparently no problem. -DLYX_BUNDLE=OFF works too for me. > > > > > > > > > > > > > > > In this case we could get rid of it (probably). > > > > > > > > > > > > > > > > Kornel > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Good, so I will disable this option for lyx2.5 then. > > > > > > > > > > > > Kornel > > > > > > > > > > > > > > > > > I have build the latest lyx-master and I still need my (previous) > > > > > patch > > > > > to build a LyX.app which includes all required Qt6 frameworks (I want > > > > > a > > > > > stand-alone app). > > > > > > > > > > I'm using a recent version of CMake and apparently versions older than > > > > > 3.5 will not longer be supported. To get rid of the annoying warnings > > > > > I've upped the minimum version from 3.1 to 3.5 (new patch included). > > > > > > > > > > pdv > > > > > > > > > Sorry, forgot to include the patch. > > > > > > Will be done for 2.4.x versions. Also for other CMakeLists.txt's in > > > the lyx-sources. > > > > > > Kornel > > > > > > > > OK, thanks. > > > > Regarding the original issue, I'm still largely in the dark. > > > > I've build qt-6.2 (-debug-and-release option), installed cmake3.26 and > > I'm using macos 10.14 and xcode. lyx has been updated to a very recent > > master-version. > > > > Building a complete (qt frameworks included) debuggable LyX2.4.app with > > cmake does not work for me; the plug-ins are not copied into the bundle > > and cmake's fixup_bundle step subsequently fails. > > > > When I apply my patch (see first message) the plugins are copied but the > > fixup_bundle step still fails. > > > > Only the QtCore, ... frameworks have been copied to the bundle (probably > > by the install command in my patch), but not the QtCore_debug, ... > > versions, although no error is reported by fixup_bundle at copy time. > > > > That's because they are copied to a folder named /@rpath/ in my > > build-folder instead of into the bundle. > > Apparently the @rpath used in the qt libraries is not handled properly > > by the cmake scripts. > > > > Can anyone confirm that a stand-alone LyX2.4.app can be build with cmake > > on macos or have any other suggestion? > > > > pdv > > > > > > > The problem with the _debug libraries is obvious. As for qt5 no _debug > libraries should be copied for qt6 either. I adapted my patch (included) > accordingly. > > I once more tested a number of configurations and this is my conclusion. > I can build a bundle with LYX_DMG=off and LYX_BUNDLE=on, the latter sets > also LYX_CPACK=on. > > These are my resulting settings after cmake configure: > > LYX_ENABLE_BUILD_TYPE:STRING = AUTO : Allows to tweak the compiled > code (AUTO release prerelease development gprof) > LYX_CPACK:BOOL = ON : Use the CPack management > (Implies LYX_INSTALL option) > LYX_LOCALVERSIONING:BOOL = ON : Add version info to > created package name (only used if LYX_CPACK option set) > LYX_INSTALL:BOOL = OFF: Build install > projects/rules (implies a bunch of other options) > LYX_NLS:BOOL = ON : Enable Native Language > Support (NLS) > LYX_REQUIRE_SPELLCHECK:BOOL= OFF: Abort if no spellchecker > available > LYX_ASPELL:BOOL= ON : Require aspell > LYX_ENCHANT:BOOL = OFF: Require Enchant > LYX_HUNSPELL:BOOL = ON : Require Hunspell > LYX_RELEASE:BOOL = ON : Build release version, > build debug when disabled > LYX_DEBUG:BOOL = OFF: Enforce debug build > LYX_NO_OPTIMIZE:BOOL = OFF
Re: cmake build with qt6 (macos) does not include "plugins"
On 06/11/2023 19:17, pdv wrote: On 04/11/2023 20:35, Kornel Benko wrote: Am Sat, 4 Nov 2023 18:05:42 +0100 schrieb pdv : On 04/11/2023 17:55, pdv wrote: On 21/03/2023 19:27, Kornel Benko wrote: Am Tue, 21 Mar 2023 15:27:41 +0100 schrieb pdv : On 21/03/2023 11:00, Kornel Benko wrote: Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. Apparently no problem. -DLYX_BUNDLE=OFF works too for me. In this case we could get rid of it (probably). Kornel Good, so I will disable this option for lyx2.5 then. Kornel I have build the latest lyx-master and I still need my (previous) patch to build a LyX.app which includes all required Qt6 frameworks (I want a stand-alone app). I'm using a recent version of CMake and apparently versions older than 3.5 will not longer be supported. To get rid of the annoying warnings I've upped the minimum version from 3.1 to 3.5 (new patch included). pdv Sorry, forgot to include the patch. Will be done for 2.4.x versions. Also for other CMakeLists.txt's in the lyx-sources. Kornel OK, thanks. Regarding the original issue, I'm still largely in the dark. I've build qt-6.2 (-debug-and-release option), installed cmake3.26 and I'm using macos 10.14 and xcode. lyx has been updated to a very recent master-version. Building a complete (qt frameworks included) debuggable LyX2.4.app with cmake does not work for me; the plug-ins are not copied into the bundle and cmake's fixup_bundle step subsequently fails. When I apply my patch (see first message) the plugins are copied but the fixup_bundle step still fails. Only the QtCore, ... frameworks have been copied to the bundle (probably by the install command in my patch), but not the QtCore_debug, ... versions, although no error is reported by fixup_bundle at copy time. That's because they are copied to a folder named /@rpath/ in my build-folder instead of into the bundle. Apparently the @rpath used in the qt libraries is not handled properly by the cmake scripts. Can anyone confirm that a stand-alone LyX2.4.app can be build with cmake on macos or have any other suggestion? pdv The problem with the _debug libraries is obvious. As for qt5 no _debug libraries should be copied for qt6 either. I adapted my patch (included) accordingly. I once more tested a number of configurations and this is my conclusion. I can build a bundle with LYX_DMG=off and LYX_BUNDLE=on, the latter sets also LYX_CPACK=on. These are my resulting settings after cmake configure: LYX_ENABLE_BUILD_TYPE:STRING = AUTO : Allows to tweak the compiled code (AUTO release prerelease development gprof) LYX_CPACK:BOOL = ON : Use the CPack management (Implies LYX_INSTALL option) LYX_LOCALVERSIONING:BOOL = ON : Add version info to created package name (only used if LYX_CPACK option set) LYX_INSTALL:BOOL = OFF: Build install projects/rules (implies a bunch of other options) LYX_NLS:BOOL = ON : Enable Native Language Support (NLS) LYX_REQUIRE_SPELLCHECK:BOOL= OFF: Abort if no spellchecker available LYX_ASPELL:BOOL= ON : Require aspell LYX_ENCHANT:BOOL = OFF: Require Enchant LYX_HUNSPELL:BOOL = ON : Require Hunspell LYX_RELEASE:BOOL = ON : Build release version, build debug when disabled LYX_DEBUG:BOOL = OFF: Enforce debug build LYX_NO_OPTIMIZE:BOOL = OFF: Don't use any optimization/debug flags LYX_ENABLE_ASSERTIONS:BOOL = ON : Run sanity checks in the program LYX_PACKAGE_SUFFIX:BOOL= ON : Use version suffix for packaging LYX_SUFFIX_VALUE:STRING=: Use this string as suffix LYX_PCH:BOOL = OFF: Use precompiled headers LYX_MERGE_FILES:BOOL = OFF: Merge source files into one compilation unit LYX_MERGE_REBUILD:BOOL = OFF: Rebuild generated files from merged files build LYX_QUIET:BOOL = ON : Don't generate verbose makefiles LYX_INSTALL_PREFIX:BOOL= OFF: Install path for LyX LYX_BUNDLE:BOOL= ON : Build bundle (experimental) LYX_ENABLE_URLTESTS:BOOL = OFF: Enable for URL tests LYX_ENABLE_EXPORT_TESTS:BOOL = OFF: Enable for export tests
Re: cmake build with qt6 (macos) does not include "plugins"
On 04/11/2023 20:35, Kornel Benko wrote: Am Sat, 4 Nov 2023 18:05:42 +0100 schrieb pdv : On 04/11/2023 17:55, pdv wrote: On 21/03/2023 19:27, Kornel Benko wrote: Am Tue, 21 Mar 2023 15:27:41 +0100 schrieb pdv : On 21/03/2023 11:00, Kornel Benko wrote: Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. Apparently no problem. -DLYX_BUNDLE=OFF works too for me. In this case we could get rid of it (probably). Kornel Good, so I will disable this option for lyx2.5 then. Kornel I have build the latest lyx-master and I still need my (previous) patch to build a LyX.app which includes all required Qt6 frameworks (I want a stand-alone app). I'm using a recent version of CMake and apparently versions older than 3.5 will not longer be supported. To get rid of the annoying warnings I've upped the minimum version from 3.1 to 3.5 (new patch included). pdv Sorry, forgot to include the patch. Will be done for 2.4.x versions. Also for other CMakeLists.txt's in the lyx-sources. Kornel OK, thanks. Regarding the original issue, I'm still largely in the dark. I've build qt-6.2 (-debug-and-release option), installed cmake3.26 and I'm using macos 10.14 and xcode. lyx has been updated to a very recent master-version. Building a complete (qt frameworks included) debuggable LyX2.4.app with cmake does not work for me; the plug-ins are not copied into the bundle and cmake's fixup_bundle step subsequently fails. When I apply my patch (see first message) the plugins are copied but the fixup_bundle step still fails. Only the QtCore, ... frameworks have been copied to the bundle (probably by the install command in my patch), but not the QtCore_debug, ... versions, although no error is reported by fixup_bundle at copy time. That's because they are copied to a folder named /@rpath/ in my build-folder instead of into the bundle. Apparently the @rpath used in the qt libraries is not handled properly by the cmake scripts. Can anyone confirm that a stand-alone LyX2.4.app can be build with cmake on macos or have any other suggestion? pdv -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Sat, 4 Nov 2023 18:05:42 +0100 schrieb pdv : > On 04/11/2023 17:55, pdv wrote: > > On 21/03/2023 19:27, Kornel Benko wrote: > >> Am Tue, 21 Mar 2023 15:27:41 +0100 > >> schrieb pdv : > >> > >>> On 21/03/2023 11:00, Kornel Benko wrote: > Am Mon, 20 Mar 2023 20:05:32 +0100 > schrieb pdv : > > It's within the first if() else(), that's thus for qt6(see below). I > > suppose this should work for all platforms, but I checked it on macos > > only. Your patch is limited to APPLE and also works for me; If this > > problem doesn't occur for other platforms, it's ok for me of course. > > Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). > > If you could try to use cmake without this option, I'd be interested > if it works for > you too. > >>> > >>> Apparently no problem. -DLYX_BUNDLE=OFF works too for me. > >>> > In this case we could get rid of it (probably). > > Kornel > > >>> > >>> > >> > >> Good, so I will disable this option for lyx2.5 then. > >> > >> Kornel > >> > >> > > I have build the latest lyx-master and I still need my (previous) patch > > to build a LyX.app which includes all required Qt6 frameworks (I want a > > stand-alone app). > > > > I'm using a recent version of CMake and apparently versions older than > > 3.5 will not longer be supported. To get rid of the annoying warnings > > I've upped the minimum version from 3.1 to 3.5 (new patch included). > > > > pdv > > > Sorry, forgot to include the patch. Will be done for 2.4.x versions. Also for other CMakeLists.txt's in the lyx-sources. Kornel pgpqLBFtd8Hso.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On 04/11/2023 17:55, pdv wrote: On 21/03/2023 19:27, Kornel Benko wrote: Am Tue, 21 Mar 2023 15:27:41 +0100 schrieb pdv : On 21/03/2023 11:00, Kornel Benko wrote: Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. Apparently no problem. -DLYX_BUNDLE=OFF works too for me. In this case we could get rid of it (probably). Kornel Good, so I will disable this option for lyx2.5 then. Kornel I have build the latest lyx-master and I still need my (previous) patch to build a LyX.app which includes all required Qt6 frameworks (I want a stand-alone app). I'm using a recent version of CMake and apparently versions older than 3.5 will not longer be supported. To get rid of the annoying warnings I've upped the minimum version from 3.1 to 3.5 (new patch included). pdv Sorry, forgot to include the patch.diff --git a/3rdparty/dtl/CMakeLists.txt b/3rdparty/dtl/CMakeLists.txt index f757b26b17..9b78cf4c0f 100644 --- a/3rdparty/dtl/CMakeLists.txt +++ b/3rdparty/dtl/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.1) +cmake_minimum_required(VERSION 3.5) set(LYX_IPO_SUPPORTED FALSE) if (POLICY CMP0069) diff --git a/3rdparty/mythes/CMakeLists.txt b/3rdparty/mythes/CMakeLists.txt index 869bee7c93..d2175d4167 100644 --- a/3rdparty/mythes/CMakeLists.txt +++ b/3rdparty/mythes/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.1) +cmake_minimum_required(VERSION 3.5) set(LYX_IPO_SUPPORTED FALSE) if (POLICY CMP0069) diff --git a/CMakeLists.txt b/CMakeLists.txt index 38e11b8a0b..c4c19ed17c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ # Copyright (c) 2006-2011 Peter Kümmel, # Copyright (c) 2008-2020 Kornel Benko, -cmake_minimum_required(VERSION 3.1.0) +cmake_minimum_required(VERSION 3.5.0) set(LYX_PROJECT LyX) # Instruct cmake to not use gnu extensions, -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On 21/03/2023 19:27, Kornel Benko wrote: Am Tue, 21 Mar 2023 15:27:41 +0100 schrieb pdv : On 21/03/2023 11:00, Kornel Benko wrote: Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. Apparently no problem. -DLYX_BUNDLE=OFF works too for me. In this case we could get rid of it (probably). Kornel Good, so I will disable this option for lyx2.5 then. Kornel I have build the latest lyx-master and I still need my (previous) patch to build a LyX.app which includes all required Qt6 frameworks (I want a stand-alone app). I'm using a recent version of CMake and apparently versions older than 3.5 will not longer be supported. To get rid of the annoying warnings I've upped the minimum version from 3.1 to 3.5 (new patch included). pdv -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Tue, 21 Mar 2023 15:27:41 +0100 schrieb pdv : > On 21/03/2023 11:00, Kornel Benko wrote: > > Am Mon, 20 Mar 2023 20:05:32 +0100 > > schrieb pdv : > > > >> It's within the first if() else(), that's thus for qt6(see below). I > >> suppose this should work for all platforms, but I checked it on macos > >> only. Your patch is limited to APPLE and also works for me; If this > >> problem doesn't occur for other platforms, it's ok for me of course. > > > > Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). > > > > If you could try to use cmake without this option, I'd be interested if it > > works for > > you too. > > Apparently no problem. -DLYX_BUNDLE=OFF works too for me. > > > In this case we could get rid of it (probably). > > > > Kornel > > > > > > Good, so I will disable this option for lyx2.5 then. Kornel pgpKYDUkEdbCr.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On 21/03/2023 11:00, Kornel Benko wrote: Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. Apparently no problem. -DLYX_BUNDLE=OFF works too for me. In this case we could get rid of it (probably). Kornel -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Mon, 20 Mar 2023 20:05:32 +0100 schrieb pdv : > It's within the first if() else(), that's thus for qt6(see below). I > suppose this should work for all platforms, but I checked it on macos > only. Your patch is limited to APPLE and also works for me; If this > problem doesn't occur for other platforms, it's ok for me of course. Probably no one else is using the bundle option (-DLYX_BUNDLE=ON). If you could try to use cmake without this option, I'd be interested if it works for you too. In this case we could get rid of it (probably). Kornel pgp81l5__3k3j.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
On 20/03/2023 10:50, Kornel Benko wrote: Am Sun, 19 Mar 2023 20:45:55 +0100 schrieb pdv : The merge branch killqt4 (commit 9376... on nov 28) broke the cmake install build on macos. The "development/cmake/post_install/CMakeLists.txt' SCRIPT checks for qt5 and copies all plugins if different. This did work for qt4 but also for qt6. The killqt4 branch removed this else part for qt4 but also for qt6. The included patch restores this else clause and only the comment has been adapted (qt6 instead of qt4). Since I don't know which plugins are actually needed I copied them all. Regards, P. De Visschere But your patch is inside of if(LYX_BUNDLE) if(Qt5Core_FOUND and outside of if(APPLE) so I wonder, why is it working for QT6? Maybe the attached is what you want? Kornel It's within the first if() else(), that's thus for qt6(see below). I suppose this should work for all platforms, but I checked it on macos only. Your patch is limited to APPLE and also works for me; If this problem doesn't occur for other platforms, it's ok for me of course. if(Qt5Core_FOUND) file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/imageformats") install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime REGEX "\\_debug\\.dylib$" EXCLUDE) if(APPLE) if(Qt5Core_VERSION VERSION_GREATER_EQUAL 5.10.0) install_qt_plugin("Qt5::QMacStylePlugin") endif() install_qt_plugin("Qt5::QCocoaIntegrationPlugin") endif() else() # With QT6, just copy all the plugins file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/*") install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime) endif() -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build with qt6 (macos) does not include "plugins"
Am Sun, 19 Mar 2023 20:45:55 +0100 schrieb pdv : > The merge branch killqt4 (commit 9376... on nov 28) broke the cmake > install build on macos. > > The "development/cmake/post_install/CMakeLists.txt' SCRIPT checks for > qt5 and copies all plugins if different. This did work for qt4 but also > for qt6. > > The killqt4 branch removed this else part for qt4 but also for qt6. > > The included patch restores this else clause and only the comment has > been adapted (qt6 instead of qt4). > > Since I don't know which plugins are actually needed I copied them all. > > Regards, > > P. De Visschere But your patch is inside of if(LYX_BUNDLE) if(Qt5Core_FOUND and outside of if(APPLE) so I wonder, why is it working for QT6? Maybe the attached is what you want? Kornel diff --git a/development/cmake/post_install/CMakeLists.txt b/development/cmake/post_install/CMakeLists.txt index 52a2f782af..574ac8afb4 100644 --- a/development/cmake/post_install/CMakeLists.txt +++ b/development/cmake/post_install/CMakeLists.txt @@ -36,10 +36,15 @@ if(LYX_BUNDLE) endif() install_qt_plugin("Qt5::QCocoaIntegrationPlugin") endif() endif() +if (APPLE AND LYX_USE_QT MATCHES "QT6") + # With QT6, just copy all the plugins + file(GLOB QT_PLUGIN_DIRECTORIES "${QT_PLUGINS_DIR}/*") + install(DIRECTORY ${QT_PLUGIN_DIRECTORIES} DESTINATION "${qtplugin_dest_dir}/plugins/" COMPONENT Runtime) +endif() # Install code does the following: # - Creates the qt.conf file # - install the platform specific plugins (with Qt5) # - Fixup the bundle install(CODE "include(BundleUtilities) pgpjZt5pzqqJf.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: CMake Build Problem
Am Mon, 16 Dec 2019 20:36:58 -0500 schrieb Scott Kostyshak : > On Mon, Dec 16, 2019 at 08:11:16PM -0500, Richard Kimberly Heck wrote: > > I'm getting a repeatable error when building the master branch of LyX > > with cmake on Fedora 30. What I've done is: > > > > ./autogen.sh > > mkdir build-cmake > > cd build-cmake > > cmake .. > > make > > > > Result: > > Kornel can advise, but I think it is recommended to use an out-of-source > build directory. Also, I don't think you should run autogen.sh. Yes. > So > something like: > > mkdir ../build-cmake && > cd ../build-cmake && > cmake ../your-src-dir-name && > make > > Scott Also the compiler tries to use -flto -fno-fat-lto-objects From 'man gcc' Note that when -fno-fat-lto-objects is enabled the compile stage is faster but you cannot perform a regular, non-LTO link on them. To disable this, use some extra cmake parameter $ cmake your-src-dir-name -DLYX_DEBUG=ON -DLYX_RELEASE=OFF -DLYX_CPACK=ON $ make package -DLYX_DEBUG=ON # Compile with debug info (without lto) -DLYX_RELEASE=OFF # Compile debug version -DLYX_CPACK=ON # implicitly create everything needed for installation, not only the lyx executable I cannot see the wrong behaviour here with gcc8.3 and cmake1.16 What is your cmake version? What is your gcc version? Kornel pgpeShrbvAznu.pgp Description: Digitale Signatur von OpenPGP -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: CMake Build Problem
On Mon, Dec 16, 2019 at 08:11:16PM -0500, Richard Kimberly Heck wrote: > I'm getting a repeatable error when building the master branch of LyX > with cmake on Fedora 30. What I've done is: > > ./autogen.sh > mkdir build-cmake > cd build-cmake > cmake .. > make > > Result: Kornel can advise, but I think it is recommended to use an out-of-source build directory. Also, I don't think you should run autogen.sh. So something like: mkdir ../build-cmake && cd ../build-cmake && cmake ../your-src-dir-name && make Scott signature.asc Description: PGP signature -- lyx-devel mailing list lyx-devel@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-devel
Re: cmake build
On Sun, May 07, 2017 at 07:54:40PM -0400, Ian Wilder wrote: > > Thank you for checking up on me. I have not sorted this out. As described in > my last post the cmake process does not seem to be aware of building a macOS > target as the automake build tools do. > > I am able to build within Xcode, but I was hoping to build using cmake on > this platform. OK, too bad we couldn't figure things out. Hopefully we can improve the CMake experience on Mac in the future. Scott signature.asc Description: PGP signature
Re: cmake build
On 2017-05-07 23:39:45 +, Scott Kostyshak said: I noticed the install layout is not one that could run on macos, but is instead a layout indicitive of a typical linux install. ian@ares % find ~/Applications/LyX-master.app -type d -maxdepth 2 [0] /Users/ian/Applications/LyX-master.app /Users/ian/Applications/LyX-master.app/bin /Users/ian/Applications/LyX-master.app/share /Users/ian/Applications/LyX-master.app/share/LyX /Users/ian/Applications/LyX-master.app/share/man ~/src/lyx/build For comparison, this is how the layout appears for 2.2.2 ian@ares % find /Applications/LyX.app -type d -maxdepth 2 [0] /Applications/LyX.app /Applications/LyX.app/Contents /Applications/LyX.app/Contents/Frameworks /Applications/LyX.app/Contents/Library /Applications/LyX.app/Contents/MacOS /Applications/LyX.app/Contents/PlugIns /Applications/LyX.app/Contents/Resources /Applications/LyX.app/Contents/translations It seems either cmake does not have a target for macos install, or I am using incorrect cmake options or targets. Ian, Did you end up figuring out the problem? Scott Scott, Thank you for checking up on me. I have not sorted this out. As described in my last post the cmake process does not seem to be aware of building a macOS target as the automake build tools do. I am able to build within Xcode, but I was hoping to build using cmake on this platform. Thank you, Ian
Re: cmake build
On Tue, Apr 04, 2017 at 01:08:52PM -0400, Ian Wilder wrote: > On 2017-03-13 09:28:22 +, Kornel Benko said: > > > Am Sonntag, 12. März 2017 um 16:35:43, schrieb Ian Wilder > >> > > On 2017-02-13 16:21:52 +, Kornel Benko said: > > > > > > > Am Mittwoch, 1. Februar 2017 um 09:58:40, schrieb Ian Wilder > > > > > > > > > Hey everyone! > > > > > > > > > ... > > > > > > > > > > 1.) Please do not use source dir as build dir. This messes the source. > > > > > > fixed. > > > > > > > 2.) Do you really want lyx to be installed at > > > > "/Users/ian/Applications/LyX-master"? > > > > > > I needed to make this LyX-master.app, but other than this, yes. Does > > > this introduce an issue? > > > > > > > No, but it looks s suspect. (As if it were the build dir) > > It is not the build directory. I install lyx to an applications directory > under my home dir utilizing. The source is /Users/ian/src/lyx and the > builddir is /Users/ian/src/lyx/build > > > > > > > > > > > > My platform is > > > > > > > > > > Darwin ares 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 > > > > > PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 > > > > > > > > > > Thanks for any help! > > > > > > > > > > Ian Wilder > > > > > > > > To compile with cmake: > > > > Get a really clean source tree, say 'xyzzy_src'. > > > > Create a _new_ build tree, say 'xyzzy_build'. > > > > > > > > cd xyzzy_build > > > > cmake xyzzy_src -DLYX_USE_QT=QT5 -DLYX_COCOA=ON etc > > > > make > > > > > > > > > > > > Kornel > > > > > > > > > > I have now been able to do a build with cmake. Thank you very much! > > > > > > However, the make install target doesn't seem to be runnable. Has > > > someone been able to run a cmake built version on macos? > > > > In case you did not already used, try to configure with > > -DLYX_INSTALL=ON > > With this options you should get the install target. To see all defined > > target try > > make help > > in the build dir. > > > > If that does not work, then you have to follow Stephan's advise. > > Thank you for the tip. However, it still does not build an exeutable that > runs on macos. > > I noticed the install layout is not one that could run on macos, but is > instead a layout indicitive of a typical linux install. > > ian@ares % find ~/Applications/LyX-master.app -type d -maxdepth 2 > [0] > /Users/ian/Applications/LyX-master.app > /Users/ian/Applications/LyX-master.app/bin > /Users/ian/Applications/LyX-master.app/share > /Users/ian/Applications/LyX-master.app/share/LyX > /Users/ian/Applications/LyX-master.app/share/man > ~/src/lyx/build > > For comparison, this is how the layout appears for 2.2.2 > > ian@ares % find /Applications/LyX.app -type d -maxdepth 2 > [0] > /Applications/LyX.app > /Applications/LyX.app/Contents > /Applications/LyX.app/Contents/Frameworks > /Applications/LyX.app/Contents/Library > /Applications/LyX.app/Contents/MacOS > /Applications/LyX.app/Contents/PlugIns > /Applications/LyX.app/Contents/Resources > /Applications/LyX.app/Contents/translations > > It seems either cmake does not have a target for macos install, or I am > using incorrect cmake options or targets. > > > > > > Thanks, > > > Ian > > > > Kornel > > > > Ian, Did you end up figuring out the problem? Scott signature.asc Description: PGP signature
Re: cmake build
On 2017-03-13 09:28:22 +, Kornel Benko said: Am Sonntag, 12. März 2017 um 16:35:43, schrieb Ian WilderOn 2017-02-13 16:21:52 +, Kornel Benko said: Am Mittwoch, 1. Februar 2017 um 09:58:40, schrieb Ian Wilder Hey everyone! ... 1.) Please do not use source dir as build dir. This messes the source. fixed. 2.) Do you really want lyx to be installed at "/Users/ian/Applications/LyX-master"? I needed to make this LyX-master.app, but other than this, yes. Does this introduce an issue? No, but it looks s suspect. (As if it were the build dir) It is not the build directory. I install lyx to an applications directory under my home dir utilizing. The source is /Users/ian/src/lyx and the builddir is /Users/ian/src/lyx/build My platform is Darwin ares 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 Thanks for any help! Ian Wilder To compile with cmake: Get a really clean source tree, say 'xyzzy_src'. Create a _new_ build tree, say 'xyzzy_build'. cd xyzzy_build cmake xyzzy_src -DLYX_USE_QT=QT5 -DLYX_COCOA=ON etc make Kornel I have now been able to do a build with cmake. Thank you very much! However, the make install target doesn't seem to be runnable. Has someone been able to run a cmake built version on macos? In case you did not already used, try to configure with -DLYX_INSTALL=ON With this options you should get the install target. To see all defined target try make help in the build dir. If that does not work, then you have to follow Stephan's advise. Thank you for the tip. However, it still does not build an exeutable that runs on macos. I noticed the install layout is not one that could run on macos, but is instead a layout indicitive of a typical linux install. ian@ares % find ~/Applications/LyX-master.app -type d -maxdepth 2 [0] /Users/ian/Applications/LyX-master.app /Users/ian/Applications/LyX-master.app/bin /Users/ian/Applications/LyX-master.app/share /Users/ian/Applications/LyX-master.app/share/LyX /Users/ian/Applications/LyX-master.app/share/man ~/src/lyx/build For comparison, this is how the layout appears for 2.2.2 ian@ares % find /Applications/LyX.app -type d -maxdepth 2 [0] /Applications/LyX.app /Applications/LyX.app/Contents /Applications/LyX.app/Contents/Frameworks /Applications/LyX.app/Contents/Library /Applications/LyX.app/Contents/MacOS /Applications/LyX.app/Contents/PlugIns /Applications/LyX.app/Contents/Resources /Applications/LyX.app/Contents/translations It seems either cmake does not have a target for macos install, or I am using incorrect cmake options or targets. Thanks, Ian Kornel
Re: cmake build
Am Sonntag, 12. März 2017 um 16:35:43, schrieb Ian Wilder> On 2017-02-13 16:21:52 +, Kornel Benko said: > > > Am Mittwoch, 1. Februar 2017 um 09:58:40, schrieb Ian Wilder > > > >> Hey everyone! > >> ... > > > > 1.) Please do not use source dir as build dir. This messes the source. > > fixed. > > > 2.) Do you really want lyx to be installed at > > "/Users/ian/Applications/LyX-master"? > > I needed to make this LyX-master.app, but other than this, yes. Does > this introduce an issue? > No, but it looks s suspect. (As if it were the build dir) ... > > > >> My platform is > >> > >> Darwin ares 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 > >> PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 > >> > >> Thanks for any help! > >> > >> Ian Wilder > > > > To compile with cmake: > > Get a really clean source tree, say 'xyzzy_src'. > > Create a _new_ build tree, say 'xyzzy_build'. > > > > cd xyzzy_build > > cmake xyzzy_src -DLYX_USE_QT=QT5 -DLYX_COCOA=ON etc > > make > > > > > > Kornel > > > > I have now been able to do a build with cmake. Thank you very much! > > However, the make install target doesn't seem to be runnable. Has > someone been able to run a cmake built version on macos? In case you did not already used, try to configure with -DLYX_INSTALL=ON With this options you should get the install target. To see all defined target try make help in the build dir. If that does not work, then you have to follow Stephan's advise. > Thanks, > Ian Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build
Am 12.03.2017 um 21:35 schrieb Ian Wilder: > > On 2017-02-13 16:21:52 +, Kornel Benko said: > >> Am Mittwoch, 1. Februar 2017 um 09:58:40, schrieb Ian Wilder >> >>> Hey everyone! >>> I am attempting to build lyx master using the cmake build, but I can't >>> seem to get it to work. >>> My process is >>> git pull >>> git clean -fd >>> git checkout -- >>> cmake . -DLYX_USE_QT=QT5 -DLYX_COCOA=ON >>> -DLYX_INSTALL_PREFIX=/Users/ian/Applications/LyX-master >>> -DLYX_REQUIRE_SPELLCHECK=ON -DLYX_RELEASE=ON -DLYX_QUIET=ON >> 1.) Please do not use source dir as build dir. This messes the source. > > fixed. > >> 2.) Do you really want lyx to be installed at >> "/Users/ian/Applications/LyX-master"? > > I needed to make this LyX-master.app, but other than this, yes. Does this > introduce an issue? > >>> make >>> The error I get is: >>> [ 37%] Building CXX object >>> build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/GuiBibitem.cpp.o >>> /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:35:10: error: use >>> of undeclared identifier 'literalCB' >>> connect(literalCB, SIGNAL(clicked()), >>> ^ >>> /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:46:2: error: use of >>> undeclared identifier 'literalCB' >>> literalCB->setChecked(params["literal"] == "true"); >>> ^ >>> /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:55:22: error: use >>> of undeclared identifier 'literalCB' >>> params["literal"] = literalCB->isChecked() >>> ^ >>> 3 errors generated. >>> make[2]: *** >>> [build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/GuiBibitem.cpp.o] >>> Error 1 >>> make[1]: *** [build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/all] Error >>> 2 >>> make: *** [all] Error 2 >> It looks like the created ui_*.h (in the source dir) are left from some >> previous run of automake >> created by using qt4 executables. >>> I am not sure why it's trying to build qt4 libs when LYX_USE_QT=QT5 is >>> on, perhaps this is the issue? >> Historical reasons. We should rename the dir from 'qt4' to 'qt' eventually. >>> Just to note, I am able to build using autogen/configure/make. >> Yes, and you use here probably the source dir again. >>> My platform is >>> Darwin ares 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 >>> PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 >>> Thanks for any help! >>> Ian Wilder >> To compile with cmake: >> Get a really clean source tree, say 'xyzzy_src'. >> Create a _new_ build tree, say 'xyzzy_build'. >> cd xyzzy_build >> cmake xyzzy_src -DLYX_USE_QT=QT5 -DLYX_COCOA=ON etc >> make >> Kornel >> > > I have now been able to do a build with cmake. Thank you very much! > > However, the make install target doesn't seem to be runnable. Has someone > been able to run a cmake built version on macos? Yes, for the cmake build with Xcode generator and running the created LyX from the build dir. No, I don’t think so - for the LyX bundle created by the install target. I’m using the cmake build to create a Xcode project to be able to debug LyX in an IDE. For installation and packaging purposes I’m using the automake build only. Stephan
Re: cmake build
On 2017-02-13 16:21:52 +, Kornel Benko said: Am Mittwoch, 1. Februar 2017 um 09:58:40, schrieb Ian WilderHey everyone! I am attempting to build lyx master using the cmake build, but I can't seem to get it to work. My process is git pull git clean -fd git checkout -- cmake . -DLYX_USE_QT=QT5 -DLYX_COCOA=ON -DLYX_INSTALL_PREFIX=/Users/ian/Applications/LyX-master -DLYX_REQUIRE_SPELLCHECK=ON -DLYX_RELEASE=ON -DLYX_QUIET=ON 1.) Please do not use source dir as build dir. This messes the source. fixed. 2.) Do you really want lyx to be installed at "/Users/ian/Applications/LyX-master"? I needed to make this LyX-master.app, but other than this, yes. Does this introduce an issue? make The error I get is: [ 37%] Building CXX object build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/GuiBibitem.cpp.o /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:35:10: error: use of undeclared identifier 'literalCB' connect(literalCB, SIGNAL(clicked()), ^ /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:46:2: error: use of undeclared identifier 'literalCB' literalCB->setChecked(params["literal"] == "true"); ^ /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:55:22: error: use of undeclared identifier 'literalCB' params["literal"] = literalCB->isChecked() ^ 3 errors generated. make[2]: *** [build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/GuiBibitem.cpp.o] Error 1 make[1]: *** [build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/all] Error 2 make: *** [all] Error 2 It looks like the created ui_*.h (in the source dir) are left from some previous run of automake created by using qt4 executables. I am not sure why it's trying to build qt4 libs when LYX_USE_QT=QT5 is on, perhaps this is the issue? Historical reasons. We should rename the dir from 'qt4' to 'qt' eventually. Just to note, I am able to build using autogen/configure/make. Yes, and you use here probably the source dir again. My platform is Darwin ares 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 Thanks for any help! Ian Wilder To compile with cmake: Get a really clean source tree, say 'xyzzy_src'. Create a _new_ build tree, say 'xyzzy_build'. cd xyzzy_build cmake xyzzy_src -DLYX_USE_QT=QT5 -DLYX_COCOA=ON etc make Kornel I have now been able to do a build with cmake. Thank you very much! However, the make install target doesn't seem to be runnable. Has someone been able to run a cmake built version on macos? Thanks, Ian
Re: cmake build
Am Mittwoch, 1. Februar 2017 um 09:58:40, schrieb Ian Wilder> Hey everyone! > > I am attempting to build lyx master using the cmake build, but I can't > seem to get it to work. > > My process is > > git pull > git clean -fd > git checkout -- > > cmake . -DLYX_USE_QT=QT5 -DLYX_COCOA=ON > -DLYX_INSTALL_PREFIX=/Users/ian/Applications/LyX-master > -DLYX_REQUIRE_SPELLCHECK=ON -DLYX_RELEASE=ON -DLYX_QUIET=ON 1.) Please do not use source dir as build dir. This messes the source. 2.) Do you really want lyx to be installed at "/Users/ian/Applications/LyX-master"? > make > > The error I get is: > > [ 37%] Building CXX object > build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/GuiBibitem.cpp.o > /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:35:10: error: use > of undeclared identifier 'literalCB' > connect(literalCB, SIGNAL(clicked()), > ^ > /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:46:2: error: use of > undeclared identifier 'literalCB' > literalCB->setChecked(params["literal"] == "true"); > ^ > /Users/ian/src/lyx/src/frontends/qt4/GuiBibitem.cpp:55:22: error: use > of undeclared identifier 'literalCB' > params["literal"] = literalCB->isChecked() > ^ > 3 errors generated. > make[2]: *** > [build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/GuiBibitem.cpp.o] > Error 1 > make[1]: *** [build/src/frontends/qt4/CMakeFiles/frontend_qt.dir/all] Error 2 > make: *** [all] Error 2 It looks like the created ui_*.h (in the source dir) are left from some previous run of automake created by using qt4 executables. > I am not sure why it's trying to build qt4 libs when LYX_USE_QT=QT5 is > on, perhaps this is the issue? Historical reasons. We should rename the dir from 'qt4' to 'qt' eventually. > Just to note, I am able to build using autogen/configure/make. Yes, and you use here probably the source dir again. > My platform is > > Darwin ares 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 > PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 > > Thanks for any help! > > Ian Wilder To compile with cmake: Get a really clean source tree, say 'xyzzy_src'. Create a _new_ build tree, say 'xyzzy_build'. cd xyzzy_build cmake xyzzy_src -DLYX_USE_QT=QT5 -DLYX_COCOA=ON etc make Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Am Sonntag, 1. September 2013 um 19:37:26, schrieb Kornel Benko kor...@lyx.org If there are concerns about stabilitiy, and if it doesn't fix a bug, I will need to ask you to postpone. No concerns at all. Vincent I committed it now. Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Am Sonntag, 1. September 2013 um 19:37:26, schrieb Kornel Benko> > If there are concerns about stabilitiy, and if it doesn't fix a bug, I > > will need to ask you to postpone. > > No concerns at all. > > > Vincent I committed it now. Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Op 25-8-2013 13:31, Kornel Benko schreef: Am Dienstag, 20. August 2013 um 15:12:48, schrieb Kornel Benko kor...@lyx.org Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda sa...@lyx.org Kornel Benko wrote: This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel Thanks. If nobody else screams, I will commit tomorrow. That was not commit approval, it's Vincent's business to decide such things now. If there are concerns about stabilitiy, and if it doesn't fix a bug, I will need to ask you to postpone. Vincent
Re: cmake build: man pages
Am Sonntag, 1. September 2013 um 19:18:22, schrieb Vincent van Ravesteijn v...@lyx.org Op 25-8-2013 13:31, Kornel Benko schreef: Am Dienstag, 20. August 2013 um 15:12:48, schrieb Kornel Benko kor...@lyx.org Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda sa...@lyx.org Kornel Benko wrote: This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel Thanks. If nobody else screams, I will commit tomorrow. That was not commit approval, it's Vincent's business to decide such things now. If there are concerns about stabilitiy, and if it doesn't fix a bug, I will need to ask you to postpone. No concerns at all. Vincent Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Op 25-8-2013 13:31, Kornel Benko schreef: Am Dienstag, 20. August 2013 um 15:12:48, schrieb Kornel Benko> Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda > > Kornel Benko wrote: > > > > > This can be overridden by call to cmake. It's a default only. > > > > > > > > I see it's even default for autotools, let it be this way. > > > > > > > > Pavel > > > > > > Thanks. If nobody else screams, I will commit tomorrow. > > > > That was not commit approval, it's Vincent's business to decide such things now. > > > > If there are concerns about stabilitiy, and if it doesn't fix a bug, I will need to ask you to postpone. Vincent
Re: cmake build: man pages
Am Sonntag, 1. September 2013 um 19:18:22, schrieb Vincent van Ravesteijn> Op 25-8-2013 13:31, Kornel Benko schreef: > > > > Am Dienstag, 20. August 2013 um 15:12:48, schrieb Kornel Benko > > > > > > > Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda > > > > > > > > Kornel Benko wrote: > > > > > > > > > This can be overridden by call to cmake. It's a default only. > > > > > > > > > > > > > > > > I see it's even default for autotools, let it be this way. > > > > > > > > > > > > > > > > Pavel > > > > > > > > > > > > > > Thanks. If nobody else screams, I will commit tomorrow. > > > > > > > > > > > > That was not commit approval, it's Vincent's business to decide > > such things now. > > > > > > > > > > > > > > > > If there are concerns about stabilitiy, and if it doesn't fix a bug, I > will need to ask you to postpone. No concerns at all. > Vincent Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Am Dienstag, 20. August 2013 um 15:12:48, schrieb Kornel Benko kor...@lyx.org Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda sa...@lyx.org Kornel Benko wrote: This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel Thanks. If nobody else screams, I will commit tomorrow. That was not commit approval, it's Vincent's business to decide such things now. Pavel Ping ping ... Vincent Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Am Dienstag, 20. August 2013 um 15:12:48, schrieb Kornel Benko> Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda > > Kornel Benko wrote: > > > > > This can be overridden by call to cmake. It's a default only. > > > > > > > > I see it's even default for autotools, let it be this way. > > > > > > > > Pavel > > > > > > Thanks. If nobody else screams, I will commit tomorrow. > > > > That was not commit approval, it's Vincent's business to decide such things > > now. > > > > Pavel > > Ping ping ... Vincent > > Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda sa...@lyx.org Kornel Benko wrote: This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel Thanks. If nobody else screams, I will commit tomorrow. That was not commit approval, it's Vincent's business to decide such things now. Pavel Ping ping ... Vincent Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Am Freitag, 16. August 2013 um 10:04:15, schrieb Pavel Sanda> Kornel Benko wrote: > > > > This can be overridden by call to cmake. It's a default only. > > > > > > I see it's even default for autotools, let it be this way. > > > > > > Pavel > > > > Thanks. If nobody else screams, I will commit tomorrow. > > That was not commit approval, it's Vincent's business to decide such things > now. > > Pavel Ping ping ... Vincent Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Kornel Benko wrote: I'd like to install man-pages at a place more natural for 'man' to find them on unix. Any objections? 1. /usr/local/ does not look natural place, /usr/share/man does 2. Not my business really but seeing this patch does our cmake builds support installing inside some prefix dir? 3. Messing up with this in the middle of beta might not be particularly stabilizing for people using cmake to create binaries. Pavel
Re: cmake build: man pages
Am Freitag, 16. August 2013 um 08:04:11, schrieb Pavel Sanda sa...@lyx.org Kornel Benko wrote: I'd like to install man-pages at a place more natural for 'man' to find them on unix. Any objections? 1. /usr/local/ does not look natural place, /usr/share/man does All other default point to /usr/local ... This can be overridden by call to cmake. It's a default only. 2. Not my business really but seeing this patch does our cmake builds support installing inside some prefix dir? ATM, yes. And it was not possible to override. 3. Messing up with this in the middle of beta might not be particularly stabilizing for people using cmake to create binaries. That's, why I'm asking ... Pavel Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Kornel Benko wrote: 1. /usr/local/ does not look natural place, /usr/share/man does All other default point to /usr/local ... This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel
Re: cmake build: man pages
Am Freitag, 16. August 2013 um 08:32:10, schrieb Pavel Sanda sa...@lyx.org Kornel Benko wrote: 1. /usr/local/ does not look natural place, /usr/share/man does All other default point to /usr/local ... This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel Thanks. If nobody else screams, I will commit tomorrow. Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Kornel Benko wrote: This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel Thanks. If nobody else screams, I will commit tomorrow. That was not commit approval, it's Vincent's business to decide such things now. Pavel
Re: cmake build: man pages
Kornel Benko wrote: > I'd like to install man-pages at a place more natural for 'man' > to find them on unix. > Any objections? 1. /usr/local/ does not look natural place, /usr/share/man does 2. Not my business really but seeing this patch does our cmake builds support installing inside some prefix dir? 3. Messing up with this in the middle of beta might not be particularly stabilizing for people using cmake to create binaries. Pavel
Re: cmake build: man pages
Am Freitag, 16. August 2013 um 08:04:11, schrieb Pavel Sanda> Kornel Benko wrote: > > I'd like to install man-pages at a place more natural for 'man' > > to find them on unix. > > Any objections? > > 1. /usr/local/ does not look natural place, /usr/share/man does All other default point to /usr/local ... This can be overridden by call to cmake. It's a default only. > 2. Not my business really but seeing this patch does our cmake builds support >installing inside some prefix dir? ATM, yes. And it was not possible to override. > 3. Messing up with this in the middle of beta might not be particularly >stabilizing for people using cmake to create binaries. That's, why I'm asking ... > Pavel Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Kornel Benko wrote: > > 1. /usr/local/ does not look natural place, /usr/share/man does > > All other default point to /usr/local ... > > This can be overridden by call to cmake. It's a default only. I see it's even default for autotools, let it be this way. Pavel
Re: cmake build: man pages
Am Freitag, 16. August 2013 um 08:32:10, schrieb Pavel Sanda> Kornel Benko wrote: > > > 1. /usr/local/ does not look natural place, /usr/share/man does > > > > All other default point to /usr/local ... > > > > This can be overridden by call to cmake. It's a default only. > > I see it's even default for autotools, let it be this way. > > Pavel Thanks. If nobody else screams, I will commit tomorrow. Kornel signature.asc Description: This is a digitally signed message part.
Re: cmake build: man pages
Kornel Benko wrote: > > > This can be overridden by call to cmake. It's a default only. > > > > I see it's even default for autotools, let it be this way. > > > > Pavel > > Thanks. If nobody else screams, I will commit tomorrow. That was not commit approval, it's Vincent's business to decide such things now. Pavel
Re: cmake build system
Bo Peng wrote: Hi, Peter, I see development/cmake finally get in, and feel some competition now. :-) Wasn't it called 'diversity' in an other thread? ;) Anyway, your README.cmake seems to focus only on windows/msvc. Do you have any plan to support other platforms? It would be good if you can give some instruction on how to use cmake on, for example, linux systems, so interested people can test it. It also builds with mingw and linux, and after bigger changes of the cmake files I will also test these builds again. I have not added gcc instructions because the main reason for the cmake files is the IDE support, and I don't wanna make it so clear, that it duplicates the auto/scons functionality. At ATM it only builds and you can't install anything with the cmake files. But I could add some instructions, no problem, they are nearly identical: make sure qmake 4 is in your path (on Linux I don't have to install my Qt4 build) and fire a 'cmake ..\trunk\development\cmake' in the build directory. It's also possible to generate kdevelop files (call 'cmake' to see the the generator name) but I haven't tested it. Would be nice if someone could give it a try. Also, is win32/lyx.vcproj update to date? If not, can you update it with your cmake generated one? It would be great if people can check out lyx and compile it directly using this project file. Of course, they need to install the supporting libraries. Seems win32/lyx.vcproj is totally outdated it uses src/frontent/qt2 files! I could try to update the file manually to the Qt4 build, but my cmake files don't help very much: cmakes builds for each source-subdirectory a vcproj file in an extra folder with absolute paths to the files and tools(moc/uic). We could add the zlib headers so you can at least build and run without the stuff provided by nls, aspell, and zlib. This was the way I gone when becoming familiar with lyx. Peter
Re: cmake build system
Bo Peng wrote: > Hi, Peter, > > I see development/cmake finally get in, and feel some competition now. :-) Wasn't it called 'diversity' in an other thread? ;) > Anyway, your README.cmake seems to focus only on windows/msvc. Do you > have any plan to support other platforms? It would be good if you can > give some instruction on how to use cmake on, for example, linux > systems, so interested people can test it. It also builds with mingw and linux, and after bigger changes of the cmake files I will also test these builds again. I have not added gcc instructions because the main reason for the cmake files is the IDE support, and I don't wanna make it so clear, that it duplicates the auto/scons functionality. At ATM it only builds and you can't install anything with the cmake files. But I could add some instructions, no problem, they are nearly identical: make sure qmake 4 is in your path (on Linux I don't have to install my Qt4 build) and fire a 'cmake ..\trunk\development\cmake' in the build directory. It's also possible to generate kdevelop files (call 'cmake' to see the the generator name) but I haven't tested it. Would be nice if someone could give it a try. > Also, is win32/lyx.vcproj update to date? If not, can you update it > with your cmake generated one? It would be great if people can check > out lyx and compile it directly using this project file. Of course, > they need to install the supporting libraries. Seems win32/lyx.vcproj is totally outdated it uses src/frontent/qt2 files! I could try to update the file manually to the Qt4 build, but my cmake files don't help very much: cmakes builds for each source-subdirectory a vcproj file in an extra folder with absolute paths to the files and tools(moc/uic). We could add the zlib headers so you can at least build and run without the stuff provided by nls, aspell, and zlib. This was the way I gone when becoming familiar with lyx. Peter