Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Op zaterdag 21 april 2018 14:07:47 CEST schreef DaveC49: > I found a reference to an earlier post for the documentation build for > GnuCash not the program build where it apparently did matter because of an > issue with the intltools package. I suspect this is where the issues over > the location of the build directory arose. Exactly. The build directory issues were due to intltool not working properly when the build directory was inside the source directory (except if it was a hidden directory by the way). This didn't start in gnucash-docs though, but in gnucash before we dropped intltool. We only dropped intltool a couple of weeks before releasing 3.0 because a recent enough gettext is needed instead. Note this is still missing on some platforms so these platforms can't be used to extract translatable strings. In practice this is not very important. Regards, Geert ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Robin, I think having a separate build directory is what you would consider best practice using cmake. Where that build directory is located does not appear to be a major issue from my reading of the CMake documentation so far. I have built other applications and libraries using cmake where a separate build directory was not used but it is certainly cleaner if you have to rebuild as you can just delete the build directory and start again which is not possible if you build in the top level source directory. I guess cmake does not have the equivalent of a make clean. In-source building also appears to be the default cmake behaviour. I could be wrong but so far have not had any problems For the Gnucash-3.0 program it does not appear to matter whether the build directory is outside or inside the top level gnucash-3.0 directory. I have built it successfully both with the build directory as a subdirectory of the toplevel gnucash-3.0 directory and with it as a parallel directory at the same level without any problems. The only difference is you have to ensure that the target specified in the cmake command is referencing the gnucash-3.0 directory (which contains the top levelCMakeLists.txt file with which cmake initiates its execution) particularly if you are using relative referencing to do so. I found a reference to an earlier post for the documentation build for GnuCash not the program build where it apparently did matter because of an issue with the intltools package. I suspect this is where the issues over the location of the build directory arose. You normally initiate the $cmake [options] command from a terminal which is opened in or set to the build directory. points to the directory containing the toplevel CmakeLists.txt file defined for your application, normally the top level source directory. With this directory structure: | |gnucash-3.0| |build |CMakeLists.txt can be any of .. or ../ or ../../gnucash-3.0. Here .. or ../ take you into the gnucash-3.0 directory from which the top level CMakeLists.txt is found. ../../gnucash-3.0 takes you to the directory with the ../.. part then /gnucash-3.0 puts you into the top level directory. Alternatively if the directory structure is: |gnucash-3.0| | |CMakeLists.txt |build would be ../gnucash-3.0 if you are using relative referencing. You can actually have the build diretory anywhere you like as long as there are no permissions issues and you correctly reference the gnucash-3.0 top level directory as the target for the cmake command. Alternatively you could also reference the top level directory absolutely. If in the above is an absolute path to the location of the toplevel gnucash-3.0 directory, i.e. of the form /home//applications, then you would supply the as /home//applications/gnucash-3.0. I have a personal preference for having the build directory under the top level folder because it keeps it all together (as long as it doesn't cause issues in the build). I just tested extracting a new copy from the downloaded archive over an existing extracted copy which had a build directory in it and the build directory and contents still existed and were unchanged after the second extraction to the same parent directory, so that is not an issue. David - David Cousens -- Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Jeffrey, My response re "30 years ago I swallowed new programming languages like jellybeans, today it takes a manual and 3 sledge hammers." is very similar although in my case it was closer to 40 years. At least being retired now I can take the time to bumble my way through these days. My own serious programming days were back when Fortran was still the language of choice. David - David Cousens -- Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Jeffrey, I tend to keep the stable release installed under /usr/local. If I have any unstable or work in progress versions I install them under /opt or under my home directory as John suggests in another reply. I usually set up aliases tagged with a version number or some other identifier pointing to the executables for each version (http://www.hostingadvice.com/how-to/set-command-aliases-linuxubuntudebian/). You don' really need to set up a VM for running different versions of GnuCash. That is more useful if you need to run or develop under different operating systems or variants (Linux, Mac , Windows, Gentto Fedora etc) for testing or if you are working on the development of different versions of the program where you may need to have different versions of libraries installed for each program version. David - David Cousens -- Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
I *was* enjoying my fresh build until I decided to try again from scratch in order to get the python bindings incorporated. So, I already have python2.7 and python3 since I had python bindings installed with Gnucash 2.6.19 previously. I took your suggestion and installed python3-pytest, but I'm still getting hung up at the same point: [ 29%] Linking C shared module ../../lib/gnucash/_unittest_support.so /usr/bin/ld: /usr/local/lib/libpython3.6m.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libpython3.6m.a: error adding symbols: Bad value collect2: error: ld returned 1 exit status common/test-core/CMakeFiles/unittest_support.dir/build.make:104: recipe for target 'lib/gnucash/_unittest_support.so' failed make[2]: *** [lib/gnucash/_unittest_support.so] Error 1 CMakeFiles/Makefile2:1746: recipe for target 'common/test-core/CMakeFiles/unittest_support.dir/all' failed make[1]: *** [common/test-core/CMakeFiles/unittest_support.dir/all] Error 2 Makefile:160: recipe for target 'all' failed make: *** [all] Error 2 I ran dpkg -l | grep pytest which returned: ii python3-pytest 2.8.7-4all Simple, powerful testing in Python3 On Fri, Apr 20, 2018 at 11:58 AM, Geert Janssenswrote: > > > > I was running into problems with cmake when I set -D WITH_PYTHON=ON. I > > didn't capture any of the error messages, but it IIRC it was complaining > > about not having some test utility. I eventually switched to -D > > WITH_PYTHON=OFF and I was able to proceed. Is it possible that this is > > related to not installing the GTEST/GMOCK packages? > > No this is not related to GTEST/GMOCK. When you enable python, the build > system requires the python testing framework, which is not always > installed by > default and the package to install it from differs greatly from platform > to > platform. On fedora it's called python3-pytest I believe. > > Enjoy your freshly built gnucash :) > > Geert > > > Thanks, Robin ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
> On Apr 20, 2018, at 10:50 AM, Geert Janssens> wrote: > > Op vrijdag 20 april 2018 19:23:36 CEST schreef jeffrey black: >> On 04/20/2018 11:44 AM, Robin Chattopadhyay wrote: >> >>> David- >>> >>> >>> >>> Thank you very much for this comprehensive tutorial for building from >>> source. I'm newish to Linux and I want to be able to do this but I've >>> been >>> confused. I managed to muddle through building 3.0 from source the >>> evening >>> before your email came. >>> >>> >>> >>> I have some lingering questions that maybe this group can help with: >>> After downloading the source and extracting the files, I made a second >>> directory for the build, so I had: >>> /home/foo/gnucash-3.0 >>> /home/foo/gnucash-build >>> >>> >>> >>> Is this a correct/reasonable/best practice? >>> >>> >>> >>> After I successfully ran cmake and make install and I can run gnucash, >>> what > if anything, can I or should I delete? Or should I keep the source >>> and build directories? >>> >>> >>> >>> I was running into problems with cmake when I set -D WITH_PYTHON=ON. I >>> didn't capture any of the error messages, but it IIRC it was complaining >>> about not having some test utility. I eventually switched to -D >>> WITH_PYTHON=OFF and I was able to proceed. Is it possible that this is >>> related to not installing the GTEST/GMOCK packages? >>> >>> >>> >>> Thanks, >>> Robin >>> >>> >>> >>> On Fri, Apr 20, 2018 at 3:35 AM, DaveC49 >>> wrote: >>> >>> >>> Jeffrey, I will start form scratch. The first step is setting up for building. My apologies if I am teaching you to suck eggs. Linux Mint has an alias of apt > defined for apt-get. I am not sure if it is also defined in Ubuntu. If not substitute apt-get where I have apt in the following. # first download a copy of the gnucash source code gnucash-3.0.tar.bz2 from > # https://www.gnucash.org/download.phtml and extract the gnucash-3.0 source file. I use a folder called # Applications in my home directory for programs and libraries I build from scratch and usually keep the # sources there so i can easily rebuild if I strike a problem, but that is just a personal preference. #Open a terminal/bash shell and then cd to the extracted folder gnucash-3.0. # this loads compilers,dev tools etc as per https://packages.ubuntu.com/xenial/build-essential $sudo apt install build essential $sudo apt install cmake #the next step is to install the gnucash dependencies as listed in the README.dependencies file under the #gnucash-3.0 folder. This generally lists the minimum version of the libraries required. You will generally find that Ubuntu will in most cases load a later version. I will list the command to load followed by the required version as in that file as a #comment separated by a #. The list on https://wiki.gnucash.org/wiki/Building lists the development headers that are required but you may also need to load the > libraries as well sudo apt-get install libtool libltdl-dev #glib2 >v2.40.0 sudo apt-get install libglib2.0 libglib2.0-dev sudo apt-get install icu-devtools libicu-dev # boost > 1.50.0 sudo apt-get install libboost-all-dev # guile >=2.0.0 sudo apt-get install guile-2.0 guile-2.0-dev #swig >2.0.10 sudo apt-get install swig2.0 sudo apt-get install libxml2 libxml++2.6-dev sudo apt-get install libxslt1.1 libxslt1-dev sudo apt-get install xsltproc sudo apt-get install libgtest-dev sudo apt-get install gtk+3.0 sudo apt-get install libgtk-3-dev sudo apt-get install libwebkit2gtk-4.0-37 sudo apt-get install libwebkit2gtk-4.0-dev sudo apt-get install libdbi1 libdbi-dev # if you use a database backend rather than the default XML backaend # you need to load at least one of the following # and choose the one relevant to the database you want to use sudo apt-get install libdbd-pgsql #PostgreSQL database sudo apt-get install libdbd-mysql # MySQL database sudo -get install libdbd-sqlite3 #Sqlite database # these are needed if you use online banking tools sudo apt-get install libofx6 libofx4 libofx-dev dpkg -lsudo apt-get aqbanking-tools libaqbanking-dev # this is required on linux systems it may be already installed but will tell you if it is sudo apt-get install dconf-cli # # you can check out what versions of packages are installed or not using the following command dpkg -l | grep # here can be the actual package name or a substring. grep will extract anything # from the dpkg -l output which contains that substring # # The
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Op vrijdag 20 april 2018 19:23:36 CEST schreef jeffrey black: > On 04/20/2018 11:44 AM, Robin Chattopadhyay wrote: > > > David- > > > > > > > > Thank you very much for this comprehensive tutorial for building from > > source. I'm newish to Linux and I want to be able to do this but I've > > been > > confused. I managed to muddle through building 3.0 from source the > > evening > > before your email came. > > > > > > > > I have some lingering questions that maybe this group can help with: > > After downloading the source and extracting the files, I made a second > > directory for the build, so I had: > > /home/foo/gnucash-3.0 > > /home/foo/gnucash-build > > > > > > > > Is this a correct/reasonable/best practice? > > > > > > > > After I successfully ran cmake and make install and I can run gnucash, > > what if anything, can I or should I delete? Or should I keep the source > > and build directories? > > > > > > > > I was running into problems with cmake when I set -D WITH_PYTHON=ON. I > > didn't capture any of the error messages, but it IIRC it was complaining > > about not having some test utility. I eventually switched to -D > > WITH_PYTHON=OFF and I was able to proceed. Is it possible that this is > > related to not installing the GTEST/GMOCK packages? > > > > > > > > Thanks, > > Robin > > > > > > > > On Fri, Apr 20, 2018 at 3:35 AM, DaveC49> > wrote: > > > > > > > >> Jeffrey, > >> > >> > >> > >> I will start form scratch. The first step is setting up for building. My > >> apologies if I am teaching you to suck eggs. Linux Mint has an alias of > >> apt defined for apt-get. I am not sure if it is also defined in Ubuntu. > >> If not substitute apt-get where I have apt in the following. > >> > >> > >> > >> # first download a copy of the gnucash source code gnucash-3.0.tar.bz2 > >> from # https://www.gnucash.org/download.phtml and extract the > >> gnucash-3.0 source > >> file. I use a folder called # Applications in my home directory for > >> programs > >> and libraries I build from scratch and usually keep the > >> # sources there so i can easily rebuild if I strike a problem, but that > >> is > >> just a personal preference. > >> > >> > >> > >> #Open a terminal/bash shell and then cd to the extracted folder > >> gnucash-3.0. > >> > >> > >> > >> # this loads compilers,dev tools etc as per > >> https://packages.ubuntu.com/xenial/build-essential > >> $sudo apt install build essential > >> $sudo apt install cmake > >> > >> > >> > >> #the next step is to install the gnucash dependencies as listed in the > >> README.dependencies file under the #gnucash-3.0 folder. This generally > >> lists > >> the minimum version of the libraries required. You will generally find > >> that > >> Ubuntu will in most cases load a later version. I will list the command > >> to > >> load followed by the required version as in that file as a #comment > >> separated by a #. The list on https://wiki.gnucash.org/wiki/Building > >> lists > >> the development headers that are required but you may also need to load > >> the libraries as well > >> > >> > >> > >> sudo apt-get install libtool libltdl-dev > >> #glib2 >v2.40.0 > >> sudo apt-get install libglib2.0 libglib2.0-dev > >> sudo apt-get install icu-devtools libicu-dev > >> # boost > 1.50.0 > >> sudo apt-get install libboost-all-dev > >> # guile >=2.0.0 > >> sudo apt-get install guile-2.0 guile-2.0-dev > >> #swig >2.0.10 > >> sudo apt-get install swig2.0 > >> sudo apt-get install libxml2 libxml++2.6-dev > >> sudo apt-get install libxslt1.1 libxslt1-dev > >> sudo apt-get install xsltproc > >> sudo apt-get install libgtest-dev > >> sudo apt-get install gtk+3.0 > >> sudo apt-get install libgtk-3-dev > >> sudo apt-get install libwebkit2gtk-4.0-37 > >> sudo apt-get install libwebkit2gtk-4.0-dev > >> sudo apt-get install libdbi1 libdbi-dev > >> # if you use a database backend rather than the default XML backaend > >> # you need to load at least one of the following > >> # and choose the one relevant to the database you want to use > >> sudo apt-get install libdbd-pgsql #PostgreSQL database > >> sudo apt-get install libdbd-mysql # MySQL database > >> sudo -get install libdbd-sqlite3 #Sqlite database > >> # these are needed if you use online banking tools > >> sudo apt-get install libofx6 libofx4 libofx-dev > >> dpkg -lsudo apt-get aqbanking-tools libaqbanking-dev > >> # this is required on linux systems it may be already installed but will > >> tell you if it is > >> sudo apt-get install dconf-cli > >> # > >> # you can check out what versions of packages are installed or not using > >> the > >> following command > >> dpkg -l | grep > >> # here can be the actual package name or a substring. > >> grep > >> will extract anything > >> # from the dpkg -l output which contains that substring > >> # > >> # The next step is getting googletest setup. The version from the Ubuntu > >> repository is 1.7.0 and does not > >> # contain gmock within the
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
On 04/20/2018 11:44 AM, Robin Chattopadhyay wrote: > David- > > Thank you very much for this comprehensive tutorial for building from > source. I'm newish to Linux and I want to be able to do this but I've been > confused. I managed to muddle through building 3.0 from source the evening > before your email came. > > I have some lingering questions that maybe this group can help with: > After downloading the source and extracting the files, I made a second > directory for the build, so I had: > /home/foo/gnucash-3.0 > /home/foo/gnucash-build > > Is this a correct/reasonable/best practice? > > After I successfully ran cmake and make install and I can run gnucash, what > if anything, can I or should I delete? Or should I keep the source and > build directories? > > I was running into problems with cmake when I set -D WITH_PYTHON=ON. I > didn't capture any of the error messages, but it IIRC it was complaining > about not having some test utility. I eventually switched to -D > WITH_PYTHON=OFF and I was able to proceed. Is it possible that this is > related to not installing the GTEST/GMOCK packages? > > Thanks, > Robin > > On Fri, Apr 20, 2018 at 3:35 AM, DaveC49wrote: > >> Jeffrey, >> >> I will start form scratch. The first step is setting up for building. My >> apologies if I am teaching you to suck eggs. Linux Mint has an alias of apt >> defined for apt-get. I am not sure if it is also defined in Ubuntu. If not >> substitute apt-get where I have apt in the following. >> >> # first download a copy of the gnucash source code gnucash-3.0.tar.bz2 from >> # https://www.gnucash.org/download.phtml and extract the gnucash-3.0 >> source >> file. I use a folder called # Applications in my home directory for >> programs >> and libraries I build from scratch and usually keep the >> # sources there so i can easily rebuild if I strike a problem, but that is >> just a personal preference. >> >> #Open a terminal/bash shell and then cd to the extracted folder >> gnucash-3.0. >> >> # this loads compilers,dev tools etc as per >> https://packages.ubuntu.com/xenial/build-essential >> $sudo apt install build essential >> $sudo apt install cmake >> >> #the next step is to install the gnucash dependencies as listed in the >> README.dependencies file under the #gnucash-3.0 folder. This generally >> lists >> the minimum version of the libraries required. You will generally find >> that >> Ubuntu will in most cases load a later version. I will list the command to >> load followed by the required version as in that file as a #comment >> separated by a #. The list on https://wiki.gnucash.org/wiki/Building lists >> the development headers that are required but you may also need to load the >> libraries as well >> >> sudo apt-get install libtool libltdl-dev >> #glib2 >v2.40.0 >> sudo apt-get install libglib2.0 libglib2.0-dev >> sudo apt-get install icu-devtools libicu-dev >> # boost > 1.50.0 >> sudo apt-get install libboost-all-dev >> # guile >=2.0.0 >> sudo apt-get install guile-2.0 guile-2.0-dev >> #swig >2.0.10 >> sudo apt-get install swig2.0 >> sudo apt-get install libxml2 libxml++2.6-dev >> sudo apt-get install libxslt1.1 libxslt1-dev >> sudo apt-get install xsltproc >> sudo apt-get install libgtest-dev >> sudo apt-get install gtk+3.0 >> sudo apt-get install libgtk-3-dev >> sudo apt-get install libwebkit2gtk-4.0-37 >> sudo apt-get install libwebkit2gtk-4.0-dev >> sudo apt-get install libdbi1 libdbi-dev >> # if you use a database backend rather than the default XML backaend >> # you need to load at least one of the following >> # and choose the one relevant to the database you want to use >> sudo apt-get install libdbd-pgsql #PostgreSQL database >> sudo apt-get install libdbd-mysql # MySQL database >> sudo -get install libdbd-sqlite3 #Sqlite database >> # these are needed if you use online banking tools >> sudo apt-get install libofx6 libofx4 libofx-dev >> dpkg -lsudo apt-get aqbanking-tools libaqbanking-dev >> # this is required on linux systems it may be already installed but will >> tell you if it is >> sudo apt-get install dconf-cli >> # >> # you can check out what versions of packages are installed or not using >> the >> following command >> dpkg -l | grep >> # here can be the actual package name or a substring. grep >> will extract anything >> # from the dpkg -l output which contains that substring >> # >> # The next step is getting googletest setup. The version from the Ubuntu >> repository is 1.7.0 and does not >> # contain gmock within the gtest download. V1.8.0 has both in the one >> repository and is a little bit easier >> # to setup. Google do not recommend using googlemock and googletest as >> shared dynamically linked >> # libraries because if a program is compiled with different compiler flags >> from the libraries links to them >> # at run time they can fail something I did not appreciate but I haven't >> had >> any problems so far. >> # To set it up as recommended by
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Congratulations on building gnucash! Op vrijdag 20 april 2018 18:44:15 CEST schreef Robin Chattopadhyay: > David- > > Thank you very much for this comprehensive tutorial for building from > source. I'm newish to Linux and I want to be able to do this but I've been > confused. I managed to muddle through building 3.0 from source the evening > before your email came. > > I have some lingering questions that maybe this group can help with: > After downloading the source and extracting the files, I made a second > directory for the build, so I had: > /home/foo/gnucash-3.0 > /home/foo/gnucash-build > > Is this a correct/reasonable/best practice? Yes, making a build director next to your source directory is a good practice though more experienced developers may prefer different naming schemes. > > After I successfully ran cmake and make install and I can run gnucash, what > if anything, can I or should I delete? Or should I keep the source and > build directories? > It depends a bit on where you chose to install gnucash and what you want to do next. First, if you chose to install gnucash somewhere under /usr you will probably want to keep both directories because the only way to cleanly remove gnucash starts from your build directory in that case. If it's in a directory inside your home directory, that doesn't play. Uninstalling there will be as easy as removing the directory in which it got installed. In summary, you won't need either directory again to "run" gnucash. You may want to keep it to "uninstall" gnucash, or to rebuild (perhaps from a git clone instead of a release tarball to get the latest fixes). > I was running into problems with cmake when I set -D WITH_PYTHON=ON. I > didn't capture any of the error messages, but it IIRC it was complaining > about not having some test utility. I eventually switched to -D > WITH_PYTHON=OFF and I was able to proceed. Is it possible that this is > related to not installing the GTEST/GMOCK packages? No this is not related to GTEST/GMOCK. When you enable python, the build system requires the python testing framework, which is not always installed by default and the package to install it from differs greatly from platform to platform. On fedora it's called python3-pytest I believe. Enjoy your freshly built gnucash :) Geert ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
David- Thank you very much for this comprehensive tutorial for building from source. I'm newish to Linux and I want to be able to do this but I've been confused. I managed to muddle through building 3.0 from source the evening before your email came. I have some lingering questions that maybe this group can help with: After downloading the source and extracting the files, I made a second directory for the build, so I had: /home/foo/gnucash-3.0 /home/foo/gnucash-build Is this a correct/reasonable/best practice? After I successfully ran cmake and make install and I can run gnucash, what if anything, can I or should I delete? Or should I keep the source and build directories? I was running into problems with cmake when I set -D WITH_PYTHON=ON. I didn't capture any of the error messages, but it IIRC it was complaining about not having some test utility. I eventually switched to -D WITH_PYTHON=OFF and I was able to proceed. Is it possible that this is related to not installing the GTEST/GMOCK packages? Thanks, Robin On Fri, Apr 20, 2018 at 3:35 AM, DaveC49wrote: > Jeffrey, > > I will start form scratch. The first step is setting up for building. My > apologies if I am teaching you to suck eggs. Linux Mint has an alias of apt > defined for apt-get. I am not sure if it is also defined in Ubuntu. If not > substitute apt-get where I have apt in the following. > > # first download a copy of the gnucash source code gnucash-3.0.tar.bz2 from > # https://www.gnucash.org/download.phtml and extract the gnucash-3.0 > source > file. I use a folder called # Applications in my home directory for > programs > and libraries I build from scratch and usually keep the > # sources there so i can easily rebuild if I strike a problem, but that is > just a personal preference. > > #Open a terminal/bash shell and then cd to the extracted folder > gnucash-3.0. > > # this loads compilers,dev tools etc as per > https://packages.ubuntu.com/xenial/build-essential > $sudo apt install build essential > $sudo apt install cmake > > #the next step is to install the gnucash dependencies as listed in the > README.dependencies file under the #gnucash-3.0 folder. This generally > lists > the minimum version of the libraries required. You will generally find > that > Ubuntu will in most cases load a later version. I will list the command to > load followed by the required version as in that file as a #comment > separated by a #. The list on https://wiki.gnucash.org/wiki/Building lists > the development headers that are required but you may also need to load the > libraries as well > > sudo apt-get install libtool libltdl-dev > #glib2 >v2.40.0 > sudo apt-get install libglib2.0 libglib2.0-dev > sudo apt-get install icu-devtools libicu-dev > # boost > 1.50.0 > sudo apt-get install libboost-all-dev > # guile >=2.0.0 > sudo apt-get install guile-2.0 guile-2.0-dev > #swig >2.0.10 > sudo apt-get install swig2.0 > sudo apt-get install libxml2 libxml++2.6-dev > sudo apt-get install libxslt1.1 libxslt1-dev > sudo apt-get install xsltproc > sudo apt-get install libgtest-dev > sudo apt-get install gtk+3.0 > sudo apt-get install libgtk-3-dev > sudo apt-get install libwebkit2gtk-4.0-37 > sudo apt-get install libwebkit2gtk-4.0-dev > sudo apt-get install libdbi1 libdbi-dev > # if you use a database backend rather than the default XML backaend > # you need to load at least one of the following > # and choose the one relevant to the database you want to use > sudo apt-get install libdbd-pgsql #PostgreSQL database > sudo apt-get install libdbd-mysql # MySQL database > sudo -get install libdbd-sqlite3 #Sqlite database > # these are needed if you use online banking tools > sudo apt-get install libofx6 libofx4 libofx-dev > dpkg -lsudo apt-get aqbanking-tools libaqbanking-dev > # this is required on linux systems it may be already installed but will > tell you if it is > sudo apt-get install dconf-cli > # > # you can check out what versions of packages are installed or not using > the > following command > dpkg -l | grep > # here can be the actual package name or a substring. grep > will extract anything > # from the dpkg -l output which contains that substring > # > # The next step is getting googletest setup. The version from the Ubuntu > repository is 1.7.0 and does not > # contain gmock within the gtest download. V1.8.0 has both in the one > repository and is a little bit easier > # to setup. Google do not recommend using googlemock and googletest as > shared dynamically linked > # libraries because if a program is compiled with different compiler flags > from the libraries links to them > # at run time they can fail something I did not appreciate but I haven't > had > any problems so far. > # To set it up as recommended by Google and the developers, at a terminal > opened in a suitable folder (e.g. $HOME/Applications is what I use) enter: > # > git clone https://github.com/google/googletest.git > # > #this
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Jeffrey, I will start form scratch. The first step is setting up for building. My apologies if I am teaching you to suck eggs. Linux Mint has an alias of apt defined for apt-get. I am not sure if it is also defined in Ubuntu. If not substitute apt-get where I have apt in the following. # first download a copy of the gnucash source code gnucash-3.0.tar.bz2 from # https://www.gnucash.org/download.phtml and extract the gnucash-3.0 source file. I use a folder called # Applications in my home directory for programs and libraries I build from scratch and usually keep the # sources there so i can easily rebuild if I strike a problem, but that is just a personal preference. #Open a terminal/bash shell and then cd to the extracted folder gnucash-3.0. # this loads compilers,dev tools etc as per https://packages.ubuntu.com/xenial/build-essential $sudo apt install build essential $sudo apt install cmake #the next step is to install the gnucash dependencies as listed in the README.dependencies file under the #gnucash-3.0 folder. This generally lists the minimum version of the libraries required. You will generally find that Ubuntu will in most cases load a later version. I will list the command to load followed by the required version as in that file as a #comment separated by a #. The list on https://wiki.gnucash.org/wiki/Building lists the development headers that are required but you may also need to load the libraries as well sudo apt-get install libtool libltdl-dev #glib2 >v2.40.0 sudo apt-get install libglib2.0 libglib2.0-dev sudo apt-get install icu-devtools libicu-dev # boost > 1.50.0 sudo apt-get install libboost-all-dev # guile >=2.0.0 sudo apt-get install guile-2.0 guile-2.0-dev #swig >2.0.10 sudo apt-get install swig2.0 sudo apt-get install libxml2 libxml++2.6-dev sudo apt-get install libxslt1.1 libxslt1-dev sudo apt-get install xsltproc sudo apt-get install libgtest-dev sudo apt-get install gtk+3.0 sudo apt-get install libgtk-3-dev sudo apt-get install libwebkit2gtk-4.0-37 sudo apt-get install libwebkit2gtk-4.0-dev sudo apt-get install libdbi1 libdbi-dev # if you use a database backend rather than the default XML backaend # you need to load at least one of the following # and choose the one relevant to the database you want to use sudo apt-get install libdbd-pgsql #PostgreSQL database sudo apt-get install libdbd-mysql # MySQL database sudo -get install libdbd-sqlite3 #Sqlite database # these are needed if you use online banking tools sudo apt-get install libofx6 libofx4 libofx-dev dpkg -lsudo apt-get aqbanking-tools libaqbanking-dev # this is required on linux systems it may be already installed but will tell you if it is sudo apt-get install dconf-cli # # you can check out what versions of packages are installed or not using the following command dpkg -l | grep # here can be the actual package name or a substring. grep will extract anything # from the dpkg -l output which contains that substring # # The next step is getting googletest setup. The version from the Ubuntu repository is 1.7.0 and does not # contain gmock within the gtest download. V1.8.0 has both in the one repository and is a little bit easier # to setup. Google do not recommend using googlemock and googletest as shared dynamically linked # libraries because if a program is compiled with different compiler flags from the libraries links to them # at run time they can fail something I did not appreciate but I haven't had any problems so far. # To set it up as recommended by Google and the developers, at a terminal opened in a suitable folder (e.g. $HOME/Applications is what I use) enter: # git clone https://github.com/google/googletest.git # #this will create a folder googletest-master which has sub folders googletest and googlemock # cd googletest-master cmake -D BUILD_GTEST -DBUILD_GMOCK make # this creates the gtest and gmock libraries within the googletest-master folder but does not install them # as shared dynamically linked libraries. You then need to create environment variables pointing to the # top level folders containing these libraries export GTEST_ROOT=/googletest export GMOCK_ROOT=/googlemock # where is in my case $HOME/Applications/googletest-master. This allows # CMake to find the googletest and googlemock libraries and include files to link into the program. # # At this point you should be ready to build gnucash. I prefer to install it in the /usr/local folder. This is # where the linux distros generally install it. If your previous version was installed from a Linux # distribution this is normally where it will be. It can also be installed under /opt. The essential step I # found was to ensure that all traces of any previous version of GnuCash were removed before doing # the build. #If you previously had a version from the Linux distro sudo apt-get remove gnucash # should achieve this. If you built a previous version from sources and still have the build sources # change to the build
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
On 04/19/2018 02:38 AM, DaveC49 wrote: > Jeffrey, > > There should be no significant difference in building Gnucash 3.0 on Ubuntu > Xenial from Linux Mint 18.3 which I have just finished doing, if you need > some guidance in doing that. I have proposed a rewrite of the Wiki page to > the developers to try and make the build instructions a bit more > straightforward and a bit more comprehensive. I used the latest version of > googletest v 1.8.0 from github. Unlike the previous versions it can be > readily installed as shared libraries. I can send instructions for setting > that up if you wish. At present using shared libraries requires a patch to > some of the CMake files to detect the shared googletest libraries which > isn't to my knowledge yet in the stable branch at this stage, but I can send > you already patched versions to just insert into the v3.0 download over the > previous versions. The only build problems I had were ensuring that the > previous build libraries, include files etc had been removed and correctly > addressing the correct toplevel CmakeLists.txt file from the Cmake file (my > own lack of understanding of CMake when I started). > > As far as I know the main datafile structure has not changed and it is only > the user preference files which changed from V2.6.19 to v3.0 so if you are > running different versions on different machines, they should transfer OK. > The only problem would be if v3.0, in new features, added new information > that v 2.6.19 was unable to interpret. > > David Cousens > > > > - > David Cousens > -- > Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html > ___ > gnucash-devel mailing list > gnucash-devel@gnucash.org > https://lists.gnucash.org/mailman/listinfo/gnucash-devel > . > David: I am willing to give it a shot. Being able to do a native build of my own would give me greater insight into how all of the files are tied together, and possibly give me a chance to use newer versions sooner. Once all of my computer issues are corrected I will probably switch to Mint but; right now Ubuntu is up and running, allowing me to access my crashed Windoze server, non-propriety data only. And I now have file sharing with my laptop. I do not want to risk breaking this system any further right now, until I can get the Windoze server to boot again. The build documentation was more than a little confusing in places, for a nooby trying to do his first build. There are directions and examples that literally did not make sense, unless you are fully familiar with doing a build. Instead of doing a parallel processing build, I felt like I was doing a parallel read of documentation and the reads were out of sync. And cmake is entirely new to me. It kept throwing error messages, some of which I managed to find and correct, finally I gave up. 30 years ago I swallowed new programming languages like jellybeans, today it takes a manual and 3 sledge hammers. --JEffrey Black M.B.A. ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Jeffrey, There should be no significant difference in building Gnucash 3.0 on Ubuntu Xenial from Linux Mint 18.3 which I have just finished doing, if you need some guidance in doing that. I have proposed a rewrite of the Wiki page to the developers to try and make the build instructions a bit more straightforward and a bit more comprehensive. I used the latest version of googletest v 1.8.0 from github. Unlike the previous versions it can be readily installed as shared libraries. I can send instructions for setting that up if you wish. At present using shared libraries requires a patch to some of the CMake files to detect the shared googletest libraries which isn't to my knowledge yet in the stable branch at this stage, but I can send you already patched versions to just insert into the v3.0 download over the previous versions. The only build problems I had were ensuring that the previous build libraries, include files etc had been removed and correctly addressing the correct toplevel CmakeLists.txt file from the Cmake file (my own lack of understanding of CMake when I started). As far as I know the main datafile structure has not changed and it is only the user preference files which changed from V2.6.19 to v3.0 so if you are running different versions on different machines, they should transfer OK. The only problem would be if v3.0, in new features, added new information that v 2.6.19 was unable to interpret. David Cousens - David Cousens -- Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-Dev-f1435356.html ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Jeffrey, perhaps a stupid question - why don't you install a native linux version of GnuCash instead of running a Windows version under Wine? I use the same xml/sql book with linux and windows versions interchangably and there are no issues (that I can see, at least!). Also, just for comparison, Windows version loads my book in ~30 seconds while linux version loads the same book in 5. You may even benefit from an increased performance. Versions 3.0 and 2.6.19 are not compatible. Version 2.6.21 should be, though. However, can't confirm that 100% as I've moved to 3.0 and it worked ok for me so far. > Sent: Wednesday, April 18, 2018 at 9:40 AM > From: "jeffrey black" <beastmaster...@hotmail.com> > To: "Gnucash userlist" <gnucash-u...@gnucash.org>, gnucash-devel > <gnucash-devel@gnucash.org> > Subject: [GNC-dev] GnuCash 3.0 wine versus Windoze 10 > > Before I do something incredibly stupid, like I did in hard crashing my > Windoze server because of a virus (IRS search miss-key, go figure), and > the boot partitions seem to be non-repairable even though all data and > programs are still on disk. (And yes, I know stupid of me to not have a > current backup). I still have legacy apps with data stored internally > that are not extractable without Windoze and without a reliable backup > per partition, per drive, I am not going to touch those drives until I > can find a way to recover everything. > > Can GnuCash 3.0 be run under Wine on Ubuntu Xenial? 3.0 has features > that I need. It wants to install on only my Windoze dives which I will > not do until I have all of the data extracted. I have been unable to > build 3.0 from source code. (yes I know Mint is a better choice but; > until I recover all of the data from Windoze I am not changing, Ubuntu > is up and running, Hallelujah, on it's own dedicated drive). > > Second Question: My laptop still has Windoze 10 home, so can I install > GnuCash 3.0 on it and use it with Windoze GnuCash Version 2.6.19 data > files on the server files which are still accessible via Ubuntu file > share with Windoze 10? Are the data files compatible? I have 20+ years > of data that I definitely can not afford to loose (think divorce). > ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] GnuCash 3.0 wine versus Windoze 10
Gnucash runs better on a Linux system than it does on Windows. My understanding is that it is Linux s/w adapted to run on Windows. So if you want to run Ubuntu ( which is an excellent idea) then run GC natively on that, not under wine. You will be able to install gnucash from the software manager, it will install a 2.x version not 3.x as that has not yet worked its way into the repositories. For recovering your data boot of a live Ubuntu DVD/USB stick and then you will be able to copy the files off the disc onto another stick or network drive. Colin On 18 April 2018 at 08:40, jeffrey blackwrote: > Before I do something incredibly stupid, like I did in hard crashing my > Windoze server because of a virus (IRS search miss-key, go figure), and > the boot partitions seem to be non-repairable even though all data and > programs are still on disk. (And yes, I know stupid of me to not have a > current backup). I still have legacy apps with data stored internally > that are not extractable without Windoze and without a reliable backup > per partition, per drive, I am not going to touch those drives until I > can find a way to recover everything. > > Can GnuCash 3.0 be run under Wine on Ubuntu Xenial? 3.0 has features > that I need. It wants to install on only my Windoze dives which I will > not do until I have all of the data extracted. I have been unable to > build 3.0 from source code. (yes I know Mint is a better choice but; > until I recover all of the data from Windoze I am not changing, Ubuntu > is up and running, Hallelujah, on it's own dedicated drive). > > Second Question: My laptop still has Windoze 10 home, so can I install > GnuCash 3.0 on it and use it with Windoze GnuCash Version 2.6.19 data > files on the server files which are still accessible via Ubuntu file > share with Windoze 10? Are the data files compatible? I have 20+ years > of data that I definitely can not afford to loose (think divorce). > > --JEffrey Black M.B.A. > > > > ___ > gnucash-devel mailing list > gnucash-devel@gnucash.org > https://lists.gnucash.org/mailman/listinfo/gnucash-devel > ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
[GNC-dev] GnuCash 3.0 wine versus Windoze 10
Before I do something incredibly stupid, like I did in hard crashing my Windoze server because of a virus (IRS search miss-key, go figure), and the boot partitions seem to be non-repairable even though all data and programs are still on disk. (And yes, I know stupid of me to not have a current backup). I still have legacy apps with data stored internally that are not extractable without Windoze and without a reliable backup per partition, per drive, I am not going to touch those drives until I can find a way to recover everything. Can GnuCash 3.0 be run under Wine on Ubuntu Xenial? 3.0 has features that I need. It wants to install on only my Windoze dives which I will not do until I have all of the data extracted. I have been unable to build 3.0 from source code. (yes I know Mint is a better choice but; until I recover all of the data from Windoze I am not changing, Ubuntu is up and running, Hallelujah, on it's own dedicated drive). Second Question: My laptop still has Windoze 10 home, so can I install GnuCash 3.0 on it and use it with Windoze GnuCash Version 2.6.19 data files on the server files which are still accessible via Ubuntu file share with Windoze 10? Are the data files compatible? I have 20+ years of data that I definitely can not afford to loose (think divorce). --JEffrey Black M.B.A. ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel