KMyMoney Compile..3rdparty directory

Jack ostroffjh at users.sourceforge.net
Thu Oct 10 17:29:32 BST 2019


Hello JV,

On 2019.10.09 22:35, jvapr27 at gmail.com wrote:
> Thanks Thomas and Jack.
> 
> I am a little confused/in shock now. :) It sounds like I do not need  
> to use AQBanking? I believe I need it since I use it to allow me to  
> update my accounts (download) transactions. Are you saying there is  
> another way to set up a connection to the banks/Credit Card companies  
> server to download transactions?
If you are in the US (and much of the world,) you have a choice.  As  
you have done in the past, you can use Aqbanking for OFX direct  
connect.  However, you can also use libofx, which is already included  
in the KMM source.  To do that, you would enable OFXIMPORTER at cmake  
time, and you can disable KBANKING so it doesn't bother to look for  
aqbanking or gwenhywfar.  That's what I use for banking, investment,  
and credit cards.
> 
> I know I can manually download an OFX(qfx) file and then import it  
> into KMyMoney but I really like the ability to right click and say  
> 'update account'. I have always thought I needed AqBanking for that.
There are some banking systems, notably in Germany/EU, which use  
features not handled by libofx, and thus those do require to enable  
KBANKING, and use aqbanking and gwenhywfar.

