Difference between revisions of "Projects/KDevelop4/HowToCompile"

Jump to: navigation, search
(1. Get the requirements)
 
(15 intermediate revisions by 10 users not shown)
Line 1: Line 1:
__NOTOC__
+
 
 
The way to download, compile, install and run KDevelop depends on how you want to download it and where do you want to install it to.
 
The way to download, compile, install and run KDevelop depends on how you want to download it and where do you want to install it to.
 
So follow the step by step instructions below.
 
So follow the step by step instructions below.
 +
 +
'''WARNING:''' You have to remove all KDevelop packages provided by your distribution. If you don't do that, binary compatibility issues will eventually lead to crashes and undefined behavior. To make sure, you can search for KDevelop libraries with this command:
 +
 +
<pre>find /usr/ -type f -name "*kdev*.so*"</pre>
 +
 +
If no results are returned, you should be on the safe side.
  
 
== 1. Get the requirements ==
 
== 1. Get the requirements ==
Line 8: Line 14:
 
In Fedora 13: kdelibs-devel kdebase-workspace-devel
 
In Fedora 13: kdelibs-devel kdebase-workspace-devel
  
In Ubuntu 11.04: cmake gcc g++ kdelibs5-dev zlib1g-dev kdebase-workspace-dev
+
In Ubuntu 11.04: cmake gcc g++ kdelibs5-dev zlib1g-dev kdebase-workspace-dev libgrantlee-dev
  
'''WARNING:''' You have to remove all KDevelop packages provided by your distribution. If you don't do that, binary compatibility issues will eventually lead to crashes and undefined behavior. To make sure, you can search for KDevelop libraries with this command:
+
In Debian: same as ubuntu, but you also need to compile at Grantlee in at least version 0.1.7, though I suggest to use the latest stable release. See http://downloads.grantlee.org/ and http://www.gitorious.org/grantlee/pages/Home
  
<pre>find /usr/ -type f -name "*kdev*.so*"</pre>
+
When configuring kdevplatform, these packages are needed to remedy the following errors:
 +
kdelibs5-dev: ERROR: Could not find KDE4 kde4-config
 +
zlib1g-dev: Could NOT find ZLIB
  
If no results are returned, you should be on the safe side.
+
When configuring kdevelop, these packages are needed to remedy the following errors:
 +
 
 +
Could NOT find KDE4Workspace
  
 
== 2. Get the sources (assumes ''$HOME/src'' but you can replace it with something else) ==
 
== 2. Get the sources (assumes ''$HOME/src'' but you can replace it with something else) ==
 
* By downloading it to ''$HOME/src''
 
* By downloading it to ''$HOME/src''
**  download ''kdevplatform.tar.bz2'' and ''kdevelop.tar.bz2'' from http://download.kde.org/download.php?url=stable/kdevelop/4.1.2/src/
+
**  download ''kdevplatform.tar.bz2'' and ''kdevelop.tar.bz2'' from http://kdevelop.org/ (see right sidebar for download links)
 
**  unpack them:
 
**  unpack them:
 
               cd $HOME/src
 
               cd $HOME/src
Line 30: Line 40:
 
Please note that this branch will depend on MovingRange in Kate, meaning KDE 4.5 and above. This can be updated by doing sudo yum update kdelibs or equivalent.  
 
Please note that this branch will depend on MovingRange in Kate, meaning KDE 4.5 and above. This can be updated by doing sudo yum update kdelibs or equivalent.  
  
* '''Or''', by getting the latest 4.2-branch sources directly out of the Git server. First you need to do clone git reposity as above, and then tell git to use branch 1.1 for kdevplatform and branch 4.1 for kdevelop:
+
* '''Or''', by getting the latest 4.5-branch sources directly out of the Git server. First you need to do clone git reposity as above, and then tell git to use branch 1.5 for kdevplatform and branch 4.5 for kdevelop:
         cd  $HOME/src/kdevplatform ; git checkout -b 1.2 origin/1.2
+
         cd  $HOME/src/kdevplatform ; git checkout -b 1.5 origin/1.5
         cd  $HOME/src/kdevelop ; git checkout -b 4.2 origin/4.2
+
         cd  $HOME/src/kdevelop ; git checkout -b 4.5 origin/4.5
  
 
== 3. Configure and install ==
 
