Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ubuntu tietokoneissa => Aiheen aloitti: AimoE - 23.01.15 - klo:20.55
-
GnuCashin kehitystiimi on tehnyt sellaisen onnettoman päätöksen että asennuspakettiin ei oteta mukaan LibOFX-kirjastoa, vaan Ubuntun sovellusvalikoimasta imaistaan se versio joka siellä sattuu olemaan (Windowsille tehty paketti pakosta sisältää libofx:n mutta ei sekään tarpeeksi tuoretta). Seuraavat Ubuntun välijulkaisut (utopic, vivid) sisältävät riittävän tuoreen LibOFX:n mutta 14.04 LTS ei sisällä.
Konkreettinen ongelma jonka tämä aiheuttaa on se että kun muunnan Nordean tilitapahtumalistauksen OFX-muotoon (omalla skriptillä), joudun samalla muuntamaan sen UTF8-merkistön johonkin toiseen että voisin impata OFX-tiedoston GnuCash-ohjelmaan.
Toinen ratkaisu on asentaa GnuCash Nate Muench (https://launchpad.net/~n-muench/+archive/ubuntu/programs-ppa2) -varastosta. Silloin omassa skriptissä ei tarvitse merkistöä muuntaa.
Mutta ihan ensiksi yritin kääntää LibOFX:n itse. Se olisi varmaankin onnistunut, jos pakettiin ei olisi liittynyt mitään riippuvuuksia, mutta kun ajoin ./configure-komennon, sain silmilleni ilmoituksen
configure: error: OpenSP includes not found
Kun googletin ratkaisua, totesin sellaiseksi paketin libofx-dev asentamisen, enkä sitten muistanut että sekin pitäisi kääntää lähdekoodista, ja asensin sen version joka sattuu olemaan sovellusvalikoimassa, ja taas OFX-imppaus sotki UTF8-merkit. En sitten enää jaksanut yrittää löytää libofx-dev:n lähdekoodipakettia, vaan otin tuon Nate Muench-ratkaisun käyttöön. Tulipahan samalla myöskin uudempi GnuCash mukaan.
Ehkä pitäisi vaan jättää LTS taakse ja siirtyä välijulkaisujen kelkkaan niin ei tarvitsisi aikaa hukata tämmöisiin.
-
Mutta ihan ensiksi yritin kääntää LibOFX:n itse. Se olisi varmaankin onnistunut, jos pakettiin ei olisi liittynyt mitään riippuvuuksia, mutta kun ajoin ./configure-komennon, sain silmilleni ilmoituksen
configure: error: OpenSP includes not found
Kun googletin ratkaisua, totesin sellaiseksi paketin libofx-dev asentamisen, enkä sitten muistanut että sekin pitäisi kääntää lähdekoodista
Puuttuva riippuvuus oli libosp-dev, ei libofx-dev, joka rakennetaan libofx:n lähdekoodista.
Tässä ohje deb-pakettien rakentamiseen Ubuntu 15.04:n valmiin libofx 0.9.10 -paketoinnin (http://packages.ubuntu.com/source/vivid/libofx) avulla.
Lähdekoodin ja deb-paketointisääntöjen lataus (linkit löytyvät tuolta packages.ubuntu.comin sivulta):
wget http://archive.ubuntu.com/ubuntu/pool/universe/libo/libofx/libofx_0.9.10-1.dsc
wget http://archive.ubuntu.com/ubuntu/pool/universe/libo/libofx/libofx_0.9.10.orig.tar.gz
wget http://archive.ubuntu.com/ubuntu/pool/universe/libo/libofx/libofx_0.9.10-1.debian.tar.xz
Puretaan tar-paketit:
tar -zxvf libofx_0.9.10.orig.tar.gz
cd libofx-0.9.10
tar -Jxvf ../libofx_0.9.10-1.debian.tar.xz
Yritetään kääntää ohjelma ja tehdä deb-paketit:
dpkg-buildpackage -us -uc
dpkg-buildpackage: source package libofx
dpkg-buildpackage: source version 1:0.9.10-1
dpkg-buildpackage: source changed by Sébastien Villemot <sebastien@debian.org>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build libofx-0.9.10
dpkg-checkbuilddeps: Unmet build dependencies: libosp-dev gengetopt libxml++2.6-dev
dpkg-buildpackage: warning: Build dependencies/conflicts unsatisfied; aborting.
dpkg-buildpackage: warning: (Use -d flag to override.)
Eipä lähtenyt etenemään, kun osa riippuvuuksista puuttuu. Jossain toisessa järjestelmässä puutteita voi olla enemmänkin.
Asennetaan tarvittavat paketit:
sudo apt-get install libosp-dev gengetopt libxml++2.6-dev
Uusi yritys:
dpkg-buildpackage -us -uc
make[1]: Poistutaan hakemistosta "/home/niko/Lataukset/libofx/libofx-0.9.10"
dh_makeshlibs
dh_shlibdeps
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: rakennetaan pakettia 'libofx6' '../libofx6_0.9.10-1_amd64.deb':ssa
dpkg-deb: rakennetaan pakettia 'libofx-dev' '../libofx-dev_0.9.10-1_amd64.deb':ssa
dpkg-deb: rakennetaan pakettia 'libofx6-dbg' '../libofx6-dbg_0.9.10-1_amd64.deb':ssa
dpkg-deb: rakennetaan pakettia 'libofx-doc' '../libofx-doc_0.9.10-1_all.deb':ssa
dpkg-deb: rakennetaan pakettia 'ofx' '../ofx_0.9.10-1_amd64.deb':ssa
dpkg-genchanges >../libofx_0.9.10-1_amd64.changes
dpkg-genchanges: including full source code in upload
dpkg-source --after-build libofx-0.9.10
dpkg-buildpackage: full upload (original source is included)
Nyt käännös meni läpi ja paketit syntyivät:
cd ..
ls -s
yhteensä 3516
4 libofx-0.9.10 180 libofx6_0.9.10-1_amd64.deb
4 libofx_0.9.10-1_amd64.changes 688 libofx6-dbg_0.9.10-1_amd64.deb
52 libofx_0.9.10-1.debian.tar.gz 156 libofx-dev_0.9.10-1_amd64.deb
44 libofx_0.9.10-1.debian.tar.xz 924 libofx-doc_0.9.10-1_all.deb
4 libofx_0.9.10-1.dsc 56 ofx_0.9.10-1_amd64.deb
1404 libofx_0.9.10.orig.tar.gz
Tämän jälkeen pitäisi asentaa dpkg:llä tuo uunista tullut libofx6_0.9.10-1_amd64.deb ja kokeilla, toimiiko Gnucash. On varsin mahdollista, että myös koko Gnucash on käännettävä uudestaan tätä kirjastoversiota vasten (jolloin on asennettava myös libofx-dev_0.9.10-1_amd64.deb ja toistettava yllä kuvattua vastaava prosessi Gnucashin lähdekoodipakentoinnille).