If you are not aware, once you have done the initial cmake, then if you  
run "ccmake ." in the build directory, you can see (and adjust) all the  
ENABLE_ settings, and turn OFF those you don't need.
> 
> Anyways, I am hitting some other compile issue now with missing  
> package. I will fix this first before I can test.
> 
> [ 12%] Building CXX object
> kmymoney/plugins/sqlcipher/CMakeFiles/qsqlcipher.dir/qsql_sqlite.cpp.o
> /home/kodemonkey/git/kmymoney_jv/build/kmymoney/plugins/sqlcipher/qsql_
> sqlite.cpp:63:10: fatal error: QtSql/private/qsqlcachedresult_p.h: No
> such file or directory
>    63 | #include <QtSql/private/qsqlcachedresult_p.h>
>       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
My guess is that you do not have sqlcipher installed, but you would  
only need it if you wanted to save your KMM data as an encrypted sqlite  
file.  You can disable SQLCIPHER (and even SQLSTORAGE) to stop it from  
looking for those files.
> 
> Also, thanks Thomas, you answered a question I was not sure I asked  
> yet. Whether the expectation is for us to download the AqBanking and  
> Gwenhywfar software and compile it ourselves or if we are expecting  
> the distribution to already include the latest and greatest.
In general, distributions should have the necessary dependencies  
available as packages.  However, some distributions (especially some  
LTS versions) lag a bit.  If you are compiling from git head (either  
master or 5.0,) and especially if recent commits to KMM are using brand  
new features in those other libraries, then it does often become  
necessary for you to download and compile them yourself.
> 
> Thank to both of you for your patience. I will update soon once I get  
> this up and running again.
> 
> JV
Jack
> 
> On Wed, 2019-10-09 at 10:08 +0200, Thomas Baumgart wrote:
> > Hi all,
> >
> > On Dienstag, 8. Oktober 2019 15:17:36 CEST Jesus Varela wrote:
> >
> > > I live in Texas. Hmm...let me try compiling the 5.0 branch then. I
> > > recall
> > > it didn't work either but, let me check again.
> > >
> > > I just figured that KMYMONEY would need the latest and greatest
> > > aqbanking
> > > as a whole to work. Even if only interacting with US banks.
> >
> > The problem is not the country but the API between KMyMoney and
> > AqBanking that changed for reasons introduced by the extended
> > European payment regulations named PSD2.
> >
> > Even though the backend for banks supporting OFX did not change, the
> > new AqBanking interface needs to be used in such cases to reflect  
> the
> > API changes. In case you don't get packages, you need to uninstall
> > packaged versions of AqBanking and Gwenhywfar and build them  
> yourself
> > (I am doing that on a regular basis).
> >
> > You could use the git repo or tarballs. They can be found at
> >
> >   https://www.aquamaniac.de/rdm/projects/aqbanking/files
> >   https://www.aquamaniac.de/rdm/projects/gwenhywfar/files
> >
> > Use the latest you can find. As you can see, they are updated on a
> > regular basis.
> >
> > The git repos are at
> >
> >   https://git.aquamaniac.de/git/aqbanking.git
> >   https://git.aquamaniac.de/git/gwenhywfar.git
> >
> > and both are currently developed and maintained on the master branch
> > (works with KMyMoney 5.0 and master branch).
> >
> > As Jack already mentioned, the 3rdparty subdirectory is for the
> > construction of the appimage container and not  
> necessary/touched/used
> > for your local build.
> >
> > Note to Jesus: if you use OFX for your online banking, you don't  
> need
> > AqBanking but can use KMyMoney's own libofx plugin.
> >
> > I found some old slides from a presentation I gave during Akademy
> > 2008 (I must have a recording somewhere and might have to post it
> > someday) and extracted the ones that explain how the software is
> > layered in terms of the various plugins. Details sure have changed
> > since then, but the overall structure is still the same. The OFX
> > block on the KBanking slide btw is also based on LibOFX.
> >
> >
> > Regards
> >
> > Thomas
> >
> >
> >
> >
> >
> > > On Mon, Oct 7, 2019, 17:03 Jack <ostroffjh at users.sourceforge.net>
> > > wrote:
> > >
> > > > Since I am in the US, I am not closely following the development
> > > > related to the new German security requirements.  However, as I
> > > > understand it, those changes are in both 5.0 and master, but  
> they
> > > > DO
> > > > require the latest aqbanking, which may not have been packaged
> > > > for
> > > > Fedora yet, so you are likely to need to compile that yourself
> > > > before
> > > > you try to compile KMyMoney.
> > > >
> > > > So - compiling from git head 5.0 branch will work "out of the
> > > > box" but
> > > > what other software it requires depends on your needs.  In my
> > > > case, for
> > > > example, I do need libofx.  It seems that you need aqbanking,  
> and
> > > > in
> > > > particular, the latest version (I'm not sure of aqbanking  
> version
> > > > numbers.)  If you got it to compile, but get that error from the
> > > > bank,
> > > > than you are (as I understand) using a too old version of
> > > > aqbanking.
> > > >
> > > >
> > > >
> > > > On 2019.10.07 17:50, Jesus Varela wrote:
> > > > > I guess I am wondering, should the 5.0 branch compile and work
> > > > > out of
> > > > > the
> > > > > box without any other software? For example, I use aqbanking  
> to
> > > > > connect to
> > > > > my bank and download transaction history. (I am not sure if I
> > > > > can do
> > > > > more
> > > > > than thatbut, if I can let me know.) My distribution has not
> > > > > yet
> > > > > packaged
> > > > > and released the new aqbanking 5.99. when I installed KMyMoney
> > > > > it
> > > > > would not
> > > > > allow me to download transactions from my bank. First time it
> > > > > did not
> > > > > even
> > > > > have the plug-in enabled. I had to uninstall and tried to
> > > > > install the
> > > > > 5.0
> > > > > branch. This time it has the plug-in enabled however now it
> > > > > gives me
> > > > > an
> > > > > error saying that my bank does not accept the communication. I
> > > > > will
> > > > > get an
> > > > > error message and show you.
> > > > >
> > > > > I figured it is because of the changes in aqbanking to help
> > > > > with
> > > > > compatibility for our friends connecting to German banks.  
> Thus,
> > > > > why I
> > > > > am
> > > > > trying to figure out how to get the latest version of  
> aqbanking
> > > > > to
> > > > > see if
> > > > > that fixes this issue. I will try the 5.0 branch again.
> > > > > Eventually I
> > > > > want
> > > > > to help do some dev work but it is taking me a long time with
> > > > > my busy
> > > > > schedule to get this all figured out.
> > > > >
> > > > > Thanks for the info. I will try to compile the 5 0 branch and
> > > > > see what
> > > > > happens.
> > > > >
> > > > >
> > > > > Thanks
> > > > >
> > > > > JV
> > > > >
> > > > > On Mon, Oct 7, 2019, 11:10 Jack <
> > > > > ostroffjh at users.sourceforge.net>
> > > > > wrote:
> > > > >
> > > > > > Hello JV,
> > > > > >
> > > > > > On 2019.10.07 09:11, jvapr27 at gmail.com wrote:
> > > > > > > Hi all,
> > > > > > >
> > > > > > > I am attempting to compile KMyMoney master branch.
> > > > > > Depending on why you are doing this, you might prefer git
> > > > > > head of
> > > > > the
> > > > > > 5.0 branch.  Master has new features still in development
> > > > > > (that is
> > > > > not
> > > > > > ready for real use yet.)  Bug fixes for 5.x are generally in
> > > > > > the 5.0
> > > > > > branch first, but also in master after a small delay.
> > > > > > > In the cmake output I see the following:
> > > > > > >
> > > > > > >    CMake Warning at CMakeLists.txt:247
> > > > > > > (find_package):      Could
> > > > > not
> > > > > > > find a configuration file for package "AQBANKING"
> > > > > > > that    is
> > > > > > > compatible with requested version "5.99.32".
> > > > > > >      The following configuration files were considered but
> > > > > > > not
> > > > > > > accepted:
> > > > > > >        /usr/lib64/cmake/aqbanking-5.7/aqbanking-
> > > > > > > config.cmake,
> > > > > > > version:    5.7.8
> > > > > > > /lib64/cmake/aqbanking-5.7/aqbanking-config.cmake,  
> version:
> > > > > 5.7.8
> > > > > > >    CMake Warning at CMakeLists.txt:248
> > > > > > > (find_package):      Could
> > > > > not
> > > > > > > find a configuration file for package "gwenhywfar"
> > > > > > > that    is
> > > > > > > compatible with requested version "4.99.16".
> > > > > > >      The following configuration files were considered but
> > > > > > > not
> > > > > > > accepted:
> > > > > > >        /usr/lib64/cmake/gwenhywfar-4.20/gwenhywfar-
> > > > > > > config.cmake,
> > > > > > > version: 4.20.0
> > > > > > > /lib64/cmake/gwenhywfar-4.20/gwenhywfar-config.cmake,
> > > > > > > version:
> > > > > > > 4.20.0
> > > > > > Note these are warnings, not errors.  It is saying that  
> cmake
> > > > > > cannot
> > > > > > find aqbanking or gwenhywfar.  Whether you need them depends
> > > > > > on your
> > > > > > requirements - mainly whether you want to do any online
> > > > > > banking,
> > > > > and if
> > > > > > so, where your banks are.  If you are in the US, you  
> probably
> > > > > > do not
> > > > > > need them.  If you are in Europe, it is more likely you do
> > > > > > need
> > > > > them.
> > > > > > I do not know whether or not they are used anywhere else.
> > > > > > > I also see that the in the 3rdparty directory, there are
> > > > > > > files..
> > > > > are
> > > > > > > these meant to install 3rd party software that KMyMoney
> > > > > > > requires?
> > > > > If
> > > > > > > so, how do I use them? I am on Fedora 30 using Plasma.
> > > > > > As I understand it, the folders under 3rdparty are only used
> > > > > > when
> > > > > > preparing a fully self-contained package, such as an  
> appimage
> > > > > > or
> > > > > > possibly for Windows.  As you are compiling for a recent
> > > > > > Linux
> > > > > > distribution, you should not need anything there.
> > > > > > >    Operating System: Fedora 30
> > > > > > >    KDE Plasma Version: 5.15.5
> > > > > > >    KDE Frameworks Version: 5.59.0
> > > > > > >    Qt Version: 5.12.4
> > > > > > >    Kernel Version: 5.2.17-200.fc30.x86_64
> > > > > > >    OS Type: 64-bit
> > > > > > >    Processors: 8 × Intel® Core™ i5-8250U CPU @ 1.60GHz
> > > > > > >    Memory: 31.2 GiB of RAM
> > > > > > >
> > > > > > > I am slowly learning how all these pieces come together.
> > > > > > > Thank you
> > > > > > > for any assistance you can provide.
> > > > > > If this is the first time you are compiling from git, you  
> may
> > > > > > need
> > > > > to
> > > > > > install one or more -dev packages, but if the above warnings
> > > > > > are all
> > > > > > you get from cmake, then you seem to have already taken care
> > > > > > of
> > > > > that.
> > > > > > > JV
> > > > > > Jack
> > > > > >
> 
> 



More information about the KMyMoney-devel mailing list