Käytössäni on OpenSUSE 42.3 Virtualboxin alla ja tehtävänä päivittää erästä Qt-softaa. Aikaisemmin oli hässäkkää järjestelmän kanssa, kun työstettävä softa ei lähtenyt käyntiin GUI:sta, mutta lähti ongelmitta käyntiin CLI:stä. Lopulta syyksi selvisi, ettei käyttöjärjestelmän kirjastopolusta löytynyt vaadittuja kirjastoja (QWT, Qt 5.9-kirjastot) ja ldconfigia käyttämällä sen sai korjattua.
Ongelmana on, että tuo uudempi versio Qt Creatorista oli asennettu ladatusta paketista ja ongelmia selvittäessäni asensin pakettivarastosta vanhemman Qt Creatorin, mutta QWT-kirjastot on käännetty uudemmalla Qt Creatorilla ja vaatii nuo uudemmat kirjastot.
Ongelmana on, että normaalissa kirjastopolussa ovat edelleen vanhan Qt Creatorin kirjastot, vaikka itse Qt Creator on poistettu. Jos yritän lisätä uudemman Qt Creatorin polun jo käynnistyksessä käyttis sekoaa (bootissa tulee vain musta ruutu ja "Can't start qt5-dbus"), joka ilmeisesti johtuu versioristiriidasta (tyyliin libQt5Core.so viittaa kahteen eri paikkaan). Joten nuo vanhemmat kirjastot pitäisi kaiketi poistaa. En vain ole varma miten se kannattaisi tehdä oikeaoppisesti, ettei käyttis hajoa. En usko, että sudo rm libQt* normaalissa kirjastohakemistossa on hyvä idea.
"oikea" tapa poistaa turhat kirjastot ?
16
281
Vastaukset
- The_Real_J
Edelliseen viitaten: voisiko linkkien muuttaminen olla toinen vaihtoehto ? Nykyisellään esimerkiksi liqQt5Core.so.5 viittaa versioon 5.6.2 normaalissa kirjastohakemistossa. Jos sen vaihtaisi osoittamaan uuteen versioon pitäisi toimia oikein ?
Ennen kuin nyt vastaan enempiä mutta etkös sinä aiemmin kysellyt jonkun Qt ohjelman päivittämisestä?
- The_Real_J
Taisinpa kysyä. Olin päivittämässä alun perin Qt 4:lle tehtyä ohjelmaa Qt 5:lle. Käännöstyö on nyt tehty ja softa kääntyy ja toimii Qt 5:llä. Nyt on vuorossa uusien ominaisuuksien lisäys ja vanhojen päivittäminen.
Qt ja Linux ovat kyllä tuttuja, mutta kotikoneella en ole käyttänyt ulkoisia kirjastoja vaan ihan vakiokamoja, joten tuo QWT tuotti hieman päänvaivaa. En myöskään ole aiemmin ollut tekemissä ldconfigin kanssa, koska ei ole ollut tarvetta. Ja koska kirjastopolussa ei ollut QWT:tä ja ladatusta paketista asennettua Qt:tä ohjelma ei toiminut GUI:sta. Terminaalista ajettuna ohjelma kyllä lähti käyntiin kunhan määritteli LD_LIBRARY_PATH:iin vaadittavat polut. No, lessons learned.
Olisin kyllä säästänyt paljon aikaa jos olisin antanut nopeammin periksi Kubuntun kanssa (teki jostain syystä väkisin kaikista ohjelmista jaettuja kirjastoja) ja heti alkuun keksinyt lisätä ldconfigilla tarvittavat polut, mutta ei sitä kaikkea voi tietää. Ainakin tiedän vastaisuuden varalta nyt paremmin. The_Real_J kirjoitti:
Taisinpa kysyä. Olin päivittämässä alun perin Qt 4:lle tehtyä ohjelmaa Qt 5:lle. Käännöstyö on nyt tehty ja softa kääntyy ja toimii Qt 5:llä. Nyt on vuorossa uusien ominaisuuksien lisäys ja vanhojen päivittäminen.
Qt ja Linux ovat kyllä tuttuja, mutta kotikoneella en ole käyttänyt ulkoisia kirjastoja vaan ihan vakiokamoja, joten tuo QWT tuotti hieman päänvaivaa. En myöskään ole aiemmin ollut tekemissä ldconfigin kanssa, koska ei ole ollut tarvetta. Ja koska kirjastopolussa ei ollut QWT:tä ja ladatusta paketista asennettua Qt:tä ohjelma ei toiminut GUI:sta. Terminaalista ajettuna ohjelma kyllä lähti käyntiin kunhan määritteli LD_LIBRARY_PATH:iin vaadittavat polut. No, lessons learned.
Olisin kyllä säästänyt paljon aikaa jos olisin antanut nopeammin periksi Kubuntun kanssa (teki jostain syystä väkisin kaikista ohjelmista jaettuja kirjastoja) ja heti alkuun keksinyt lisätä ldconfigilla tarvittavat polut, mutta ei sitä kaikkea voi tietää. Ainakin tiedän vastaisuuden varalta nyt paremmin.Se tässä hämää kun käyttöjärjestelmä vaihtui milloin Kubuntuun ja milloin mihinkin, että vaihtuuko töissä/kotona alusta joka viikko?
Tämä juttu ei oikein käy järkeen. Vakiointia enste, ja sitten päivittelee sen yhteensopivaksi sen vakioidun alustan kanssa. Esimerkiksi jos käytössä on CentOS 7 niin alustaksi CentOS 7, asentaa tämän kirjastot ja sitten säätää sitä koodia toimimaan CentOS 7:n tarjoamia vakiokirjastoja vasten.
Ajatus tietystikin se, että kun on se ylläpito tehty niin se toimii sitten siinä CentOS 7:ssa niin pitkään kunnes on suunnitelmissa päivittää se alusta, eli sitten devauskoneeseen enste se CentOS 8 vaikka, tekee ylläpidon ja sitten on taas siirretty kriittisempi ylläpitotarve kymmeneksi vuodeksi eteenpäin.- The_Real_J
M-Kar kirjoitti:
Se tässä hämää kun käyttöjärjestelmä vaihtui milloin Kubuntuun ja milloin mihinkin, että vaihtuuko töissä/kotona alusta joka viikko?
Tämä juttu ei oikein käy järkeen. Vakiointia enste, ja sitten päivittelee sen yhteensopivaksi sen vakioidun alustan kanssa. Esimerkiksi jos käytössä on CentOS 7 niin alustaksi CentOS 7, asentaa tämän kirjastot ja sitten säätää sitä koodia toimimaan CentOS 7:n tarjoamia vakiokirjastoja vasten.
Ajatus tietystikin se, että kun on se ylläpito tehty niin se toimii sitten siinä CentOS 7:ssa niin pitkään kunnes on suunnitelmissa päivittää se alusta, eli sitten devauskoneeseen enste se CentOS 8 vaikka, tekee ylläpidon ja sitten on taas siirretty kriittisempi ylläpitotarve kymmeneksi vuodeksi eteenpäin.Ei kyse ole alustan vaihtumisesta. Hostina toimivalle Windows-koneelle piti saada Virtualboxin alle jokin Linux-distro kehitystyötä varten, mutta sitä ei oltu määrätty kiinteästi. Oletuksena oli Ubuntu, koska muut käyttivät sitä, mutta en voi sietää Unityä. Jos olisin asentanut Ubuntun olisi joka tapauksessa pitänyt asentaa siihen jokin käyttökelpoinen ikkunamanageri (esim Cinnamon), ennen kuin sitä olisi voinut käyttää voimatta pahoin. Joten ajattelin käyttää Kubuntua, koska käytän itse KDE:tä kotona ja uskoin Kubuntun olevan muuten mahdollisimman lähellä Ubuntua. Kubuntun kanssa olisi saanut heti käyttökelpoisen ikkunamanagerin, mutta muuten mahdollisimman lähellä Ubuntua olevan distron. Tai niin luulin.
Jostain ihmeen syystä Kubuntun alla Qt Creator teki ohjelmista jaettuja kirjastoja (jopa testausta varten luodusta yksinkertaisesta Qt Widgets sovelluksesta). Lukuisten korjausyritysten jälkeen annoin periksi ja asensin Virtualboxiin OpenSUSE:n, koska käytän itse sitä kotona ja se on tuttu ja hyvä distro. Sillä käännös meni oikein. The_Real_J kirjoitti:
Ei kyse ole alustan vaihtumisesta. Hostina toimivalle Windows-koneelle piti saada Virtualboxin alle jokin Linux-distro kehitystyötä varten, mutta sitä ei oltu määrätty kiinteästi. Oletuksena oli Ubuntu, koska muut käyttivät sitä, mutta en voi sietää Unityä. Jos olisin asentanut Ubuntun olisi joka tapauksessa pitänyt asentaa siihen jokin käyttökelpoinen ikkunamanageri (esim Cinnamon), ennen kuin sitä olisi voinut käyttää voimatta pahoin. Joten ajattelin käyttää Kubuntua, koska käytän itse KDE:tä kotona ja uskoin Kubuntun olevan muuten mahdollisimman lähellä Ubuntua. Kubuntun kanssa olisi saanut heti käyttökelpoisen ikkunamanagerin, mutta muuten mahdollisimman lähellä Ubuntua olevan distron. Tai niin luulin.
Jostain ihmeen syystä Kubuntun alla Qt Creator teki ohjelmista jaettuja kirjastoja (jopa testausta varten luodusta yksinkertaisesta Qt Widgets sovelluksesta). Lukuisten korjausyritysten jälkeen annoin periksi ja asensin Virtualboxiin OpenSUSE:n, koska käytän itse sitä kotona ja se on tuttu ja hyvä distro. Sillä käännös meni oikein."Ei kyse ole alustan vaihtumisesta. Hostina toimivalle Windows-koneelle piti saada Virtualboxin alle jokin Linux-distro kehitystyötä varten, mutta sitä ei oltu määrätty kiinteästi. "
No siis, kehitystyö tietysti kannattaa tehdä samalla alustalle kuin mihin tähdätään.
"Oletuksena oli Ubuntu, koska muut käyttivät sitä, mutta en voi sietää Unityä."
Eli teit itse siitä tekemisestä hankalaa. Ei tuo olisi tarvinnut kuin Ubuntu 16.04 LTS:n, kliksuttelee paketit ja kääntää, ja sitten nysvää koodia kunnes kääntyy ja deprecated -ilmoitukset on poissa.
Eihän siinä sitä Unityä niinkään käytetä vaan Qt Creatoria.The_Real_J kirjoitti:
Ei kyse ole alustan vaihtumisesta. Hostina toimivalle Windows-koneelle piti saada Virtualboxin alle jokin Linux-distro kehitystyötä varten, mutta sitä ei oltu määrätty kiinteästi. Oletuksena oli Ubuntu, koska muut käyttivät sitä, mutta en voi sietää Unityä. Jos olisin asentanut Ubuntun olisi joka tapauksessa pitänyt asentaa siihen jokin käyttökelpoinen ikkunamanageri (esim Cinnamon), ennen kuin sitä olisi voinut käyttää voimatta pahoin. Joten ajattelin käyttää Kubuntua, koska käytän itse KDE:tä kotona ja uskoin Kubuntun olevan muuten mahdollisimman lähellä Ubuntua. Kubuntun kanssa olisi saanut heti käyttökelpoisen ikkunamanagerin, mutta muuten mahdollisimman lähellä Ubuntua olevan distron. Tai niin luulin.
Jostain ihmeen syystä Kubuntun alla Qt Creator teki ohjelmista jaettuja kirjastoja (jopa testausta varten luodusta yksinkertaisesta Qt Widgets sovelluksesta). Lukuisten korjausyritysten jälkeen annoin periksi ja asensin Virtualboxiin OpenSUSE:n, koska käytän itse sitä kotona ja se on tuttu ja hyvä distro. Sillä käännös meni oikein.Semmoinen ajatus tulee mieleen että kun kääntelit openSusella niin se openSusella tehdyn käännöksen ei tarvitse toimia Ubuntussa. Mikä tahansa kääntäjä tai kirjastoversion muutos voi vaikuttaa niin että näyttää toimivan mutta voi bugittaa.
- hrthrehr
packagage managerilla poista vanhat qt kirjastot ja asenna qt:tä käyttävä ohjelma uudestaan. Esim linux make xconfig komennon siirtäminen qt4->qt5 vaatii make distclean komennon.
- kurapois
Linux aina vaikea
- otanosaa
Tietämättömyys aiheuttaa tuskaa ymmärtämättömälle.
- lopeta_jo
Poista vaan sinä kuraperse itsesi täältä trollaamasta, linux ei ole vaikea! Eikä mitään kuraa!
- itsemyönsi
"Kyllähän Linux on vaikea käyttöjärjestelmä, Torvalds myöntää."
HS 21.7.2014 - viisaiten-järjestelmä
itsemyönsi kirjoitti:
"Kyllähän Linux on vaikea käyttöjärjestelmä, Torvalds myöntää."
HS 21.7.2014Kyllä vaan, on vaikea, älykkyysosamäärä on oltava noin nelin kertainen windowsin käyttöön verrattuna, joten älä edes uneksi linuxsista.
Oikea tapa poistaa turhat kirjastot on tietysti paketinhallinta. QT hieman hankala kun on vielä paljon ohjelmia jotka käyttävät QT 4 kirjastoja. Noiden riippuvuudetkin hankalia. Itse olen joskus käynnistänyt openboxin ja siihen päätteen esim lxterminal ja poistanut kaikki qt kirjastot. Asentuvat kyllä takaisin riippuvuuksien mukana.
Gentoossa onnistuu KDE työpöytä ilman qt4 kirjastoja pienellä kikkailulla. Itse vähensin KDE:n käyttöä kun KDE 4 kehitys loppui ja uudet työpöydät olleet hieman epävakaita kun uusia ja vanhoja kirjastoja pitää olla asennettuna.- poistoon_moinen_
Poista koko Linux, ja asenna Win10.
- lopeta_jo
Lakkaa tyrkyttämästä sitä virusimuria ja poistu täältä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Nurmossa kuoli 2 Lasta..
Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .1387725Joel Harkimo seuraa Martina Aitolehden jalanjälkiä!
Oho, aikamoinen yllätys, että Joel Jolle Harkimo on lähtenyt Iholla-ohjelmaan. Tässähän hän seuraa mm. Martina Aitolehde381945Kaksi lasta kuoli kolarissa Seinäjoella. Tutkitaan rikoksena
Henkilöautossa matkustaneet kaksi lasta ovat kuolleet kolarissa Seinäjoella. Kolmas lapsi on vakasti loukkaantunut ja251900- 911623
Miksi pankkitunnuksilla kaikkialle
Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että1801555Tunnekylmä olet
En ole tyytyväinen käytökseesi et osannut kommunikoida. Se on huono piirre ihmisessä että ei osaa katua aiheuttamaansa p104988- 49930
Taisit sä sit kuiteski
Vihjata hieman ettei se kaikki ollutkaan totta ❤️ mutta silti sanoit kyllä vielä uudelleen sen myöhemmin 😔 ei tässä oik4879Odotathan nainen jälleenkohtaamistamme
Tiedät tunteeni, ne eivät sammu johtuen ihanuudestasi. Haluan tuntea ihanan kehosi kosketuksen ja sen aikaansaamaan väri28820- 34802