> On Apr 18, 2018, at 10:11 PM, DaveC49 <davidcous...@bigpond.com> wrote: > > John, Geert and whoever maintains the Wiki Build#Ubuntu_16.04 > <https://wiki.gnucash.org/wiki/Building> pages. > > I would like to propose some edits to the above Wiki page section in the > light of my recent experiences building Guncash v3.0 which may help others > building it in future. > > My major problems I encountered were in getting googletest and googlemock > installed and running smoothly, not having fully removed libraries from > 2.6.19 and the right choice of relative reference to the top level > CmakLists.txt. > > I think the main reason Google doesn't recommend installing googletest and > googlemock as shared libraries is because of their reluctance to get dragged > into any maintenance issues on the various Linux distros rather than with > any inherent problems with shared libraries as such.
That’s not what they say in the documentation. Did you read it? > > In version 1.8.0 the move to a single repository and download for googlemock > and googleletest makes the installation as shared libraries fairly easy on > Ubuntu systems. I am guessing the patch to GncADDTest and the > CmakeLists.txtin ~/common/test-core to detect shared libraries won't be in > the stable version until v3.1 is released. Debian/Ubuntu follows Google’s recommendation and distributes sources, not shared libraries. https://packages.debian.org/stretch/amd64/googletest/filelist <https://packages.debian.org/stretch/amd64/googletest/filelist> https://packages.ubuntu.com/artful/amd64/googletest/filelist <https://packages.ubuntu.com/artful/amd64/googletest/filelist> Though in Ubuntu’s case that’s available only in the just-released 18.04LTS. Since you’re talking about 16.04, the relevant packages are https://packages.ubuntu.com/xenial/amd64/libgtest-dev/filelist <https://packages.ubuntu.com/xenial/amd64/libgtest-dev/filelist> https://packages.ubuntu.com/xenial/amd64/google-mock/filelist <https://packages.ubuntu.com/xenial/amd64/google-mock/filelist> It’s Fedora and derivatives that insist on shared libraries for googletest and now googlemock; it was the Fedora packager, Bill Nottingham, who provided the patch to support libgmock.so. > > I would propose adding a note to the dependencies secion on the above page > referencing the ability to use shared libraries with v1.8.0 and referencing > an additional wki page addressing setting up for using googlemock and > googletest for building GnuCash which could have a section for setting up > GTEST_ROOT and GMOCK_ROOT if not using shared libraries and or v 1.7.0 and > a section on setting up shared libraries for v 1.8.0. I put a tutorial up on > the Linux Mint Forum for that as I found the info available on many online > source and forums was a) very skettchy and b) sometimes confusing or > misleading which i could either reference or just incorporate directly. That seems rather excessive when all one need do if googletest isn’t provided by one’s distro is git clone https://github.com/googletest/googletest <https://github.com/googletest/googletest> and then pass two parameters to cmake when configuring GnuCash. > > I also propose putting a note re removing previous libraries. I had relied > on a Linux Mint menu uninstall option which worked with the distro installed > version but not with 2.6.19 which i had built. Another possibility is to > reference a page with instructions on how to remove files relative to the > install prefix. Because make uninstall (autotools) or xargs rm < install_manifest.txt (cmake) is too esoteric to expect that people building their own package to know already? > > The third proposal would be to have some explanatory notes, possibly with > some examples, on the positioning of the build directory relative to the > source directory. My experience with this is that unlike the documentation > build, there does not appear to be a need to have the build directory > outside the source directory. This could either go on the Cmake page > https://wiki.gnucash.org/wiki/CMake <https://wiki.gnucash.org/wiki/CMake> I’ve rewritten this bit in a way similar to my rewrite in README. Where you but the build directory is completely up to you, but specifying a particular layout seemed to cause trouble for some people. > > If you are happy with the above proposals or can suggest other approaches, I > am willing to have a go at editing the Wiki if I can be granted the > appropriate permissions to edit the pages and create the requisite new > pages. You can certainly have permission to edit the wiki. Just request a login and say who you are on the form. Regards, John Ralls _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel