Seite 1 von 1

kate: cmake macht fehler

Verfasst: 16. Februar 2010 08:37
von FrancisA
Hallo ich weiß nicht ob ich hier richtig bin. Leider habe ich hierfür nichts gefunden, deshalb frage ich hier:

(Muss sagen, dass ich mich mit cmake eigentlich gar nicht auskenne)

kate aus svn

Ich habe keine Anleitung selbst gefunden, deswegen versuchte ich es so wie in anderen qt projekten.

Code: Alles auswählen

franz@franz-desktop:~/src/kate/build$ cmake .. -DCMAKE_INSTALL_PREFIX=$(kde4-config --prefix)
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/lib/colorgcc/gcc
-- Check for working C compiler: /usr/lib/colorgcc/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/lib/colorgcc/c++
-- Check for working CXX compiler: /usr/lib/colorgcc/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
CMake Error at data/CMakeLists.txt:2 (install):
  install FILES given no DESTINATION!


CMake Error at data/CMakeLists.txt:3 (install):
  install FILES given no DESTINATION!


CMake Error at plugins/insertfile/CMakeLists.txt:7 (kde4_add_plugin):
  Unknown CMake command "kde4_add_plugin".


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!
Mache ich etwas falsch?

Verfasst: 16. Februar 2010 16:25
von franzf
Kann es sein dass du nur kate ausgecheckt hast? Das wird so nicht gehen! Kate kommt im Paket "kdesdk". Das hat ein Toplevel-CMakeLists.txt, welches schon einige wichtige Aktionen macht. Packages finden (KDE4 als wichtigstes) und diverse Files mit Definitionen etc. includieren. Du wirst dir also das ganze kdesdk holen müssen - oder dein kate-CMakeLists.txt mit den wichtigen Sachen aus dem Toplevel-CMakeLists.txt ergänzen. Ohne Ahnung von CMake wird das aber schwerer...

Verfasst: 16. Februar 2010 17:21
von FrancisA
Hmm, danke.

Etwas eigenartig finde ich es grundsätzlich, dass ich überhaupt keine Anleitung vom erstellen von kate gefunden habe. In fast jedem source download ist ein readme oder install.txt oder zumindest eine Anleitung Online. Bei kate habe ich schon lange gesucht.

das kdessk-dev habe ich schon installiert gehabt.

Hintergrund des ganzen ist, dass ich ein paar Sachen in kate probieren möchte. Sonst hätte ich eh nur das deb package installiert.

Verfasst: 16. Februar 2010 17:41
von franzf
Nicht kdesdk-dev! kjdesdk ist ein eigenes Paket!
http://websvn.kde.org/trunk/KDE/kdesdk/
Das musst du dir holen. Und um dieses darin befindliche CMakeLists.txt geht es mir.
Und darin gibt es auch ein README samt Installationsanweisung.

Verfasst: 16. Februar 2010 18:25
von FrancisA
Da habe ich leider auch nichts gefunden (nach dem download). Beim googlen fand ich noch den Tip.

find_package(KDE4 REQUIRED)
include(KDE4Defaults)

add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS})

(Wahrscheinlich nicht ganz richtig und mehr ein hack)
jetzt läuft einmal das cmake durch, kompilieren lässt es sich noch nicht.

Code: Alles auswählen

kateview.h:88: Error: Undefined interface                                                                                                                
automoc4: process for /home/franz/src/kate/build/kateview.moc failed: Unknown error                                                                                                
pid to wait for: 0
Na ja, wenn etwas einmal von Anfang so fuchst (und dann noch einen "unknown error", ...)

Vielleicht sollte man doch kde laufen haben (Kubuntu) und nicht XUbuntu...

Verfasst: 16. Februar 2010 18:52
von franzf
Es ist von Seiten der KDE-Devs nicht vorgesehen, Einzelkomponenten aus deren Unterverzeichnis heraus zu kompilieren.
Und darum findest du auch kein README im kate-subdirectory, sondern nur im Hauptverzeichnis.
Du kannst jetzt trotzdem dein kate einzeln bauen: Im Toplevel-CMakeLists.txt (also das erste das du siehst, wenn du das tar.bz2 entpackt hast) alles suchen was "macro_optional_add_subdirectory" steht. Entweder alles radikal löschen/auskommentieren, was nicht nach "kate" klingt (unschön, macht beim nächsten svn up Probleme), oder pro nicht gewünschter Komponente dem cmake ein "-DBUILD_<komponente>=OFF" mitgeben.
Z.B.

Code: Alles auswählen

cmake -DBUILD_kate=ON -DBUILD_kcachegrind=OFF -DBUILD_kapptemplate=OFF <usw....> -DCMAKE_INSTALL_PREFIX=(...sowieso) ..
Nur als kleine Vorlage, das musst du natürlich selber so weit erweitern bis nur noch das gebaut wird was du dir wünschst.
// edit:
Um das nochmal deutlich zu machen:
Du brauchst das:
ftp://ftp.kde.org/pub/kde/stable/4.4.0/ ... .0.tar.bz2
Oder entsprechendes Komplettpaket aus dem kde-trunk!

Verfasst: 17. Februar 2010 19:12
von FrancisA
franzf hat geschrieben: Du brauchst das:
ftp://ftp.kde.org/pub/kde/stable/4.4.0/ ... .0.tar.bz2
Oder entsprechendes Komplettpaket aus dem kde-trunk!
Hallo Franz, danke, das war es; aber nicht ganz. 4.4.0 ließ sich auch nicht kompilieren, sondern 4.3.2 ging.

Verfasst: 17. Februar 2010 20:09
von franzf
FrancisA hat geschrieben:Hallo Franz, danke, das war es; aber nicht ganz. 4.4.0 ließ sich auch nicht kompilieren, sondern 4.3.2 ging.
Das liegt 100% daran, dass deine Distribution ein älteres kde-4 installiert hat. Du wärst so auch nie mit dem svn glücklich geworden :)
Aber schön dass es jetzt hin haut!