Almost there but not quite. In which directory in your home directory /home/dennis have you extracted the gnucash-3.1 directory from the tarball gnucash-3.1.tar.bz2 which you downloaded. Can you tell me the full path to that directory and the full path to the build-cmake directory you have created?
I was told to extract it to the Applications folder, certainly, I can move that to the home folder. I was never told or read to specify a location for the build-cmake directory. I'm not real sure where to place that. Yes that path to the tarball file extracted is the Applications /home/dennis/Applications/gnucash-3.1 dennis@dennis:~/Applications$ ls gnucash-3.1 Next chack that $HOME is defined, type echo $HOME into a shell/terminal. It should return "/home/dennis". yes it returned /home/dennis With the "-DCMAKE_INSTALL_PREFIX=$HOME/.local/gnucash-3.1", the install process will create the following directory structure: /home/dennis/.local/gnucash-3.1/bin/gnucash /home/dennis/.local/gnucash-3.1/etc/gnucash /home/dennis/.local/gnucash-3.1/lib/gnucash /home/dennis/.local/gnucash-3.1/share/gnucash I was under the impression you had to identify the gnucash-3.1 in order for the 'installer' to find it It will also create those same four directories underneath a parent folder for any other application you install with a similar prefix. If you use the "-DCMAKE_INSTALL_PREFIX=$HOME/.local" as the install location you will get the structure: /home/dennis/.local/bin/gnucash /home/dennis/.local/etc/gnucash /home/dennis/.local/lib/gnucash /home/dennis/.local/share/gnucash. I certainly can use this one. The latter is normally the preferred arrangement as when other applications are installed their files will also go in the same /home/dennis/.local/bin /home/dennis/.local/etc /home/dennis/.local/lib home/dennis/.local/share directories. Both of the above will work as if you want to uninstall Gnucash you issue "make unistall" command in the build-cmake directory you created and that uses the contents of a file "install_manifest.txt" which records the locations in which the files were installed. The latter is the structure that is normally used by most Linux developers in the system directories /usr, /usr/local and /opt, so mirroring that makes it a little easier in translating instructions that are written with a different base location in mind. CMake and make are different tools. CMake is a precompiler which checks that any dependent libraries and headr files are installed and available for the build system to use. It also creates in the build-cmake directory a parallel structure to the source directories containing files named Makefile which are used separately by the make tool to compile the program. It also contains bin, etc, lib and share directories into which the compiled sources are placed ready for installation. Entering the "make" command in the shell/terminal starts the process of building these directories within the build-cmake file. The final command "make install" ( or sudo make install if you are installing to a system location) copies these directories to the install location specified by the -DCMAKE_INSTALL_PREFIX switch applied to the cmake command. In the camke command as you had it specified "cmake -DCMAKE_INSTALL_PREFIX=$HOME/.local/gnucash-3.1 make" "make" is not a legitimate part of the cmake command. It is a separate command which follows the cmake command, as explained above. Instead of make, you need in that position in the cmake command a path reference to the guncash-3.1 directory. You will remember I aksed you above to tell me the locations of it in your home directory structure. It may be something like /home/dennis/Applications/gnucash-3.1. In this case you would simply use the string "/home/dennis/Applications/gnucash-3.1" (without the quotes) where you have "make" in the cmake command. That is known as an absolute reference to the location of the gnucash source directory. That is probably the easiest to use as relative path from the build-cmake location to the gnucash-3.1 location can be a little more difficult to work out. Assuming the above location(substitute the correct path if not) the cmake command would be: cmake -DCMAKE_INSTALL_PREFIX=/home/dennis/.local /home/dennis/Applications/gnucash-3.1 I accidentally wrote the make at the end, I thought the make on the second to last line was carried over from the previous The problem with writing instructions is that you generally have to assume a base level of knowledge on the part of the reader and unfortunately many of us do not have the assumed base level when we first try something, myself included. For the Gnucash User list, I think the assumed knowledge when it comes to building the software itself would be something like (but it is not clearly defined): Knowledge of the operating system you are using; Knowledge of its file system and structure; Knowledge of navigating the above; General familiararity with building software for the OS and the tools used to do it; The transition to GnuCash 3.1 is a bit more difficult than usual as the developers have made changes to how the software is built, introducing cmake instead of the configure script used by the autotools system so that it is more flexible and more easily maintained in the future. make itself is one component of the autotools used for building software on Linux systems. Add to that that there are many varieties of Linux which are all evolving along different paths with different sequential versions within each variety. Each variety often has its own system tools with different names. Even within linux Mint which is a derivative of Ubuntu I cannot really assume that all users will have the same gui system although most of the shell level commands are the same. Then you have Windows and Mac-OSX to worry about I am trying to write the instructions with the above general knowledge base in mind but I won't always succeed first off. I am monitoring the User and Dev lists for problems people encounter that I haven't covered so that I can continue to refine the instructions. Google, the Ubuntu forums and other Linux forums can help where I have assumed an understanding of Linux you or others may not have. I'm trying to figure this out, as I like to keep up to date on stable releases, but never knew how to build them. So, I just kept with the official release from ubuntu, which is older. Do I cd to a specific location to start this process or do I do it from home?? mkdir build-cmake cd build-cmake cmake -DCMAKE_INSTALL_PREFIX=/home/dennis/.local ??spaces here??? /home/dennis/Applications/gnucash-3.1 make sudo make install Thanks for explaining what these things all mean, its helping. I've read up on these things, well mostly the make, check install, check install etc... and there is quite a bit of conflicting things out there, some that makes sense and some that don't. Dennis On Sat, May 5, 2018 at 8:22 PM, DaveC49 <davidcous...@bigpond.com> wrote: > Hi Dennis, > > Almost there but not quite. In which directory in your home directory > /home/dennis have you extracted the gnucash-3.1 directory from the tarball > gnucash-3.1.tar.bz2 which you downloaded. Can you tell me the full path to > that directory and the full path to the build-cmake directory you have > created? > > Next chack that $HOME is defined, type echo $HOME into a shell/terminal. It > should return "/home/dennis". > > With the "-DCMAKE_INSTALL_PREFIX=$HOME/.local/gnucash-3.1", the install > process will create the following directory structure: > /home/dennis/.local/gnucash-3.1/bin/gnucash > /home/dennis/.local/gnucash-3.1/etc/gnucash > /home/dennis/.local/gnucash-3.1/lib/gnucash > /home/dennis/.local/gnucash-3.1/share/gnucash > > It will also create those same four directories underneath a parent folder > for any other application you install with a similar prefix. > > If you use the "-DCMAKE_INSTALL_PREFIX=$HOME/.local" as the install > location > you will get the structure: > /home/dennis/.local/bin/gnucash > /home/dennis/.local/etc/gnucash > /home/dennis/.local/lib/gnucash > /home/dennis/.local/share/gnucash. > > The latter is normally the preferred arrangement as when other > applications > are installed their files will also go in the same > /home/dennis/.local/bin > /home/dennis/.local/etc > /home/dennis/.local/lib > home/dennis/.local/share > directories. > > Both of the above will work as if you want to uninstall Gnucash you issue > "make unistall" command in the build-cmake directory you created and that > uses the contents of a file "install_manifest.txt" which records the > locations in which the files were installed. The latter is the structure > that is normally used by most Linux developers in the system directories > /usr, /usr/local and /opt, so mirroring that makes it a little easier in > translating instructions that are written with a different base location in > mind. > > CMake and make are different tools. CMake is a precompiler which checks > that > any dependent libraries and headr files are installed and available for the > build system to use. It also creates in the build-cmake directory a > parallel > structure to the source directories containing files named Makefile which > are used separately by the make tool to compile the program. It also > contains bin, etc, lib and share directories into which the compiled > sources > are placed ready for installation. > > Entering the "make" command in the shell/terminal starts the process of > building these directories within the build-cmake file. > > The final command "make install" ( or sudo make install if you are > installing to a system location) copies these directories to the install > location specified by the -DCMAKE_INSTALL_PREFIX switch applied to the > cmake > command. > > In the camke command as you had it specified > "cmake -DCMAKE_INSTALL_PREFIX=$HOME/.local/gnucash-3.1 make" > > "make" is not a legitimate part of the cmake command. It is a separate > command which follows the cmake command, as explained above. Instead of > make, you need in that position in the cmake command a path reference to > the > guncash-3.1 directory. You will remember I aksed you above to tell me the > locations of it in your home directory structure. It may be something like > /home/dennis/Applications/gnucash-3.1. In this case you would simply use > the > string "/home/dennis/Applications/gnucash-3.1" (without the quotes) where > you have "make" in the cmake command. That is known as an absolute > reference > to the location of the gnucash source directory. That is probably the > easiest to use as relative path from the build-cmake location to the > gnucash-3.1 location can be a little more difficult to work out. Assuming > the above location(substitute the correct path if not) the cmake command > would be: > > cmake -DCMAKE_INSTALL_PREFIX=/home/dennis/.local > /home/dennis/Applications/gnucash-3.1 > > The problem with writing instructions is that you generally have to assume > a > base level of knowledge on the part of the reader and unfortunately many of > us do not have the assumed base level when we first try something, myself > included. For the Gnucash User list, I think the assumed knowledge when it > comes to building the software itself would be something like (but it is > not > clearly defined): > > Knowledge of the operating system you are using; > Knowledge of its file system and structure; > Knowledge of navigating the above; > General familiararity with building software for the OS and the tools used > to do it; > > The transition to GnuCash 3.1 is a bit more difficult than usual as the > developers have made changes to how the software is built, introducing > cmake > instead of the configure script used by the autotools system so that it is > more flexible and more easily maintained in the future. make itself is one > component of the autotools used for building software on Linux systems. > Add to that that there are many varieties of Linux which are all evolving > along different paths with different sequential versions within each > variety. Each variety often has its own system tools with different names. > Even within linux Mint which is a derivative of Ubuntu I cannot really > assume that all users will have the same gui system although most of the > shell level commands are the same. Then you have Windows and Mac-OSX to > worry about > > I am trying to write the instructions with the above general knowledge base > in mind but I won't always succeed first off. I am monitoring the User and > Dev lists for problems people encounter that I haven't covered so that I > can > continue to refine the instructions. Google, the Ubuntu forums and other > Linux forums can help where I have assumed an understanding of Linux you or > others may not have. > > Hope this helps > > David > > Hope this helps > > > > ----- > David Cousens > -- > Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-User-f1415819.html > _______________________________________________ > gnucash-user mailing list > gnucash-user@gnucash.org > To update your subscription preferences or to unsubscribe: > https://lists.gnucash.org/mailman/listinfo/gnucash-user > If you are using Nabble or Gmane, please see > https://wiki.gnucash.org/wiki/Mailing_Lists for more information. > ----- > Please remember to CC this list on all your replies. > You can do this by using Reply-To-List or Reply-All. > _______________________________________________ gnucash-user mailing list gnucash-user@gnucash.org To update your subscription preferences or to unsubscribe: https://lists.gnucash.org/mailman/listinfo/gnucash-user If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists for more information. ----- Please remember to CC this list on all your replies. You can do this by using Reply-To-List or Reply-All.