Compilazione plasmonide: CMake Error and variables in KDE 4.2


Tweet

Se tempo fa ci siamo prodigati nell’esposizione della procedura da attuare qualora si voglia compilare un plasmoide, in questo articolo ci occuperemo di dare spazio a uno dei più comuni problemi riscontrabili durante questa fase.
L’ostacolo si presenta a causa dell’evoluzione delle librerie e della struttura di KDE4 sopratutto se il DE in uso è KDE 4.2.
Le modifiche investono anche alcune variabili che nel corso del tempo hanno subito delle variazioni.

L’errore più classico, che si presenta sottoforma di output da linea di comando, è il seguente:

CMake Error at /usr/share/kde4/apps/cmake/modules/FindPlasma.cmake:13 (message):
FindPlasma.cmake is deprecated.  Now with KDE 4.2 Plasma is part of kdelibs
and automatically found using find_package(KDE4) instead.

Replace the variables previously coming from FindPlasma.cmake as follows:

PLASMA_OPENGL_FOUND -> KDE4_PLASMA_OPENGL_FOUND

PLASMA_LIBS -> KDE4_PLASMA_LIBS

PLASMA_INCLUDE_DIR -> KDE4_INCLUDE_DIR or KDE4_INCLUDES, should be already
set anyway

PLASMA_FOUND -> nothing, it’s always there if KDE4, version 4.2 or newer
has been found.

If you see this error message in a module within KDE/, update it from svn,
it has been fixed already.

Call Stack (most recent call first):
CMakeLists.txt:7 (find_package)

Il messaggio è abbastanza chiaro: le prime righe fanno intendere con molta chiarezza che nella versione 4.2 di KDE Plasma è parte integrante delle librerie kdelibs e occorre commentare la stringa "find_package(Plasma REQUIRED)".

Le righe successive ci mostrano uno schema chiaro e sintetico delle modifiche da apportare alle variabili, nel caso siano presenti, all’interno del file CMakeLists.txt. Di conseguenza è necessario editare tale file e provvedere alle modifiche.

Aprire una console e digitare:

kwrite /percorso_sorgente_plasmoide/CMakeLists.txt