== 3. Configure and install ==
Line 71: Line 81:
 
Before running KDevelop, you need set the KDEDIRS environment variable. Assuming that you want to install KDevelop4  into ''$HOME/kdevelop4'' then you need to run the following:
 
Before running KDevelop, you need set the KDEDIRS environment variable. Assuming that you want to install KDevelop4  into ''$HOME/kdevelop4'' then you need to run the following:
  
     export KDEDIRS=$HOME/kdevelop4:/$KDEDIRS
+
     export KDEDIRS=$HOME/kdevelop4:$KDEDIRS
 
     kbuildsycoca4
 
     kbuildsycoca4
  
Line 79: Line 89:
 
     export KDEDIRS=/usr/local/:$KDEDIRS
 
     export KDEDIRS=/usr/local/:$KDEDIRS
  
And it needs to have execution permissions.
+
And it needs to have execution permissions. If you want to use it directly, you'll have to logout of your current KDE session and log in again, otherwise this script won't be sourced of course...
  
 
=== System installation ===
 
=== System installation ===
Line 101: Line 111:
 
== 4. Get and install plugins (optional) ==
 
== 4. Get and install plugins (optional) ==
  
If you need extra functionality, you can get and install additional plugins for KDevelop4 at [[KDevelop 4/compiling/plugins]].
+
If you need extra functionality, you can get and install additional plugins for KDevelop4. Stable plugins can be found in Extragear: https://projects.kde.org/projects/extragear/kdevelop/plugins . Experimental, potentially unstable or even broken plugins can be found in Playground: https://projects.kde.org/projects/playground/devtools/plugins .
 +
 
 +
Many plugins you can find there (e.g. PHP, CSS, QMake, ...) require the KDevelop-PG-Qt parser generator. You can find that here: https://projects.kde.org/projects/extragear/kdevelop/utilities/kdevelop-pg-qt
 +
 
 +
Check the sources out and compile the plugin using the same steps as above, e.g. for PHP:
 +
 
 +
<pre>
 +
  mkdir -p $HOME/src/kdev-php/build
 +
  cd $HOME/src/kdev-php/build
 +
  cmake -DCMAKE_PREFIX_PATH=$HOME/kdevelop4 -DCMAKE_INSTALL_PREFIX=$HOME/kdevelop4 ../
 +
  make
 +
  make install
 +
</pre>
 +
 
 +
Make sure to run <code>kbuildsycoca4</code> after installation (see above)!
  
 
== 5. Run KDevelop ==
 
== 5. Run KDevelop ==
Line 122: Line 146:
 
         cd $HOME/src/kdevelop/build && sudo make uninstall
 
         cd $HOME/src/kdevelop/build && sudo make uninstall
 
         cd $HOME/src/kdevplatform/build && sudo make uninstall
 
         cd $HOME/src/kdevplatform/build && sudo make uninstall
         git pull && make && sudo make install
+
         cd $HOME/src/kdevplatform && git pull  
         cd $HOME/src/kdevelop/build
+
        cd $HOME/src/kdevplatform/build && make && sudo make install
        git pull && make && sudo make install
+
         cd $HOME/src/kdevelop && git pull
 +
        cd $HOME/src/kdevelop/build && make && sudo make install
 
         kbuildsycoca4
 
         kbuildsycoca4
 
* '''Or''' if installed in local directory
 
* '''Or''' if installed in local directory
 
         cd $HOME/src/kdevelop/build && make uninstall
 
         cd $HOME/src/kdevelop/build && make uninstall
 
         cd $HOME/src/kdevplatform/build && make uninstall
 
         cd $HOME/src/kdevplatform/build && make uninstall
         git pull && make && make install
+
         cd $HOME/src/kdevplatform && git pull
         cd $HOME/src/kdevelop/build
+
        cd $HOME/src/kdevplatform/build && make && make install
        git pull && make && make install
+
         cd $HOME/src/kdevelop && git pull
 +
        cd $HOME/src/kdevelop/build && make && make install
 
         kbuildsycoca4
 
         kbuildsycoca4
  
 
