How to setup a test/development environment

Jonatan Cloutier cloutier.jo at gmail.com
Tue Aug 22 02:34:26 UTC 2017


Hello,

Thank you for the whole explanation. It took a bit of work put it all 
together but it seems to work well after the few test that I've done. 
And yes I have my backup working.

Regards,

Jonatan Cloutier

Le 2017-08-15 à 16:59, Jack a écrit :
> On 2017.08.13 22:47, Jonatan Cloutier wrote:
>> Hello,
>>
>> I'm trying to test the kf5 version and maybe develop a bit on it, but 
>> as explain in the build instruction, KMyMoney need to be installed in 
>> the usual path to find all its resources. The thing is I don't want 
>> to use the development version with my current accounting.
>>
>> So the question is what is the best way to test and develop on 
>> KMyMoney while style using the stable version?
>>
>> Regards,
>>
>> -- 
>> Jonatan Cloutier
>
> Replying to the original to keep it shorter, but as Thomas said, 
> backup early and often :-)
>
> The difficulty with having multiple versions of KDE softare installed 
> at the same time is that a great deal of the libraries and 
> configuration info that KDE uses is cached and based on environment 
> variables, not just the location of the application itself.  (Tha't 
> just motivation or explanation or excuse in case it seems a bit 
> convoluted.)
>
> I keep all my KMM source related stuff in one area, so for example
> - mkdir KMM
> - cd KMM
> - git clone magic-git-incantation kmymoney-git
> - mkdir install48 (for installing a local 4.8 version - you can have 
> as many as you want to keep different versions around but it's easy to 
> get confused)
> - mkdir installframe (for installing a local frameworks version)
> - mkdir build48 (I keep a separate build directory for each branch, 
> but some people  just create a new build directory every time to be 
> sure it's a clean start.)
> - mkdir buildframe
> - cd kmymoney-git
> - checkout master (or 4.8 or whatever branch you want to build)
> - cd ../buildframe (move to the build directory)
> - cmake --DCMAKE_INSTALL_PREFIX=/path/to/KMM/installframe 
> ../kmymoney-git   (with any other parameters you want - I keep this in 
> a script file so I don't forget anything.)
> - make
> - make install
> - ./runlocal.sh where this is a script
>
> My script keeps getting fancier, with a section that uses parameters 
> to determine if I want to copy my existing .kmy file or start without 
> a file or use the last file that was open in this version.  I also 
> have lots of echo for debugging values of environment variables.  What 
> is critical however, is:
>
> #!/bin/bash  (there are bashisms here, so it probably won't work in 
> other shells without modification)
> export KDEDIRS=/path/to/KMM/installframe (this is where KDE will look 
> for all sorts of stuff)
> prepend() { [ -d "$2" ] && eval $1=\"$2\$\{$1:+':'\$$1\}\" && export 
> $1 ; }
>  # the above (forgot where I got it) helps put directories at the 
> front of lists, without duplicating.
> prepend LD_LIBRARY_PATH $(KDE_DIRS)/lib
> prepend XDG_DATA_DIRS $(KDE_DIRS)/share
> export KDESYCOCA=/path/to/KMM/installframe/var/cache/ksycoca
> export KDEHOME=/path/to/KMM/installframe/.kde5  (.kde4 for 4.8)
> export KDEVARTMP=/path/to/KMM/installframe/var/tmp
> prepend QT_PLUGIN_PATH /path/to/KMM/installframeworks/lib64/plugins  
> (your system might use lib instead of lib64)
> kbuildsycoca5  (kbuildsycoca4 for 4.8)
> /path/to/KMM/installframe/bin/kmymoney path/to/copy/of/kmydatafile.kmy
>
> and remember, after you exit KMM, you are still in the shell with all 
> those variables set, so you can just run the program again. Exit that 
> shell if you want to reinvoke the entire script, otherwise you'll end 
> up with lot of nested shells.
>
> Ask if anything doesn't work or doesn't make sense.
>
> Jack



More information about the KMyMoney-devel mailing list