Provvedere a commentare, ponendo il simbolo "cancelletto", dinnanzi alla riga "find_package(Plasma REQUIRED)" che generalmente è posta nella parte iniziale del file nella sezione destinata all’elenco delle librerie richieste (# Find the required Libaries.).

Esempio:

# Project Needs a name ofcourse
project(plasma-gmailnotify)
 
# Find the required Libaries
find_package(KDE4 REQUIRED)
include(KDE4Defaults)
#find_package(Plasma REQUIRED)

add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
...............
..............

Successivamente occorre intervenire sostituendo le variabili con quelle consigliate dal precedente messaggio d’errore.

  PLASMA_OPENGL_FOUND   ->   KDE4_PLASMA_OPENGL_FOUND

  PLASMA_LIBS   ->   KDE4_PLASMA_LIBS

  PLASMA_INCLUDE_DIR   ->   KDE4_INCLUDE_DIR   or   KDE4_INCLUDES

  PLASMA_FOUND   ->   nothing, it’s always there if KDE4, version 4.2 or newer has been found.

In pratica la variabile PLASMA_OPENGL_FOUND dovrà essere sostituita con KDE4_PLASMA_OPENGL_FOUND, PLASMA_LIBS con KDE4_PLASMA_LIBS, PLASMA_INCLUDE_DIR con KDE4_INCLUDE_DIR oppure con KDE4_INCLUDES.

Per quanto riguarda la variabile PLASMA_FOUND, come specificato, non va sostituita in quanto non è mai stata trovata in KDE 4.2 o versioni superiori del DE in questione.

Terminata l’operazione di modifica salvare il file e proseguire il processo di compilazione riproponendo il comando:

cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix`..

Buona lavoro.

 

Articoli correlati:

, ,

Segnala questo articolo: Queste icone linkano i siti di social bookmarking sui quali i lettori possono condividere e trovare nuove pagine web.
  • Facebook
  • del.icio.us
  • Digg
  • Reddit
  • StumbleUpon
  • Technorati
  • OKnotizie
  • Google Bookmarks
  • TwitThis
  • Upnews
  • Segnalo

  • deer

    Avrei bisogno di un piccolo aiutino,non riesco a compilare nessun plasmoide(finora solo uno è andato a buon fine).
    L’errore che ottengo generalmente è_
    “CMake Warning (dev) in CMakeLists.txt:
    No cmake_minimum_required command is present. A line of code such as

    cmake_minimum_required(VERSION 2.6)

    should be added at the top of the file. The version specified may be lower
    if you wish to support older CMake versions for this project. For more
    information run “cmake –help-policy CMP0000″.
    This warning is for project developers. Use -Wno-dev to suppress it.

    – Configuring incomplete, errors occurred!

    ho provato a seguire i tuoi consigli,ma il mio file “CMakelists.txt” si presenta cosi:
    “find_package(KDE4 REQUIRED)
    include(KDE4Defaults)

    add_subdirectory(applet)
    ” (in tutti i plasmoid provati).
    la versione di cmake è 2.6.3.x sono su debian sid
    kde 4.2.1.
    come risolvo?

  • deer

    Avrei bisogno di un piccolo aiutino,non riesco a compilare nessun plasmoide(finora solo uno è andato a buon fine).
    L’errore che ottengo generalmente è_
    “CMake Warning (dev) in CMakeLists.txt:
    No cmake_minimum_required command is present. A line of code such as

    cmake_minimum_required(VERSION 2.6)

    should be added at the top of the file. The version specified may be lower
    if you wish to support older CMake versions for this project. For more
    information run “cmake –help-policy CMP0000″.
    This warning is for project developers. Use -Wno-dev to suppress it.

    – Configuring incomplete, errors occurred!

    ho provato a seguire i tuoi consigli,ma il mio file “CMakelists.txt” si presenta cosi:
    “find_package(KDE4 REQUIRED)
    include(KDE4Defaults)

    add_subdirectory(applet)
    ” (in tutti i plasmoid provati).
    la versione di cmake è 2.6.3.x sono su debian sid
    kde 4.2.1.
    come risolvo?

  • Luptor

    scusate l’OT
    @deer
    Per caso ci “conosciamo”(spero di si)? Devi scusarmi, magari si tratta semplicemente di una comune omonimia di nick, ma in rete conoscevo una persona con il tuo stesso nick che non sento più da molto tempo.

  • Luptor

    scusate l’OT
    @deer
    Per caso ci “conosciamo”(spero di si)? Devi scusarmi, magari si tratta semplicemente di una comune omonimia di nick, ma in rete conoscevo una persona con il tuo stesso nick che non sento più da molto tempo.

  • http://www.crismonblog.org Crismon

    Ciao Deer,
    sicuro che tutte le dipendenze richieste sono installate nel tuo sistema?
    Controlla che il pacchetto libqt4-devel sia installati e riprova.

  • http://www.crismonblog.org Crismon

    Ciao Deer,
    sicuro che tutte le dipendenze richieste sono installate nel tuo sistema?
    Controlla che il pacchetto libqt4-devel sia installati e riprova.

  • deer

    @Luptor
    yes,i am,eccome se ci conosciamo,non frequento piu il posto dove ci siamo incontrati,magari un giorno ti contatto e ti racconto un po di cose.
    Leggo spesso i tuoi post qui,mi fa piacere che continui ad essere attivo in tal senso.
    @Crismon,grazie per la rispaosta celere.
    Ho tutto installato(libqt4-dev)installo e aggiorno
    da repo “experimental”,come dicevo un paio sono andati a buon fine.
    Magari non c’entra nulla,ma ad esempio riesco anche a compilare alcune qt-appl.
    Grazie di nuovo e scusa l’OT,ma dovevo salutare Luptor,persona squisita e che stimo.

  • deer

    @Luptor
    yes,i am,eccome se ci conosciamo,non frequento piu il posto dove ci siamo incontrati,magari un giorno ti contatto e ti racconto un po di cose.
    Leggo spesso i tuoi post qui,mi fa piacere che continui ad essere attivo in tal senso.
    @Crismon,grazie per la rispaosta celere.
    Ho tutto installato(libqt4-dev)installo e aggiorno
    da repo “experimental”,come dicevo un paio sono andati a buon fine.
    Magari non c’entra nulla,ma ad esempio riesco anche a compilare alcune qt-appl.
    Grazie di nuovo e scusa l’OT,ma dovevo salutare Luptor,persona squisita e che stimo.

  • http://www.crismonblog.org Crismon

    Le kdelibs? sono installate?
    Posta le prime righe del CMakeLists.txt.
    Grazie

  • http://www.crismonblog.org Crismon

    Le kdelibs? sono installate?
    Posta le prime righe del CMakeLists.txt.
    Grazie

  • deer

    Si,le kdelibs ci sono,non potrebbe trattarsi di un problema di versione delle qt? io ho le 4.3.x
    Il CMakelists.txt riporta solo poche righe non compila,è cosi:

    find_package(KDE4 REQUIRED)
    include(KDE4Defaults)

    add_subdirectory(applet)

    Vabbè non perdere troppo tempo sul mio problema,in fondo non ho una necessità impellente di installare dei plasmoidi in piu’,è solo curiosità.
    È vero quando qualcuno dice che se vuoi KDE4.x la distro che è piu’ aggiornata è la Suse.
    Complimenti per il tuo blog e grazie.

    ps: anche se sono un debianizzato continuerò a leggerti :)

  • deer

    Si,le kdelibs ci sono,non potrebbe trattarsi di un problema di versione delle qt? io ho le 4.3.x
    Il CMakelists.txt riporta solo poche righe non compila,è cosi:

    find_package(KDE4 REQUIRED)
    include(KDE4Defaults)

    add_subdirectory(applet)

    Vabbè non perdere troppo tempo sul mio problema,in fondo non ho una necessità impellente di installare dei plasmoidi in piu’,è solo curiosità.
    È vero quando qualcuno dice che se vuoi KDE4.x la distro che è piu’ aggiornata è la Suse.
    Complimenti per il tuo blog e grazie.

    ps: anche se sono un debianizzato continuerò a leggerti :)

  • http://www.crismonblog.org Maxwell

    Ciao deer…hai provato ad installare libkde4-devel? a tal proposito, hai dato un’occhiata qui?? http://www.crismonblog.org/kde4-trick-and-tips/preparazione-sistema-compilazione-plasmoide-kde4-opensuse-11.1.html

    ciao ciao
    Max

  • http://veromaxwell.spaces.live.com Maxwell

    Ciao deer…hai provato ad installare libkde4-devel? a tal proposito, hai dato un’occhiata qui?? http://www.crismonblog.org/kde4-trick-and-tips/preparazione-sistema-compilazione-plasmoide-kde4-opensuse-11.1.html

    ciao ciao
    Max

  • deer

    @Maxwell
    Purtroppo per debian le libkde4-devel non ci sono,solo le ruby.
    Avevo già visto nel post da te indicato,ma come detto manca anche kdebase-workspace-devel oltre alle lib… in debian.
    Non so come preparano i packages per kde4 nel team kde-debian.Anche se il desktop funziona egregiamente.
    grazie,ciao

  • deer

    @Maxwell
    Purtroppo per debian le libkde4-devel non ci sono,solo le ruby.
    Avevo già visto nel post da te indicato,ma come detto manca anche kdebase-workspace-devel oltre alle lib… in debian.
    Non so come preparano i packages per kde4 nel team kde-debian.Anche se il desktop funziona egregiamente.
    grazie,ciao

  • http://veromaxwell.spaces.live.com Maxwell

    googlando qui http://packages.debian.org/experimental/kdebase-workspace-dev dovresti trovare un pacchetto. per l’altro invece credo che dovresti compilare il sorgente http://download.kde.org/stable/4.2.1/src/kdelibs-4.2.1.tar.bz2 (trovi anche kdebase-workspace, ed eventualmente soddisfare le dipendenze (non so se debian ha un sistema di gestione pacchetti…). Eventualmente qui http://kde.org/info/4.2.1.php trovi tutti i sorgenti di kde 4.2.1…so che potrebbe essere un lavoraccio, ma se ti piace smanettare potrebbe essere una via! ;)

    ciao ciao
    Max

    (ps: non so se il kdelib che c’è lì è il devel o no…)

  • http://www.crismonblog.org Maxwell

    googlando qui http://packages.debian.org/experimental/kdebase-workspace-dev dovresti trovare un pacchetto. per l’altro invece credo che dovresti compilare il sorgente http://download.kde.org/stable/4.2.1/src/kdelibs-4.2.1.tar.bz2 (trovi anche kdebase-workspace, ed eventualmente soddisfare le dipendenze (non so se debian ha un sistema di gestione pacchetti…). Eventualmente qui http://kde.org/info/4.2.1.php trovi tutti i sorgenti di kde 4.2.1…so che potrebbe essere un lavoraccio, ma se ti piace smanettare potrebbe essere una via! ;)

    ciao ciao
    Max

    (ps: non so se il kdelib che c’è lì è il devel o no…)

  • deer

    Difatti stavo cercando proprio il kdebase-workspace-dev sui repo experimental(che sono quelli per kde4 su debian)l’ho trovato con mia sorpresa non risulta installato,ho saltato qualche passaggio in fase di installazione di kde,e mancano le kdelibs5-dev,e credo dipenda tutto da da loro.
    kdebase-workspace-dev>vuole>kdelibs5-dev.
    prvvederò ad installare,poi faccio sapere,di nuovo grazie.
    ciao
    ps: debian ha APT come gestione pacchetti(.deb)lo stesso che usa ubuntu.

  • deer

    Difatti stavo cercando proprio il kdebase-workspace-dev sui repo experimental(che sono quelli per kde4 su debian)l’ho trovato con mia sorpresa non risulta installato,ho saltato qualche passaggio in fase di installazione di kde,e mancano le kdelibs5-dev,e credo dipenda tutto da da loro.
    kdebase-workspace-dev>vuole>kdelibs5-dev.
    prvvederò ad installare,poi faccio sapere,di nuovo grazie.
    ciao
    ps: debian ha APT come gestione pacchetti(.deb)lo stesso che usa ubuntu.

  • deer

    In effetti servivano le kdelibs5-dev e kdebase-workspace-dev,ora funziona.
    Tutto sto casino per installare :http://www.kde-look.org/content/show.php/Fancy+Tasks?content=99737 una barra stile mac o awn,funzionare funziona:
    http://img527.imageshack.us/my.php?image=plasmoide.jpg
    solo che chiudendo le finestre o applicazioni le icone spariscono dalla barra e non c’è un modo per inserire le applicazioni sulla barra,come tutte le barre normali.
    bah
    ciao

  • deer

    In effetti servivano le kdelibs5-dev e kdebase-workspace-dev,ora funziona.
    Tutto sto casino per installare :http://www.kde-look.org/content/show.php/Fancy+Tasks?content=99737 una barra stile mac o awn,funzionare funziona:
    http://img527.imageshack.us/my.php?image=plasmoide.jpg
    solo che chiudendo le finestre o applicazioni le icone spariscono dalla barra e non c’è un modo per inserire le applicazioni sulla barra,come tutte le barre normali.
    bah
    ciao

  • http://www.crismonblog.org Maxwell

    intendi una barra con le applicazioni usate maggiormente?

  • http://veromaxwell.spaces.live.com Maxwell

    intendi una barra con le applicazioni usate maggiormente?

  • deer

    Si intendo proprio una barra dove inserire le appl. preferite,tipo la CairoDock(Gnome)la Kooldock,l’AvantWindovNavigator ecc….
    Credevo fosse una cosa simile,invece è un’applet che funziona tipo barra di stato,tiene solo quello che hai aperto.
    In compenso non è niente male(anche se non ha una vera e propria utilità).

  • deer

    Si intendo proprio una barra dove inserire le appl. preferite,tipo la CairoDock(Gnome)la Kooldock,l’AvantWindovNavigator ecc….
    Credevo fosse una cosa simile,invece è un’applet che funziona tipo barra di stato,tiene solo quello che hai aperto.
    In compenso non è niente male(anche se non ha una vera e propria utilità).

blog comments powered by Disqus