You can also see here [https://projects.kde.org/projects/extragear/kdevelop/ the latest changes] in the KDevelop projects.
 
You can also see here [https://projects.kde.org/projects/extragear/kdevelop/ the latest changes] in the KDevelop projects.
 +
 +
== 8. Troubleshooting ==
 +
* When running cmake on KDevelop, you get "Could NOT find KDE4Workspace". You need to install the kdebase-workspace-dev package.

Latest revision as of 22:22, 30 May 2013

The way to download, compile, install and run KDevelop depends on how you want to download it and where do you want to install it to. So follow the step by step instructions below.

WARNING: You have to remove all KDevelop packages provided by your distribution. If you don't do that, binary compatibility issues will eventually lead to crashes and undefined behavior. To make sure, you can search for KDevelop libraries with this command:

find /usr/ -type f -name "*kdev*.so*"

If no results are returned, you should be on the safe side.

Contents

[edit] 1. Get the requirements

Make sure to install the required KDE development packages, see KDevelop4/requirements for a list of requirements. In particular make sure to install KDE4 kdelibs development packages. At least following packages are required:

In Fedora 13: kdelibs-devel kdebase-workspace-devel

In Ubuntu 11.04: cmake gcc g++ kdelibs5-dev zlib1g-dev kdebase-workspace-dev libgrantlee-dev

In Debian: same as ubuntu, but you also need to compile at Grantlee in at least version 0.1.7, though I suggest to use the latest stable release. See http://downloads.grantlee.org/ and http://www.gitorious.org/grantlee/pages/Home

When configuring kdevplatform, these packages are needed to remedy the following errors: kdelibs5-dev: ERROR: Could not find KDE4 kde4-config zlib1g-dev: Could NOT find ZLIB

When configuring kdevelop, these packages are needed to remedy the following errors:

Could NOT find KDE4Workspace

[edit] 2. Get the sources (assumes $HOME/src but you can replace it with something else)

  • By downloading it to $HOME/src
    • download kdevplatform.tar.bz2 and kdevelop.tar.bz2 from http://kdevelop.org/ (see right sidebar for download links)
    • unpack them:
             cd $HOME/src
             tar xvjf kdevplatform.tar.bz2
             tar xvjf kdevelop.tar.bz2
  • Or, by getting the latest master branch sources directly out of the Git server
       git clone git://anongit.kde.org/kdevplatform $HOME/src/kdevplatform
       git clone git://anongit.kde.org/kdevelop $HOME/src/kdevelop

Please note that this branch will depend on MovingRange in Kate, meaning KDE 4.5 and above. This can be updated by doing sudo yum update kdelibs or equivalent.

  • Or, by getting the latest 4.5-branch sources directly out of the Git server. First you need to do clone git reposity as above, and then tell git to use branch 1.5 for kdevplatform and branch 4.5 for kdevelop:
       cd  $HOME/src/kdevplatform ; git checkout -b 1.5 origin/1.5 
       cd  $HOME/src/kdevelop ; git checkout -b 4.5 origin/4.5

[edit] 3. Configure and install

You can do a system install of KDevelop in the default path (/usr/local), which needs root privileges, or you can install it locally for your user only. The instructions for both are slightly different; first we'll explain the local install.

In both cases you need set the KDEDIRS environment variable to point to the installation directory of both KDE4 and KDevPlatform.

This will tell KDE core components where to search for plugins and other data related to KDE apps and contains just a list of paths (aka prefixes) where KDE libraries and/or applications have been installed.

Assuming that you have the KDE4 libraries installed in /usr (these are often from packages and installed in /usr or /opt/kde and is distro specific, if unsure ask your distro where it is), you'll have to append it to the KDEDIRS below.

[edit] Local installation

The following commands give instructions to install in $HOME/kdevelop4; you can of course replace it with something else. You don't need root permissions to install KDevelop this way.

First, compile and install KDevPlatform:

   mkdir -p $HOME/src/kdevplatform/build
   cd $HOME/src/kdevplatform/build
   cmake -DCMAKE_INSTALL_PREFIX=$HOME/kdevelop4 ../
   make
   make install

Then compile KDevelop, telling it to use the just-installed KDevPlatform:

   mkdir -p $HOME/src/kdevelop/build
   cd $HOME/src/kdevelop/build
   cmake -DCMAKE_PREFIX_PATH=$HOME/kdevelop4 -DCMAKE_INSTALL_PREFIX=$HOME/kdevelop4 ../
   make
   make install

Before running KDevelop, you need set the KDEDIRS environment variable. Assuming that you want to install KDevelop4 into $HOME/kdevelop4 then you need to run the following:

   export KDEDIRS=$HOME/kdevelop4:$KDEDIRS
   kbuildsycoca4

Note that this will set the KDEDIRS variable only for that shell (so launching kdevelop from desktop launcher will fail). A good solution is to add to a small script to $HOME/.kde/env that sets the KDEDIRS variable to proper. For example you may call it $HOME/.kde/env/kdedirs.sh and it could contain:

   #!/bin/bash
   export KDEDIRS=/usr/local/:$KDEDIRS

And it needs to have execution permissions. If you want to use it directly, you'll have to logout of your current KDE session and log in again, otherwise this script won't be sourced of course...

[edit] System installation

First, compile and install KDevPlatform:

   mkdir -p $HOME/src/kdevplatform/build
   cd $HOME/src/kdevplatform/build
   cmake ../
   make
   sudo make install

Then compile KDevelop:

   mkdir -p $HOME/src/kdevelop/build
   cd $HOME/src/kdevelop/build
   cmake ../
   make
   sudo make install

Before running it, you need to set KDEDIRS properly as in local installation but with path as /usr/local/.

[edit] 4. Get and install plugins (optional)

If you need extra functionality, you can get and install additional plugins for KDevelop4. Stable plugins can be found in Extragear: https://projects.kde.org/projects/extragear/kdevelop/plugins . Experimental, potentially unstable or even broken plugins can be found in Playground: https://projects.kde.org/projects/playground/devtools/plugins .

Many plugins you can find there (e.g. PHP, CSS, QMake, ...) require the KDevelop-PG-Qt parser generator. You can find that here: https://projects.kde.org/projects/extragear/kdevelop/utilities/kdevelop-pg-qt

Check the sources out and compile the plugin using the same steps as above, e.g. for PHP:

   mkdir -p $HOME/src/kdev-php/build
   cd $HOME/src/kdev-php/build
   cmake -DCMAKE_PREFIX_PATH=$HOME/kdevelop4 -DCMAKE_INSTALL_PREFIX=$HOME/kdevelop4 ../
   make
   make install

Make sure to run kbuildsycoca4 after installation (see above)!

[edit] 5. Run KDevelop

Just execute:

       $HOME/kdevelop4/bin/kdevelop

(If you want to ease it, you can add $HOME/kdevelop4/bin/ to your $PATH env variable).

[edit] 6. Contact the development team, or report bugs or wishes

If you find any compile problems with KDevelop4 please report them on our developer mailing-list. If you find problems while using KDevelop4 use, the bugzilla bug database which is only for bugs (not for compilation issues).

If you find bugs that cause program to crash and you are going to make bug report out of it, please re-compile the program with debug symbols. This is done with options

-DCMAKE_BUILD_TYPE=debugfull

passed to cmake in configuration step. Also be sure to update kdevelop and kdevplatform to newest version, your bug might be already fixed.

[edit] 7. Keeping it up-to-date with the latest fixes

If you got the sources from the git repository on step 2. then you can update by issuing the following commands:

  • with root permissions do this
       cd $HOME/src/kdevelop/build && sudo make uninstall
       cd $HOME/src/kdevplatform/build && sudo make uninstall
       cd $HOME/src/kdevplatform && git pull 
       cd $HOME/src/kdevplatform/build && make && sudo make install
       cd $HOME/src/kdevelop && git pull
       cd $HOME/src/kdevelop/build && make && sudo make install
       kbuildsycoca4
  • Or if installed in local directory
       cd $HOME/src/kdevelop/build && make uninstall
       cd $HOME/src/kdevplatform/build && make uninstall
       cd $HOME/src/kdevplatform && git pull
       cd $HOME/src/kdevplatform/build && make && make install
       cd $HOME/src/kdevelop && git pull
       cd $HOME/src/kdevelop/build && make && make install
       kbuildsycoca4

You can also see here the latest changes in the KDevelop projects.

[edit] 8. Troubleshooting

  • When running cmake on KDevelop, you get "Could NOT find KDE4Workspace". You need to install the kdebase-workspace-dev package.

This page was last modified on 30 May 2013, at 22:22. This page has been accessed 78,677 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal