GSoC 2021 KMyMoney - Week 8


Week 8 revolved around removing all the usages of webpricequote on the equity price update dialog source code. For people not much into finance, an article from Investopedia about quotes.
I first replaced the WebPriceQuote constructors and their members of AlkOnlineQuoteSource. Replacing m_webIDBy with m_idSelector popped up error. After putting in a little effort I remembered that m_idSelector is the member of AlkOnlineQuoteSource::Private and I will have to use the getter(idSelector()) to use that member for an AlkOnlineQuoteSource object.

I ended up with compile errors which were due to an undefined reference to idSelector(). Since the definition and declaration of that function were already there pointing that it was maybe due to a linking error. I checked the symlink of libalkimia shared object(alkimia/build/bin/libalkimia5.so.8) that I created in kmymoney/build/lib to use my local modified version of alkimia. I still ended up with the same errors. After discussion in the mailing list, Ralf, Thomas and Ingo and their valuable suggestions, it was concluded that to make the loader work according to my local alkimia in build time I have to pass: -DCMAKE_PREFIX_PATH=<root-dir>/alkimia-install/usr/local as an argument to CMake while building kmymoney where alkimia-install is my custom install location.


My work can be found here : Alkimia and KMyMoney.

Learnings -

I got to know more about linkers and loaders and to use locally modified libs in a client application.

What’s next -

Discussing about https://bugs.kde.org/show_bug.cgi?id=439411.
If anyone wants to suggest something or have a discussion please reach out to me on suraj[dot]mahto49[at]gmail[dot]com or @suraj_sloth:kde.org in matrix.