<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://techbase.kde.org/skins/common/feed.css?0.2"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://techbase.kde.org/api.php?action=feedcontributions&amp;user=Fulldecent&amp;feedformat=atom</id>
		<title>KDE TechBase - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://techbase.kde.org/api.php?action=feedcontributions&amp;user=Fulldecent&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Special:Contributions/Fulldecent"/>
		<updated>2013-05-25T11:24:16Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20.2</generator>

	<entry>
		<id>http://techbase.kde.org/Getting_Started</id>
		<title>Getting Started</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started"/>
				<updated>2010-12-16T02:14:28Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: Reformat, see also http://techbase.kde.org/User:AaronPeterson and http://techbase.kde.org/index.php?title=User:Fulldecent&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started}} &lt;br /&gt;
&lt;br /&gt;
==Installing KDE SC and its Prerequesites==&lt;br /&gt;
There are several ways to install KDE SC so that you can use and develop KDE software. Below are complete instructions for installing KDE4 on a Linux system based on whether you want an Official Release, a Nightly Build, Stable 4.x Release, or Trunk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;5&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFEFD3&amp;quot;&amp;gt;'''Official Release'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFFEE4&amp;quot;&amp;gt;'''Nightly Build'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #D0ECEA&amp;quot;&amp;gt;'''Stable from Source'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #9FD6D2&amp;quot;&amp;gt;'''Trunk'''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;''For the casual user, or a developer who is working on applications outside of KDE SC''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For application developers or package managers who are not modifying the core of KDE SC'' &lt;br /&gt;
  &amp;lt;td&amp;gt;''For KDE SC and applications developers that want to spend less time setting up a build system''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For developers working on core KDE SC functionality''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=4&amp;gt;1. Use a [[Distributions with KDE|Distribution with KDE]] to set up a fully functional KDE system in one step. Also install the &amp;quot;developer packages&amp;quot; if you want to compile KDE software&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=3&amp;gt;2. Download and setup KDE SC easily using [[Getting_Started/Using Project Neon to contribute to KDE|Project Neon]]&lt;br /&gt;
  &amp;lt;td&amp;gt;2. Download KDE source from [[Getting_Started/Sources/Anonymous_SVN|SVN]]&lt;br /&gt;
  &amp;lt;td&amp;gt;2. Download KDE source from [[Getting_Started/Sources/Anonymous_SVN|SVN]]&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;3. [[Getting_Started/Build/KDE4.x|Build a stable 4.x release]]&lt;br /&gt;
  &amp;lt;td&amp;gt;3. [[Getting_Started/Build/KDE4|Build KDE SC from trunk]]&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;4. [[Getting_Started/Set_up_KDE_4_for_development|Set up scripts]] to ease KDE development&lt;br /&gt;
  &amp;lt;td&amp;gt;4. [[Getting_Started/Set_up_KDE_4_for_development|Set up scripts]] to ease KDE development&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
For instructions on installing KDE SC on Windows, BSD, or Mac OS X, or instructions for installing KDE3, please see the [[Getting_Started/Build|other supported platforms]] page. There are also [[Getting_Started/Build/KDE4.x_Upgrade|upgrade instructions from a branch to trunk]]. &lt;br /&gt;
&lt;br /&gt;
Below is additional information you may be interested in before installing KDE.&lt;br /&gt;
&lt;br /&gt;
==Build Notes for Special Users==&lt;br /&gt;
&lt;br /&gt;
* '''Distribution managers''' may be interested in [[Getting_Started/Build/KDE4/on_virtual_machines|installing KDE SC using a virtual machine]].&lt;br /&gt;
* '''Core developers''' may want to use a [[Developer_Setups|common KDE developer setup]] (this page is not complete).&lt;br /&gt;
&lt;br /&gt;
==QT==&lt;br /&gt;
&lt;br /&gt;
''In each installation scenario above, QT in installed in the most appropriate way.'' For you reference, there are three ways to install:&lt;br /&gt;
&lt;br /&gt;
; System Qt&lt;br /&gt;
: Often the easiest way to go, because most people have it already, you may have to install the QCA plugin as root though.&lt;br /&gt;
&lt;br /&gt;
; KDE-Qt &lt;br /&gt;
:Previously known as qt-copy -- This is the minimum version of Qt any of your users are expected to have. Some bugs may be fixed in new Qt, so you may have to work-around bugs in lower versions, including this one.&lt;br /&gt;
&lt;br /&gt;
; Main Qt&lt;br /&gt;
: Get it straight from Nokia, experience the latest cool features, but note that many people will be using older distributions with older Qt.&lt;br /&gt;
&lt;br /&gt;
==Source Repository==&lt;br /&gt;
&lt;br /&gt;
Currently, KDE SC source code is [[Getting_Started/Sources/Anonymous_SVN|accessed using svn]], but in the future, we are migrating to Git. [[Getting_Started/Sources/Amarok_Git_Tutorial|Amarok has already migrated to Git]].&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting the build ==&lt;br /&gt;
See [[Getting_Started/Build/KDE4/Troubleshooting|Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
Compile and Linking errors are frequent sources of discouragement. Make careful note of the first occurrence of an error in your build process. It could be as simple as a bad environment variable, an unexpected version of a library or missing prerequisite.  &lt;br /&gt;
&lt;br /&gt;
Please review your logs and do searches for fixes. If you cannot find a solution, try [[Build/KDE4/Errors]], the IRC channel, and the mailing lists. You can post your detailed issue from [[Build/Stories]].&lt;br /&gt;
&lt;br /&gt;
If you are building from trunk and following the instructions linked from here or from [[Build_KDE4.6_on_Kubuntu|Build KDE 4.5 on Kubuntu]] and would like free support, please contact:&lt;br /&gt;
: Aaron Peterson&lt;br /&gt;
: 206-334-5925 (lives in GMT -8 hours)&lt;br /&gt;
: Or leave a message at http://techbase.kde.org/User:AaronPeterson&lt;br /&gt;
&lt;br /&gt;
==Extra Tools==&lt;br /&gt;
You will likely want to use a stable package from your distribution instead of the ones of the KDE version you are working on.&lt;br /&gt;
&lt;br /&gt;
For most development topics, and documentation, see [[Development]]&lt;br /&gt;
&lt;br /&gt;
; Opening and creating KDE project files&lt;br /&gt;
* [[eclipse]]&lt;br /&gt;
* [[kdevelop]]&lt;br /&gt;
* [[Development/Tutorials/Using_Qt_Designer|qtdesigner]]&lt;br /&gt;
&lt;br /&gt;
==Contribution==&lt;br /&gt;
You may not need the latest bleeding-edge version of KDE with which to develop.  Much of the code will be similar between versions and your patch might work.  However, Trunk is where major changes are introduced, and branches are mostly for maintenance/bug fixes.&lt;br /&gt;
&lt;br /&gt;
[[Image:Action_tool.svg|right|32px]]&lt;br /&gt;
* [[Contribute|Contribute]]&lt;br /&gt;
* [[Contribute/Send_Patches|Send Patches]]&lt;br /&gt;
* [[Contribute/Bugsquad|Bugsquad]]&lt;br /&gt;
* [[Getting_Started/Using Project Neon to contribute to KDE|Using Project Neon to contribute to KDE]]&lt;br /&gt;
* [[Getting_Started/EasyStartDevelopmentOnDebian | Build, change and run packaged KDE applications on Debian]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-12-16T02:11:25Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
* Create Parallels virtual machine&lt;br /&gt;
* Install ubuntu-server&lt;br /&gt;
* sudo apt-get update&lt;br /&gt;
* sudo apt-get upgrade&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;br /&gt;
&lt;br /&gt;
== Testimonial ==&lt;br /&gt;
I also read that you wanted to know how long the build process takes&lt;br /&gt;
for new comers. In that regard, I had a very hard and long time at&lt;br /&gt;
first understanding the process of building trunk besides my stable&lt;br /&gt;
KDE. I tried building it several times, but every time it gave some&lt;br /&gt;
compilation errors in different pieces of codes. This was may be&lt;br /&gt;
because of wrong bashrc that I used for settings the env variables for&lt;br /&gt;
KDE_SRC and KDE_BUILD.&lt;br /&gt;
&lt;br /&gt;
But after I got that clear (a friend helped me through), the cmakekde&lt;br /&gt;
on kdesupport+kdelibs+phonon+kdebase took about an hour and a half,&lt;br /&gt;
excluding the source-code download time (it took really long due to my&lt;br /&gt;
slow internet connection).&lt;br /&gt;
&lt;br /&gt;
Glad I could help! Considering the ENTIRE time, it took me about a&lt;br /&gt;
month (I know its too long but I gave up every time it gave errors,&lt;br /&gt;
and did not try again till a week or so) to setup KDE from trunk. And&lt;br /&gt;
of course, I don't mind my response being put on the wiki if it helps.&lt;br /&gt;
Actually, I just posted a small and simple walkthrough on my blog for&lt;br /&gt;
building KDE from trunk beside the stable distro-provided KDE. Take a&lt;br /&gt;
look, if it helps either,&lt;br /&gt;
http://31shebang.wordpress.com/2010/09/23/kde-from-the-trunk/&lt;br /&gt;
&lt;br /&gt;
-- Viranch&lt;br /&gt;
&lt;br /&gt;
==Installing KDE SC and its Prerequesites==&lt;br /&gt;
There are several ways to install KDE SC so that you can use and develop KDE software. Below are complete instructions for installing KDE4 on a Linux system based on whether you want an Official Release, a Nightly Build, Stable 4.x Release, or Trunk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;5&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFEFD3&amp;quot;&amp;gt;'''Official Release'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFFEE4&amp;quot;&amp;gt;'''Nightly Build'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #D0ECEA&amp;quot;&amp;gt;'''Stable from Source'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #9FD6D2&amp;quot;&amp;gt;'''Trunk'''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;''For the casual user, or a developer who is working on applications outside of KDE SC''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For application developers or package managers who are not modifying the core of KDE SC'' &lt;br /&gt;
  &amp;lt;td&amp;gt;''For KDE SC and applications developers that want to spend less time setting up a build system''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For developers working on core KDE SC functionality''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=4&amp;gt;1. Use a [[Distributions with KDE|Distribution with KDE]] to set up a fully functional KDE system in one step. Also install the &amp;quot;developer packages&amp;quot; if you want to compile KDE software&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=3&amp;gt;2. Download and setup KDE SC easily using [[Getting_Started/Using Project Neon to contribute to KDE|Project Neon]]&lt;br /&gt;
  &amp;lt;td&amp;gt;2. Download KDE source from [[Getting_Started/Sources/Anonymous_SVN|SVN]]&lt;br /&gt;
  &amp;lt;td&amp;gt;2. Download KDE source from [[Getting_Started/Sources/Anonymous_SVN|SVN]]&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;3. [[Getting_Started/Build/KDE4.x|Build a stable 4.x release]]&lt;br /&gt;
  &amp;lt;td&amp;gt;3. [[Getting_Started/Build/KDE4|Build KDE SC from trunk]]&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;4. [[Getting_Started/Set_up_KDE_4_for_development|Set up scripts]] to ease KDE development&lt;br /&gt;
  &amp;lt;td&amp;gt;4. [[Getting_Started/Set_up_KDE_4_for_development|Set up scripts]] to ease KDE development&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
For instructions on installing KDE SC on Windows, BSD, or Mac OS X, or instructions for installing KDE3, please see the [[Getting_Started/Build|other supported platforms]] page. There are also [[Getting_Started/Build/KDE4.x_Upgrade|upgrade instructions from a branch to trunk]]. &lt;br /&gt;
&lt;br /&gt;
Below is additional information you may be interested in before installing KDE.&lt;br /&gt;
&lt;br /&gt;
==Build Notes for Special Users==&lt;br /&gt;
&lt;br /&gt;
* '''Distribution managers''' may be interested in [[Getting_Started/Build/KDE4/on_virtual_machines|installing KDE SC using a virtual machine]].&lt;br /&gt;
* '''Core developers''' may want to use a [[Developer_Setups|common KDE developer setup]] (this page in not complete).&lt;br /&gt;
&lt;br /&gt;
==QT==&lt;br /&gt;
&lt;br /&gt;
''In each installation scenario above, QT in installed in the most appropriate way.'' For you reference, there are three ways to install:&lt;br /&gt;
&lt;br /&gt;
; System Qt&lt;br /&gt;
: Often the easiest way to go, because most people have it already, you may have to install the QCA plugin as root though.&lt;br /&gt;
&lt;br /&gt;
; KDE-Qt &lt;br /&gt;
:Previously known as qt-copy -- This is the minimum version of Qt any of your users are expected to have. Some bugs may be fixed in new Qt, so you may have to work-around bugs in lower versions, including this one.&lt;br /&gt;
&lt;br /&gt;
; Main Qt&lt;br /&gt;
: Get it straight from Nokia, experience the latest cool features, but note that many people will be using older distributions with older Qt.&lt;br /&gt;
&lt;br /&gt;
==Source Repository==&lt;br /&gt;
&lt;br /&gt;
Currently, KDE SC source code is [[Getting_Started/Sources/Anonymous_SVN|accessed using svn]], but in the future, we are migrating to Git. [[Getting_Started/Sources/Amarok_Git_Tutorial|Amarok has already migrated to Git]].&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting the build ==&lt;br /&gt;
See [[Getting_Started/Build/KDE4/Troubleshooting|Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
Compile and Linking errors are frequent sources of discouragement. Make careful note of the first occurrence of an error in your build process. It could be as simple as a bad environment variable, an unexpected version of a library or missing prerequisite.  &lt;br /&gt;
&lt;br /&gt;
Please review your logs and do searches for fixes. If you cannot find a solution, try [[Build/KDE4/Errors]], the IRC channel, and the mailing lists. You can post your detailed issue from [[Build/Stories]].&lt;br /&gt;
&lt;br /&gt;
If you are building from trunk and following the instructions linked from here or from [[Build_KDE4.6_on_Kubuntu|Build KDE 4.5 on Kubuntu]] and would like free support, please contact:&lt;br /&gt;
: Aaron Peterson&lt;br /&gt;
: 206-334-5925 (lives in GMT -8 hours)&lt;br /&gt;
: Or leave a message at http://techbase.kde.org/User:AaronPeterson&lt;br /&gt;
&lt;br /&gt;
==Extra Tools==&lt;br /&gt;
You will likely want to use a stable package from your distribution instead of the ones of the KDE version you are working on.&lt;br /&gt;
&lt;br /&gt;
For most development topics, and documentation, see [[Development]]&lt;br /&gt;
&lt;br /&gt;
; Opening and creating KDE project files&lt;br /&gt;
* [[eclipse]]&lt;br /&gt;
* [[kdevelop]]&lt;br /&gt;
* [[Development/Tutorials/Using_Qt_Designer|qtdesigner]]&lt;br /&gt;
&lt;br /&gt;
==Contribution==&lt;br /&gt;
You may not need the latest bleeding-edge version of KDE with which to develop.  Much of the code will be similar between versions and your patch might work.  However, Trunk is where major changes are introduced, and branches are mostly for maintenance/bug fixes.&lt;br /&gt;
&lt;br /&gt;
[[Image:Action_tool.svg|right|32px]]&lt;br /&gt;
* [[Contribute|Contribute]]&lt;br /&gt;
* [[Contribute/Send_Patches|Send Patches]]&lt;br /&gt;
* [[Contribute/Bugsquad|Bugsquad]]&lt;br /&gt;
* [[Getting_Started/Using Project Neon to contribute to KDE|Using Project Neon to contribute to KDE]]&lt;br /&gt;
* [[Getting_Started/EasyStartDevelopmentOnDebian | Build, change and run packaged KDE applications on Debian]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-12-16T01:41:09Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Choosing the Right KDE Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
* Create Parallels virtual machine&lt;br /&gt;
* Install ubuntu-server&lt;br /&gt;
* sudo apt-get update&lt;br /&gt;
* sudo apt-get upgrade&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;br /&gt;
&lt;br /&gt;
== Testimonial ==&lt;br /&gt;
I also read that you wanted to know how long the build process takes&lt;br /&gt;
for new comers. In that regard, I had a very hard and long time at&lt;br /&gt;
first understanding the process of building trunk besides my stable&lt;br /&gt;
KDE. I tried building it several times, but every time it gave some&lt;br /&gt;
compilation errors in different pieces of codes. This was may be&lt;br /&gt;
because of wrong bashrc that I used for settings the env variables for&lt;br /&gt;
KDE_SRC and KDE_BUILD.&lt;br /&gt;
&lt;br /&gt;
But after I got that clear (a friend helped me through), the cmakekde&lt;br /&gt;
on kdesupport+kdelibs+phonon+kdebase took about an hour and a half,&lt;br /&gt;
excluding the source-code download time (it took really long due to my&lt;br /&gt;
slow internet connection).&lt;br /&gt;
&lt;br /&gt;
Glad I could help! Considering the ENTIRE time, it took me about a&lt;br /&gt;
month (I know its too long but I gave up every time it gave errors,&lt;br /&gt;
and did not try again till a week or so) to setup KDE from trunk. And&lt;br /&gt;
of course, I don't mind my response being put on the wiki if it helps.&lt;br /&gt;
Actually, I just posted a small and simple walkthrough on my blog for&lt;br /&gt;
building KDE from trunk beside the stable distro-provided KDE. Take a&lt;br /&gt;
look, if it helps either,&lt;br /&gt;
http://31shebang.wordpress.com/2010/09/23/kde-from-the-trunk/&lt;br /&gt;
&lt;br /&gt;
-- Viranch&lt;br /&gt;
&lt;br /&gt;
==Installing KDE SC and its Prerequesites==&lt;br /&gt;
There are several ways to install KDE SC so that you can use and develop KDE software. Below are complete instructions for installing KDE4 on a Linux system based on whether you want an Official Release, a Nightly Build, Stable 4.x Release, or Trunk.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;5&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFEFD3&amp;quot;&amp;gt;'''Official Release'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFFEE4&amp;quot;&amp;gt;'''Nightly Build'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #D0ECEA&amp;quot;&amp;gt;'''Stable from Source'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #9FD6D2&amp;quot;&amp;gt;'''Trunk'''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;''For the casual user, or a developer who is working on applications outside of KDE SC''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For application developers or package managers who are not modifying the core of KDE SC'' &lt;br /&gt;
  &amp;lt;td&amp;gt;''For KDE SC and applications developers that want to spend less time setting up a build system''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For developers working on core KDE SC functionality''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=3&amp;gt;1. Use a [[Distributions with KDE|Distribution with KDE]] to set up a fully functional KDE system in one step. Also install the &amp;quot;developer packages&amp;quot; if you want to compile KDE software&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
  &amp;lt;td&amp;gt;1. Install [[build requirements]] from your distribution&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=2&amp;gt;2. Download and setup KDE SC easily using [[Getting_Started/Using Project Neon to contribute to KDE|Project Neon]]&lt;br /&gt;
  &amp;lt;td&amp;gt;2. Download KDE source from [[Getting_Started/Sources/Anonymous_SVN|SVN]]&lt;br /&gt;
  &amp;lt;td&amp;gt;2. Download KDE source from [[Getting_Started/Sources/Anonymous_SVN|SVN]]&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;3. [[Getting_Started/Build/KDE4.x|Build a stable 4.x release]]&lt;br /&gt;
  &amp;lt;td&amp;gt;3. [[Getting_Started/Build/KDE4|Build KDE SC from trunk]]&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
For instructions on installing KDE SC on Windows, BSD, or Mac OS X, or instructions for installing KDE3, please see the [[Getting_Started/Build|other supported platforms]] page.&lt;br /&gt;
&lt;br /&gt;
Below is additional information you may be interested in before installing KDE.&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:AaronPeterson</id>
		<title>User:AaronPeterson</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:AaronPeterson"/>
				<updated>2010-12-16T01:26:28Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Concerns with your contributions at Getting Started */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Aaron Peterson lives in Washington State USA. and has contriubted to various wikis including openwiki.org one of the gentoo wikis and  wikipedias metawiki. as of 2010.07 Aaron is a novice programmer, who has done a bit of WMI, Javascript, C, and has followed a few C++ and QT tutorials, so he is very much learning and new to the process.&lt;br /&gt;
&lt;br /&gt;
==Request for HELP==&lt;br /&gt;
None currently, Aaron helped wean me from my psychological dependence on kdesrc-build&lt;br /&gt;
&lt;br /&gt;
== Wiki ==&lt;br /&gt;
===style===&lt;br /&gt;
Aaron generally organizes then polishes,  Some users may be offended by misspellings or hanging links to pages that do not exist, and making placeholders for content that he thinks should go there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
He likes using categories whenever possible.&lt;br /&gt;
==== Style II ====&lt;br /&gt;
I find that wiki's especially, mediawiki, get misused when in techbase role. It is important to use Categories, and NOT subdirectories so that wiki linking becomes easy.  Filing something under [[Getting Started]] is a horrible way to do it, because the item will also be related to the &amp;lt;nowiki&amp;gt;[[Topic]]&amp;lt;/nowiki&amp;gt;  In general, sub pages should be used only if the topic page is too large, and the additional content is exclusive to the topic.  I hope to re-arrange the wiki to make it easier to navigate.&lt;br /&gt;
&lt;br /&gt;
===ethics===&lt;br /&gt;
Aaron will move content about and adjust sentence structure to get right to the point. He rarely deletes content, rather, prefers to move it to new pages.&lt;br /&gt;
&lt;br /&gt;
=== frequency Noise===&lt;br /&gt;
I talk a lot, I am learning about projects that i interact with, and hope that I am actually contributing.  I want to give a high signal to noise, and I have a lot of time right now (July 2010) and am running with high enthusiasm.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Person ==&lt;br /&gt;
=== Contact Info ===&lt;br /&gt;
Aaron generally cares a great deal about the projects he works on and would very much enjoy talking with what they are working on, and requests help learning this stuff.&lt;br /&gt;
&lt;br /&gt;
Telephone: 206 334 5925&lt;br /&gt;
&lt;br /&gt;
=== Creativity ===&lt;br /&gt;
Part of my creativity comes from experimentation.  I try a lot of things, and I believe i have a talent for testing software, and creating user interfaces.&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
I file a lot of bugs and wishlist items. Often the fix is not trivial, and does not fit exactly in the category I put the item... because I have no idea where it should go.  For example,  I don't think we should program based on click, double click, drag,  I think we need more abstract concepts . &lt;br /&gt;
&lt;br /&gt;
I have filed bugs for bugzilla at mozilla regarding micropayment integration, and I tend to prefer Mantis as a bug/feature tracker.  I also very much think that searching for existing bugs should go thru closed bugs and not just open bugs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== KDE ==&lt;br /&gt;
&lt;br /&gt;
Aaron has enjoyed using applications made in KDE and QT for quite some time, and has posted bugs. He would like to be considered a usability contributer and is attempting to set up a build environment to actually fix some of the behavior he cares deeply about.&lt;br /&gt;
&lt;br /&gt;
=== Learning ===&lt;br /&gt;
[[/tutorials that are good]]&lt;br /&gt;
[[/tutorials that do not work]]&lt;br /&gt;
&lt;br /&gt;
=== Specific bugs and enhancements ===&lt;br /&gt;
* selecting items in dolphin and konqueror / dialogs are over-engineered and while simplify some very basic selection capability, complicates general use of the program.&lt;br /&gt;
* Single vs double click -- Aaron cares very deeply about accidental clicks activating programs, and would like to seporate desired appliacation behavior vs application use by creating a concept to make user interfaces easier.&lt;br /&gt;
** Reversable-Safe-to-activate -- no-data-loss -- a button, single click, even moving a cursor over can trigger an event and this triggers no possiblity of data loss.&lt;br /&gt;
** known-common-use - reversable - arranging content, a single button can trigger.&lt;br /&gt;
** known-non-reversable&lt;br /&gt;
   an example would be a slide-lock on an iphone, a double click, or similar&lt;br /&gt;
** known-dangerous&lt;br /&gt;
   a confirmation dialog/interuption of user is required.&lt;br /&gt;
** unknown&lt;br /&gt;
   a confirmation dialog may be requried.&lt;br /&gt;
==== plasma ====&lt;br /&gt;
* [[\gridplasmoid]] for icons  Seen in KDE3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*show contents of directory--within a panel, not an icon to start a new window..&lt;br /&gt;
*application plasmoids, task-bar like objects that organize application windows and documents, that stay persistant.. AND also provide taskbar like control ((all other implementations seen either are just like taskbars or completely hide content)&lt;br /&gt;
* Note taking / journal plasmoid, that actually prepends to a simple text file. Saves like an instant messanger log, perhaps just instant message self in a note., (from anywhere) and have it save on the server.&lt;br /&gt;
* [[/In panel run command]]  There is a run plasmoid, it just manifests as an icon, and I don't want to click on an icon, then click again and type what I want to run.&lt;br /&gt;
&lt;br /&gt;
-- The active user interface field is IN the plasmoid, so one less click.  (first seen with IE4beta but then removed.. also seen in KDE3)&lt;br /&gt;
* Make applets have a choice weather to behave like a popupapplet or an applet&lt;br /&gt;
(wishlist/bug filed: https://bugs.kde.org/show_bug.cgi?id=245124 ) Spent many many hours reading api / source code etc trying to figure this out ;) still&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;notmart&amp;gt; MrDarkUser: you reimplement void Applet::createConfigurationInterface(KConfigDialog *parent)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== KDE settings ====&lt;br /&gt;
[[/kdesettingsFixes]]&lt;br /&gt;
* wants to make kde settings behave as expected with single click, because they are all buttons/hyperlinks  Not fileRepresentation.&lt;br /&gt;
&lt;br /&gt;
==== Dolphin ====&lt;br /&gt;
* adding more columns [[/MoreMetaDataInDolphin]]&lt;br /&gt;
* Adding a view that allows grouping based on metadata&lt;br /&gt;
* Making Details be accessible in Icon view&lt;br /&gt;
* Make an Icon view that can be rearranged, not snapped to a grid.&lt;br /&gt;
* Make Thumbnails be in their own column/ make filetype icon still show up even  in iconview&lt;br /&gt;
* Make DetailedIcon view, where metadata gets shown in same tile as icon.&lt;br /&gt;
&lt;br /&gt;
== Knotify ==&lt;br /&gt;
.  Need to have a filter on incoming messages, and present a log view. Would like to implement a time and check condition capability, conditions to check would be file is filesize, window has gotten focus, other things to help knotify if it should pop up that annyoing dialog.  Also the application can send information like how many it expects to send.&lt;br /&gt;
&lt;br /&gt;
Would like all kinds of things to get logged. Deletion of files, trash cleared..... tons of stuff would be great to keep track of. sorting it would be a pain tho.&lt;br /&gt;
&lt;br /&gt;
==social networking ==&lt;br /&gt;
kreactor&lt;br /&gt;
overheard a conversation and started thinking about using it to make a social networking portal&lt;br /&gt;
alternative -- standards based websites that people put up themselves (already a project)&lt;br /&gt;
(facebook afterall, is just a glorified, centralized log analyzer that can trigger alarms)   We could eventually string all of our instant messages thru our log analyzer, have it show us what we want, and retransmit based on rules if certain conditions are met. &lt;br /&gt;
&lt;br /&gt;
* (social networking use is probably best in a sub page [[/NotificationLogAnalyzerAsSocialNetworking]]&lt;br /&gt;
&lt;br /&gt;
* http://lists.kde.org/?l=kde-core-devel&amp;amp;m=127935490806410&amp;amp;w=2&lt;br /&gt;
* http://bugs.kde.org/show_bug.cgi?id=215229&lt;br /&gt;
* Telepathy&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
http://forums.gentoo.org/viewtopic-p-6368828.html#6368828&lt;br /&gt;
&lt;br /&gt;
I still don't kknow how&lt;br /&gt;
{{help|building}}&lt;br /&gt;
[[/kdesrc-build-stories]]&lt;br /&gt;
&lt;br /&gt;
== Build it ==&lt;br /&gt;
[[/build]]&lt;br /&gt;
&lt;br /&gt;
== This Wiki ==&lt;br /&gt;
[[Welcome_to_KDE_TechBase/20100805/]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Concerns with your contributions at Getting Started ==&lt;br /&gt;
While it is great that you are editing this wiki, I really do not feel the edits you have made to this article aid new contributors.&lt;br /&gt;
&lt;br /&gt;
Looking at the after/before edits (respectively):&lt;br /&gt;
http://techbase.kde.org/Getting_Started&lt;br /&gt;
http://techbase.kde.org/index.php?title=Getting_Started&amp;amp;oldid=43418&lt;br /&gt;
&lt;br /&gt;
The latter definitely seems more cleanly organized and easier for a beginning contributor to disect. Keep in mind that the people we are attempting to target, will almost *definitely* be unsure of their abilities, unsure of whether working on KDE is easy, or even possible. It is best to not throw a ton of information their way all at once. It needs to be easy for them to digest...Not only that, there are a ton of dead links everywhere..so the visitor really gets the impression that we are..lacking, I suppose.&lt;br /&gt;
&lt;br /&gt;
Personally, I like the old-style one that I listed, more. While it wasn't perfect, it was simple and somewhat concise. And the banner-like objects helped break it down, and looked attractive while doing so. Then from there, the user was led to a series of more technical articles(although I think it was pretty much one big one after that..the separation is still very important. although, even in the older versions, there is of course still room for improvement).&lt;br /&gt;
&lt;br /&gt;
I am planning on reverting your changes, either by a full revert, or by a manual bit-by-bit one...depending on how much information was gained/lost between the versions. This is if I don't hear a response from you in some random amount of time...&lt;br /&gt;
&lt;br /&gt;
I really do not want new-comers to see the page like this, which is why I am being semi-expedient with this. contact me at shaun.reich@kdemail.net so we can discuss this. Or just reply to this. (I couldn't find your e-mail, so I just posted this thing here).&lt;br /&gt;
&lt;br /&gt;
[[User:Fulldecent|Fulldecent]] 01:26, 16 December 2010 (UTC) I agree that this is less appealing. I currently maintain kde.org/getinvolved and hear about people that are having trouble getting KDE set up. I will attempt to edit this page in the following way: I will add a graphic up front that describes the different choices a user has. Then, I will attempt to move some of the detailed links on this page (eg setting up with git) down into another related page (eg setting up with svn) so that this is focused on getting a user to quickly make a decision on the path they want and get started. Will Entriken 484-843-1313, kde.org@phor.net&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-12-15T01:29:41Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Choosing the Right KDE Setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
* Create Parallels virtual machine&lt;br /&gt;
* Install ubuntu-server&lt;br /&gt;
* sudo apt-get update&lt;br /&gt;
* sudo apt-get upgrade&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;br /&gt;
&lt;br /&gt;
== Testimonial ==&lt;br /&gt;
I also read that you wanted to know how long the build process takes&lt;br /&gt;
for new comers. In that regard, I had a very hard and long time at&lt;br /&gt;
first understanding the process of building trunk besides my stable&lt;br /&gt;
KDE. I tried building it several times, but every time it gave some&lt;br /&gt;
compilation errors in different pieces of codes. This was may be&lt;br /&gt;
because of wrong bashrc that I used for settings the env variables for&lt;br /&gt;
KDE_SRC and KDE_BUILD.&lt;br /&gt;
&lt;br /&gt;
But after I got that clear (a friend helped me through), the cmakekde&lt;br /&gt;
on kdesupport+kdelibs+phonon+kdebase took about an hour and a half,&lt;br /&gt;
excluding the source-code download time (it took really long due to my&lt;br /&gt;
slow internet connection).&lt;br /&gt;
&lt;br /&gt;
Glad I could help! Considering the ENTIRE time, it took me about a&lt;br /&gt;
month (I know its too long but I gave up every time it gave errors,&lt;br /&gt;
and did not try again till a week or so) to setup KDE from trunk. And&lt;br /&gt;
of course, I don't mind my response being put on the wiki if it helps.&lt;br /&gt;
Actually, I just posted a small and simple walkthrough on my blog for&lt;br /&gt;
building KDE from trunk beside the stable distro-provided KDE. Take a&lt;br /&gt;
look, if it helps either,&lt;br /&gt;
http://31shebang.wordpress.com/2010/09/23/kde-from-the-trunk/&lt;br /&gt;
&lt;br /&gt;
-- Viranch&lt;br /&gt;
&lt;br /&gt;
==Choosing the Right KDE Setup==&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;5&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFEFD3&amp;quot;&amp;gt;'''Official Release'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFFEE4&amp;quot;&amp;gt;'''Nightly Build'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #D0ECEA&amp;quot;&amp;gt;'''Stable from Source'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #9FD6D2&amp;quot;&amp;gt;'''Trunk'''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;''For the casual user, or a developer who is working on applications outside of KDE SC''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For application developers or package managers who are not modifying the core of KDE SC'' &lt;br /&gt;
  &amp;lt;td&amp;gt;''For core KDE developers that want to spend less time compiling''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For developers working on core KDE SC functionality''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=2&amp;gt;See [[Distributions with KDE]], this will install all prerequisites and a fully functional KDE system. Most distributions also have &amp;quot;developer packages&amp;quot; so you can compile KDE software.&lt;br /&gt;
  &amp;lt;td&amp;gt;Install [[build requirements]] from your distribution&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;Download and setup KDE SC easily using [[Getting_Started/Using Project Neon to contribute to KDE|Project Neon]]&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-12-15T01:08:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
* Create Parallels virtual machine&lt;br /&gt;
* Install ubuntu-server&lt;br /&gt;
* sudo apt-get update&lt;br /&gt;
* sudo apt-get upgrade&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;br /&gt;
&lt;br /&gt;
== Testimonial ==&lt;br /&gt;
I also read that you wanted to know how long the build process takes&lt;br /&gt;
for new comers. In that regard, I had a very hard and long time at&lt;br /&gt;
first understanding the process of building trunk besides my stable&lt;br /&gt;
KDE. I tried building it several times, but every time it gave some&lt;br /&gt;
compilation errors in different pieces of codes. This was may be&lt;br /&gt;
because of wrong bashrc that I used for settings the env variables for&lt;br /&gt;
KDE_SRC and KDE_BUILD.&lt;br /&gt;
&lt;br /&gt;
But after I got that clear (a friend helped me through), the cmakekde&lt;br /&gt;
on kdesupport+kdelibs+phonon+kdebase took about an hour and a half,&lt;br /&gt;
excluding the source-code download time (it took really long due to my&lt;br /&gt;
slow internet connection).&lt;br /&gt;
&lt;br /&gt;
Glad I could help! Considering the ENTIRE time, it took me about a&lt;br /&gt;
month (I know its too long but I gave up every time it gave errors,&lt;br /&gt;
and did not try again till a week or so) to setup KDE from trunk. And&lt;br /&gt;
of course, I don't mind my response being put on the wiki if it helps.&lt;br /&gt;
Actually, I just posted a small and simple walkthrough on my blog for&lt;br /&gt;
building KDE from trunk beside the stable distro-provided KDE. Take a&lt;br /&gt;
look, if it helps either,&lt;br /&gt;
http://31shebang.wordpress.com/2010/09/23/kde-from-the-trunk/&lt;br /&gt;
&lt;br /&gt;
-- Viranch&lt;br /&gt;
&lt;br /&gt;
==Choosing the Right KDE Setup==&lt;br /&gt;
&amp;lt;table width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFEFD3&amp;quot;&amp;gt;'''Official Release'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #FFFEE4&amp;quot;&amp;gt;'''Stable from Source'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #D0ECEA&amp;quot;&amp;gt;'''Nightly Build'''&lt;br /&gt;
  &amp;lt;td width=&amp;quot;25%&amp;quot; style=&amp;quot;background: #9FD6D2&amp;quot;&amp;gt;'''Trunk'''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td&amp;gt;''For the casual user, or a developer who is working on applications outside of KDE SC''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For application developers or package managers who are not modifying the core of KDE SC'' &lt;br /&gt;
  &amp;lt;td&amp;gt;''For core KDE developers that want to spend less time compiling''&lt;br /&gt;
  &amp;lt;td&amp;gt;''For developers working on core KDE SC functionality''&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
  &amp;lt;td rowspan=4&amp;gt;See a list of KDE SC versions that are available from your distribution. This will install all prerequisites you need and will provide a fully functional system. Most distributions have &amp;quot;developer packages&amp;quot; available which allow you to compile KDE software against the version of KDE SC you are running.&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-12-14T02:48:18Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* kdelibs dependencies */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of KDE SC 4 build requirements on any recent Kubuntu or Debian system. That is, if you want to build KDE SC 4 Platform, the required (and some strongly recommended) packages are installed with the commands on this page.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below. Then add any optional packages you like, as described below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&lt;br /&gt;
sudo aptitude install libgpgme11-dev libsasl2-dev&lt;br /&gt;
&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) installs all compilation requirements for kde4 (with the exception of qt4) and some strongly recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
There are no additional optional dependencies&lt;br /&gt;
 &lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
To enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-12-14T02:45:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: remove duplicate entries&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of KDE SC 4 build requirements on any recent Kubuntu or Debian system. That is, if you want to build KDE SC 4 Platform, the required (and some strongly recommended) packages are installed with the commands on this page.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below. Then add any optional packages you like, as described below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&lt;br /&gt;
sudo aptitude install libgpgme11-dev libsasl2-dev&lt;br /&gt;
&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) installs all compilation requirements for kde4 (with the exception of qt4) and some strongly recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
There are no additional optional dependencies&lt;br /&gt;
 &lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
To enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Combile_KDE_3.5</id>
		<title>Getting Started/Build/Combile KDE 3.5</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Combile_KDE_3.5"/>
				<updated>2010-12-14T02:08:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: moved Getting Started/Build/Combile KDE 3.5 to Getting Started/Build/Compile KDE 3.5&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Getting Started/Build/Compile KDE 3.5]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic/KDE_3.5</id>
		<title>Getting Started/Build/Historic/KDE 3.5</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic/KDE_3.5"/>
				<updated>2010-12-14T02:08:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: moved Getting Started/Build/Combile KDE 3.5 to Getting Started/Build/Compile KDE 3.5&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting Started/Build/Stable Version}}{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE3 From Source|&lt;br /&gt;
&lt;br /&gt;
reading=[http://kdesvn-build.kde.org/ The KDE From Subversion Build Tool]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Status===&lt;br /&gt;
This page is accurate as of 2008-07-19 for building KDE stable 3.5.9 (please report problems to [mailto:kde-devel@kde.org kde-devel] if they do not work for the latest stable 3.5.x). Other pages containing similar information are being consolidated to here. Similar pages include:&lt;br /&gt;
* http://quality.kde.org/develop/cvsguide/buildstep.php&lt;br /&gt;
&lt;br /&gt;
===KDE Stable===&lt;br /&gt;
The old stable version of KDE stable is 3.5.10 (current stable version is a 3.4 branch as of 2009/11/20). You will want to build KDE stable if you are a maintainer for an OS distribution. Otherwise, you may want to install KDE stable using the tools provided by your OS distribution or vendor.&lt;br /&gt;
&lt;br /&gt;
The recommended way to install KDE stable used to be [[Getting Started/Build/Konstruct|Konstruct]], a build system which helped you to install KDE releases and applications on your system. It downloads defined source tarballs, checks their integrity, decompresses, patches, configures, builds and installs them. A complete KDE installation should be as easy as &amp;quot;cd meta/kde;make install&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
By default [[Getting Started/Build/Konstruct|Konstruct]] installs to your home directory, which means you don't have to possess root privileges or risk to damage your system or affect another KDE.&lt;br /&gt;
&lt;br /&gt;
'''Currently it does not work and is not maintained any more.'''&lt;br /&gt;
&lt;br /&gt;
===Compiling Yourself===&lt;br /&gt;
&lt;br /&gt;
The following instructions describe how to build KDE 3.5.x yourself, i.e. without using [[Getting Started/Build/Konstruct|Konstruct]] or [http://kdesvn-build.kde.org/ kdesvn-build].&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
To compile KDE you need:&lt;br /&gt;
&lt;br /&gt;
* Qt 3.3.2 or newer&lt;br /&gt;
* a C++ compiler which supports exceptions, preferably a recent gcc 3.x release. gcc 2.95.x is still working.&lt;br /&gt;
* &amp;lt;tt&amp;gt;bunzip2&amp;lt;/tt&amp;gt; to decompress .bz2 files. You can find it here. Get libbz2 while you're at it, it enables reading of .tar.bz2 files in konqueror, and one day, will give access to .bz2 files to all KDE applications.&lt;br /&gt;
* If you want SSL support (for instance for secure web sites in konqueror), make sure you install &amp;lt;tt&amp;gt;openssl&amp;lt;/tt&amp;gt;, version 0.9.6 or later (versions 0.9.5x are not supported).&lt;br /&gt;
* For a better regular-expressions support in Javascript, install &amp;lt;tt&amp;gt;libpcre&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* For the KDE help system, you'll need to install &amp;lt;tt&amp;gt;libxml2&amp;lt;/tt&amp;gt;, version 2.3.13 or newer.&lt;br /&gt;
* pkg-config, to help find installed software.&lt;br /&gt;
* There are additional modules that are compiled if the required library is present, but they aren't critical to run KDE. For instance, libldap for the LDAP kioslave, and cdparanoia for the audiocd kioslave. A more detailed list of requirements is available in the KDE 3.5 Requirements List&lt;br /&gt;
&lt;br /&gt;
==Download==&lt;br /&gt;
In order to run KDE applications, you need the Qt, arts, and kdelibs packages. For a simple desktop (with a window manager, panel, etc), you will also need kdebase. The other packages contain many other applications by topic: networking, graphics, multimedia, games, utilities, toys, software development, etc.&lt;br /&gt;
&lt;br /&gt;
You can find the Qt library (qt-x11-free-3.3.8) from ftp://ftp.trolltech.com/qt/source/&lt;br /&gt;
&lt;br /&gt;
KDE 3.5.x is available from ftp://download.kde.org/pub/kde/stable/&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Unlike most compiled software, Qt is compiled in the place where it will stay instead of using a &amp;lt;tt&amp;gt;make install&amp;lt;/tt&amp;gt;. Please read the INSTALL instructions in the Qt package. You need to set the environment variables &amp;lt;tt&amp;gt;$QTDIR&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;$KDEDIR&amp;lt;/tt&amp;gt; to the locations where Qt and KDE will be installed, respectively. Also, append $QTDIR/bin and $KDEDIR/bin to your &amp;lt;tt&amp;gt;$PATH&amp;lt;/tt&amp;gt; and $QTDIR/lib and $KDEDIR/lib to &amp;lt;tt&amp;gt;$LD_LIBRARY_PATH&amp;lt;/tt&amp;gt;. Alternatively, instead of using &amp;lt;tt&amp;gt;$LD_LIBRARY_PATH&amp;lt;/tt&amp;gt;, you may add your Qt and KDE library paths to {{path|/etc/ld.so.conf}}, but don't forget to run &amp;lt;tt&amp;gt;ldconfig&amp;lt;/tt&amp;gt; as root after installing Qt and kdelibs, otherwise configure scripts will fail to find the newly installed libraries!&lt;br /&gt;
&lt;br /&gt;
If your distribution sets &amp;lt;tt&amp;gt;$XDG_DATA_DIRS&amp;lt;/tt&amp;gt; and/or &amp;lt;tt&amp;gt;$XDG_CONFIG_DIRS&amp;lt;/tt&amp;gt; you will want to update them to include the correct $KDEDIR/share/ resp. $KDEDIR/etc/xdg/&lt;br /&gt;
&lt;br /&gt;
 bunzip2 qt-x11-3.3.8.tar.bz2&lt;br /&gt;
 tar xvf qt-x11-3.3.8.tar&lt;br /&gt;
 cd qt-x11-3.3.8&lt;br /&gt;
 less INSTALL&lt;br /&gt;
 # Set up QTDIR, KDEDIR, PATH, LD_LIBRARY_PATH,&lt;br /&gt;
 # XDG_DATA_DIRS and XDG_CONFIG_DIRS&lt;br /&gt;
 cd $QTDIR&lt;br /&gt;
 ./configure -system-zlib -qt-gif -system-libpng \&lt;br /&gt;
     -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \&lt;br /&gt;
     -no-xinerama -no-g++-exceptions&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;tt&amp;gt;-thread&amp;lt;/tt&amp;gt; is required (KDE will not run or even compile if you omit it), that &amp;lt;tt&amp;gt;-no-xinerama&amp;lt;/tt&amp;gt; is only if you're not using xinerama, and &amp;lt;tt&amp;gt;-no-g++-exceptions&amp;lt;/tt&amp;gt; is strongly recommended if you're using gcc.&lt;br /&gt;
&lt;br /&gt;
Make sure to compile and install '''arts''' first, and afterwards '''kdelibs''' and then '''kdebase''' before any other packages. Also, if you want to use kdeaddons, it should be compiled last as it requires kdebase, kdemultimedia, etc.&lt;br /&gt;
&lt;br /&gt;
For each KDE package:&lt;br /&gt;
 bunzip2 &amp;lt;package&amp;gt;.tar.bz2&lt;br /&gt;
 tar xvf &amp;lt;package&amp;gt;.tar&lt;br /&gt;
 cd &amp;lt;package&amp;gt;&lt;br /&gt;
 ./configure&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== TroubleShooting ===&lt;br /&gt;
&lt;br /&gt;
* If you get an error like&lt;br /&gt;
 uic: File generated with too old version of Qt Designer&lt;br /&gt;
try&lt;br /&gt;
 which uic&lt;br /&gt;
and &lt;br /&gt;
 uic -v&lt;br /&gt;
to find out with which version of the UI compiler you are working. For KDE 3.5 and koffice 1.6 you will need a 3.x version.&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
* If compiling on a system where GNU make is not the default make (that is, most systems other than Linux), please run &amp;lt;tt&amp;gt;gmake &amp;amp;&amp;amp; gmake install&amp;lt;/tt&amp;gt; instead of &amp;lt;tt&amp;gt;make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* All packages mentioned here have to be compiled with the same compiler!&lt;br /&gt;
* See the [http://www.kde.org/info/3.5.9.php KDE 3.5.9 Info Page] for some common encountered problems when running KDE 3.5.9.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE3]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic</id>
		<title>Getting Started/Build/Historic</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic"/>
				<updated>2010-12-14T02:06:21Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting Started/Build/Older KDE Versions}}&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.5|Compiling KDE 3.5.x]]&lt;br /&gt;
: Instructions for installing KDE 3.5.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.4|Compiling KDE 3.4.x]]&lt;br /&gt;
: Instructions for installing KDE 3.4.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.3|Compiling KDE 3.3.x]]&lt;br /&gt;
: Instructions for installing KDE 3.3.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.2|Compiling KDE 3.2.x]]&lt;br /&gt;
: Instructions for installing KDE 3.2.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.1|Compiling KDE 3.1.x]]&lt;br /&gt;
: Instructions for installing KDE 3.1.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.0|Compiling KDE 3.0.x]]&lt;br /&gt;
: Instructions for installing KDE 3.0.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 2.2.2|Compiling KDE 2.2.2]]&lt;br /&gt;
: Instructions for installing KDE 2.2.2 from source code.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic</id>
		<title>Getting Started/Build/Historic</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic"/>
				<updated>2010-12-14T02:06:06Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting Started/Build/Older KDE Versions}}&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.4|Compiling KDE 3.5.x]]&lt;br /&gt;
: Instructions for installing KDE 3.5.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.4|Compiling KDE 3.4.x]]&lt;br /&gt;
: Instructions for installing KDE 3.4.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.3|Compiling KDE 3.3.x]]&lt;br /&gt;
: Instructions for installing KDE 3.3.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.2|Compiling KDE 3.2.x]]&lt;br /&gt;
: Instructions for installing KDE 3.2.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.1|Compiling KDE 3.1.x]]&lt;br /&gt;
: Instructions for installing KDE 3.1.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.0|Compiling KDE 3.0.x]]&lt;br /&gt;
: Instructions for installing KDE 3.0.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 2.2.2|Compiling KDE 2.2.2]]&lt;br /&gt;
: Instructions for installing KDE 2.2.2 from source code.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic</id>
		<title>Getting Started/Build/Historic</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic"/>
				<updated>2010-12-14T02:05:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting Started/Build/Older KDE Versions}}&lt;br /&gt;
; [[Getting Started/Build/Stable Version|Compiling KDE 3.5]]&lt;br /&gt;
: Instructions for installing KDE 3.5.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.4|Compiling KDE 3.4.x]]&lt;br /&gt;
: Instructions for installing KDE 3.4.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.3|Compiling KDE 3.3.x]]&lt;br /&gt;
: Instructions for installing KDE 3.3.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.2|Compiling KDE 3.2.x]]&lt;br /&gt;
: Instructions for installing KDE 3.2.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.1|Compiling KDE 3.1.x]]&lt;br /&gt;
: Instructions for installing KDE 3.1.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 3.0|Compiling KDE 3.0.x]]&lt;br /&gt;
: Instructions for installing KDE 3.0.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[../Compile KDE 2.2.2|Compiling KDE 2.2.2]]&lt;br /&gt;
: Instructions for installing KDE 2.2.2 from source code.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic/KDE_3.5</id>
		<title>Getting Started/Build/Historic/KDE 3.5</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic/KDE_3.5"/>
				<updated>2010-12-14T02:04:46Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: moved Getting Started/Build/Stable Version to Getting Started/Build/Combile KDE 3.5:&amp;amp;#32;3.5 is no longer the latest stable&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting Started/Build/Stable Version}}{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE3 From Source|&lt;br /&gt;
&lt;br /&gt;
reading=[http://kdesvn-build.kde.org/ The KDE From Subversion Build Tool]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Status===&lt;br /&gt;
This page is accurate as of 2008-07-19 for building KDE stable 3.5.9 (please report problems to [mailto:kde-devel@kde.org kde-devel] if they do not work for the latest stable 3.5.x). Other pages containing similar information are being consolidated to here. Similar pages include:&lt;br /&gt;
* http://quality.kde.org/develop/cvsguide/buildstep.php&lt;br /&gt;
&lt;br /&gt;
===KDE Stable===&lt;br /&gt;
The old stable version of KDE stable is 3.5.10 (current stable version is a 3.4 branch as of 2009/11/20). You will want to build KDE stable if you are a maintainer for an OS distribution. Otherwise, you may want to install KDE stable using the tools provided by your OS distribution or vendor.&lt;br /&gt;
&lt;br /&gt;
The recommended way to install KDE stable used to be [[Getting Started/Build/Konstruct|Konstruct]], a build system which helped you to install KDE releases and applications on your system. It downloads defined source tarballs, checks their integrity, decompresses, patches, configures, builds and installs them. A complete KDE installation should be as easy as &amp;quot;cd meta/kde;make install&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
By default [[Getting Started/Build/Konstruct|Konstruct]] installs to your home directory, which means you don't have to possess root privileges or risk to damage your system or affect another KDE.&lt;br /&gt;
&lt;br /&gt;
'''Currently it does not work and is not maintained any more.'''&lt;br /&gt;
&lt;br /&gt;
===Compiling Yourself===&lt;br /&gt;
&lt;br /&gt;
The following instructions describe how to build KDE 3.5.x yourself, i.e. without using [[Getting Started/Build/Konstruct|Konstruct]] or [http://kdesvn-build.kde.org/ kdesvn-build].&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
To compile KDE you need:&lt;br /&gt;
&lt;br /&gt;
* Qt 3.3.2 or newer&lt;br /&gt;
* a C++ compiler which supports exceptions, preferably a recent gcc 3.x release. gcc 2.95.x is still working.&lt;br /&gt;
* &amp;lt;tt&amp;gt;bunzip2&amp;lt;/tt&amp;gt; to decompress .bz2 files. You can find it here. Get libbz2 while you're at it, it enables reading of .tar.bz2 files in konqueror, and one day, will give access to .bz2 files to all KDE applications.&lt;br /&gt;
* If you want SSL support (for instance for secure web sites in konqueror), make sure you install &amp;lt;tt&amp;gt;openssl&amp;lt;/tt&amp;gt;, version 0.9.6 or later (versions 0.9.5x are not supported).&lt;br /&gt;
* For a better regular-expressions support in Javascript, install &amp;lt;tt&amp;gt;libpcre&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* For the KDE help system, you'll need to install &amp;lt;tt&amp;gt;libxml2&amp;lt;/tt&amp;gt;, version 2.3.13 or newer.&lt;br /&gt;
* pkg-config, to help find installed software.&lt;br /&gt;
* There are additional modules that are compiled if the required library is present, but they aren't critical to run KDE. For instance, libldap for the LDAP kioslave, and cdparanoia for the audiocd kioslave. A more detailed list of requirements is available in the KDE 3.5 Requirements List&lt;br /&gt;
&lt;br /&gt;
==Download==&lt;br /&gt;
In order to run KDE applications, you need the Qt, arts, and kdelibs packages. For a simple desktop (with a window manager, panel, etc), you will also need kdebase. The other packages contain many other applications by topic: networking, graphics, multimedia, games, utilities, toys, software development, etc.&lt;br /&gt;
&lt;br /&gt;
You can find the Qt library (qt-x11-free-3.3.8) from ftp://ftp.trolltech.com/qt/source/&lt;br /&gt;
&lt;br /&gt;
KDE 3.5.x is available from ftp://download.kde.org/pub/kde/stable/&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Unlike most compiled software, Qt is compiled in the place where it will stay instead of using a &amp;lt;tt&amp;gt;make install&amp;lt;/tt&amp;gt;. Please read the INSTALL instructions in the Qt package. You need to set the environment variables &amp;lt;tt&amp;gt;$QTDIR&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;$KDEDIR&amp;lt;/tt&amp;gt; to the locations where Qt and KDE will be installed, respectively. Also, append $QTDIR/bin and $KDEDIR/bin to your &amp;lt;tt&amp;gt;$PATH&amp;lt;/tt&amp;gt; and $QTDIR/lib and $KDEDIR/lib to &amp;lt;tt&amp;gt;$LD_LIBRARY_PATH&amp;lt;/tt&amp;gt;. Alternatively, instead of using &amp;lt;tt&amp;gt;$LD_LIBRARY_PATH&amp;lt;/tt&amp;gt;, you may add your Qt and KDE library paths to {{path|/etc/ld.so.conf}}, but don't forget to run &amp;lt;tt&amp;gt;ldconfig&amp;lt;/tt&amp;gt; as root after installing Qt and kdelibs, otherwise configure scripts will fail to find the newly installed libraries!&lt;br /&gt;
&lt;br /&gt;
If your distribution sets &amp;lt;tt&amp;gt;$XDG_DATA_DIRS&amp;lt;/tt&amp;gt; and/or &amp;lt;tt&amp;gt;$XDG_CONFIG_DIRS&amp;lt;/tt&amp;gt; you will want to update them to include the correct $KDEDIR/share/ resp. $KDEDIR/etc/xdg/&lt;br /&gt;
&lt;br /&gt;
 bunzip2 qt-x11-3.3.8.tar.bz2&lt;br /&gt;
 tar xvf qt-x11-3.3.8.tar&lt;br /&gt;
 cd qt-x11-3.3.8&lt;br /&gt;
 less INSTALL&lt;br /&gt;
 # Set up QTDIR, KDEDIR, PATH, LD_LIBRARY_PATH,&lt;br /&gt;
 # XDG_DATA_DIRS and XDG_CONFIG_DIRS&lt;br /&gt;
 cd $QTDIR&lt;br /&gt;
 ./configure -system-zlib -qt-gif -system-libpng \&lt;br /&gt;
     -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \&lt;br /&gt;
     -no-xinerama -no-g++-exceptions&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
Note that &amp;lt;tt&amp;gt;-thread&amp;lt;/tt&amp;gt; is required (KDE will not run or even compile if you omit it), that &amp;lt;tt&amp;gt;-no-xinerama&amp;lt;/tt&amp;gt; is only if you're not using xinerama, and &amp;lt;tt&amp;gt;-no-g++-exceptions&amp;lt;/tt&amp;gt; is strongly recommended if you're using gcc.&lt;br /&gt;
&lt;br /&gt;
Make sure to compile and install '''arts''' first, and afterwards '''kdelibs''' and then '''kdebase''' before any other packages. Also, if you want to use kdeaddons, it should be compiled last as it requires kdebase, kdemultimedia, etc.&lt;br /&gt;
&lt;br /&gt;
For each KDE package:&lt;br /&gt;
 bunzip2 &amp;lt;package&amp;gt;.tar.bz2&lt;br /&gt;
 tar xvf &amp;lt;package&amp;gt;.tar&lt;br /&gt;
 cd &amp;lt;package&amp;gt;&lt;br /&gt;
 ./configure&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
=== TroubleShooting ===&lt;br /&gt;
&lt;br /&gt;
* If you get an error like&lt;br /&gt;
 uic: File generated with too old version of Qt Designer&lt;br /&gt;
try&lt;br /&gt;
 which uic&lt;br /&gt;
and &lt;br /&gt;
 uic -v&lt;br /&gt;
to find out with which version of the UI compiler you are working. For KDE 3.5 and koffice 1.6 you will need a 3.x version.&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
* If compiling on a system where GNU make is not the default make (that is, most systems other than Linux), please run &amp;lt;tt&amp;gt;gmake &amp;amp;&amp;amp; gmake install&amp;lt;/tt&amp;gt; instead of &amp;lt;tt&amp;gt;make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* All packages mentioned here have to be compiled with the same compiler!&lt;br /&gt;
* See the [http://www.kde.org/info/3.5.9.php KDE 3.5.9 Info Page] for some common encountered problems when running KDE 3.5.9.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE3]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Stable_Version</id>
		<title>Getting Started/Build/Stable Version</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Stable_Version"/>
				<updated>2010-12-14T02:04:46Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: moved Getting Started/Build/Stable Version to Getting Started/Build/Combile KDE 3.5:&amp;amp;#32;3.5 is no longer the latest stable&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Getting Started/Build/Combile KDE 3.5]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-10-05T01:37:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: add testimonial&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
* Create Parallels virtual machine&lt;br /&gt;
* Install ubuntu-server&lt;br /&gt;
* sudo apt-get update&lt;br /&gt;
* sudo apt-get upgrade&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;br /&gt;
&lt;br /&gt;
== Testimonial ==&lt;br /&gt;
I also read that you wanted to know how long the build process takes&lt;br /&gt;
for new comers. In that regard, I had a very hard and long time at&lt;br /&gt;
first understanding the process of building trunk besides my stable&lt;br /&gt;
KDE. I tried building it several times, but every time it gave some&lt;br /&gt;
compilation errors in different pieces of codes. This was may be&lt;br /&gt;
because of wrong bashrc that I used for settings the env variables for&lt;br /&gt;
KDE_SRC and KDE_BUILD.&lt;br /&gt;
&lt;br /&gt;
But after I got that clear (a friend helped me through), the cmakekde&lt;br /&gt;
on kdesupport+kdelibs+phonon+kdebase took about an hour and a half,&lt;br /&gt;
excluding the source-code download time (it took really long due to my&lt;br /&gt;
slow internet connection).&lt;br /&gt;
&lt;br /&gt;
Glad I could help! Considering the ENTIRE time, it took me about a&lt;br /&gt;
month (I know its too long but I gave up every time it gave errors,&lt;br /&gt;
and did not try again till a week or so) to setup KDE from trunk. And&lt;br /&gt;
of course, I don't mind my response being put on the wiki if it helps.&lt;br /&gt;
Actually, I just posted a small and simple walkthrough on my blog for&lt;br /&gt;
building KDE from trunk beside the stable distro-provided KDE. Take a&lt;br /&gt;
look, if it helps either,&lt;br /&gt;
http://31shebang.wordpress.com/2010/09/23/kde-from-the-trunk/&lt;br /&gt;
&lt;br /&gt;
-- Viranch&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T20:53:23Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Going with kdesrc-build */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
* Create Parallels virtual machine&lt;br /&gt;
* Install ubuntu-server&lt;br /&gt;
* sudo apt-get update&lt;br /&gt;
* sudo apt-get upgrade&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T20:33:00Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Latest problem with kdesrc-build method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
Kernel panic during git update on qt-copy&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T19:50:14Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Latest problem with kdesrc-build method */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
kde-devel@ubuntu:~/kdesrc$ ./kdesrc-build qt-copy&lt;br /&gt;
Script started processing at Mon Aug 30 15:53:58 2010&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;  Build Process  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
Building qt-copy (1/1)&lt;br /&gt;
	Waiting for source code update.&lt;br /&gt;
error: Untracked working tree file '.commit-template' would be overwritten by merge.&lt;br /&gt;
Error updating qt-copy, removing from list of packages to build.&lt;br /&gt;
 &amp;gt; Unable to perform a git checkout to existing branch master at ./kdesrc-build line 2027.&lt;br /&gt;
&lt;br /&gt;
	Unable to update qt-copy, build canceled.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;  Build Done  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;  PACKAGES FAILED TO UPDATE  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
qt-copy - ~/kdesrc/log/2010-08-30-06/qt-copy/error.log&lt;br /&gt;
&lt;br /&gt;
The following modules have failed to build 3 or more times in a row:&lt;br /&gt;
	qt-copy&lt;br /&gt;
&lt;br /&gt;
There is probably a local error causing this kind of consistent failure, it&lt;br /&gt;
is recommended to verify no issues on the system.&lt;br /&gt;
&lt;br /&gt;
Script finished processing at Mon Aug 30 15:54:09 2010&lt;br /&gt;
Your logs are saved in /home/kde-devel/kdesrc/log/2010-08-30-06&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kde-devel@ubuntu:~/kdesrc$ grep -R . ~/kdesrc/log/2010-08-30-06/&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/qt-copy/git-checkout-update.log:# kdesrc-build running: 'git' 'checkout' 'master'&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/qt-copy/error.log:# kdesrc-build running: 'git' 'checkout' 'master'&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/qt-copy/git-fetch.log:# kdesrc-build running: 'git' 'fetch' 'origin'&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-status:qt-copy: Failed on update.&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:Script started processing at g[Mon Aug 30 15:53:58 2010]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:&amp;lt;&amp;lt;&amp;lt;  Build Process  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:Building g[qt-copy] (1/1)&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:	Waiting for source code update.&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:&amp;lt;&amp;lt;&amp;lt;  Build Done  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log: &lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:r[b[&amp;lt;&amp;lt;&amp;lt;  PACKAGES FAILED TO UPDATE  &amp;gt;&amp;gt;&amp;gt;]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:r[qt-copy] - g[~/kdesrc/log/2010-08-30-06/qt-copy/error.log]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:The following modules have failed to build 3 or more times in a row:&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:	r[b[qt-copy]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:There is probably a local error causing this kind of consistent failure, it&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:is recommended to verify no issues on the system.&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-06/build-log:r[Script finished processing at g[Mon Aug 30 15:54:09 2010]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T19:48:45Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;br /&gt;
&lt;br /&gt;
== Latest problem with kdesrc-build method ==&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
kde-devel@ubuntu:~/kdesrc$ ./kdesrc-build qt-copy&lt;br /&gt;
Script started processing at Mon Aug 30 15:50:38 2010&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;  Build Process  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
Building qt-copy (1/1)&lt;br /&gt;
	Waiting for source code update.&lt;br /&gt;
fatal: Unable to create '/home/kde-devel/kdesrc/qt-copy/.git/index.lock': File exists.&lt;br /&gt;
&lt;br /&gt;
If no other git process is currently running, this probably means a&lt;br /&gt;
git process crashed in this repository earlier. Make sure no other git&lt;br /&gt;
process is running and remove the file manually to continue.&lt;br /&gt;
Error updating qt-copy, removing from list of packages to build.&lt;br /&gt;
 &amp;gt; Unable to perform a git checkout to existing branch master at ./kdesrc-build line 2027.&lt;br /&gt;
&lt;br /&gt;
	Unable to update qt-copy, build canceled.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;  Build Done  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt;  PACKAGES FAILED TO UPDATE  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
qt-copy - ~/kdesrc/log/2010-08-30-05/qt-copy/error.log&lt;br /&gt;
Script finished processing at Mon Aug 30 15:50:49 2010&lt;br /&gt;
Your logs are saved in /home/kde-devel/kdesrc/log/2010-08-30-05&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
kde-devel@ubuntu:~/kdesrc$ grep -R . ~/kdesrc/log/2010-08-30-05/&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/qt-copy/git-checkout-update.log:# kdesrc-build running: 'git' 'checkout' 'master'&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/qt-copy/error.log:# kdesrc-build running: 'git' 'checkout' 'master'&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/qt-copy/git-fetch.log:# kdesrc-build running: 'git' 'fetch' 'origin'&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-status:qt-copy: Failed on update.&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:Script started processing at g[Mon Aug 30 15:50:38 2010]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:&amp;lt;&amp;lt;&amp;lt;  Build Process  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:Building g[qt-copy] (1/1)&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:	Waiting for source code update.&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:&amp;lt;&amp;lt;&amp;lt;  Build Done  &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log: &lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:r[b[&amp;lt;&amp;lt;&amp;lt;  PACKAGES FAILED TO UPDATE  &amp;gt;&amp;gt;&amp;gt;]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:r[qt-copy] - g[~/kdesrc/log/2010-08-30-05/qt-copy/error.log]&lt;br /&gt;
/home/kde-devel/kdesrc/log/2010-08-30-05/build-log:r[Script finished processing at g[Mon Aug 30 15:50:49 2010]&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T18:56:52Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Going with kdesrc-build */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;br /&gt;
****** cd ~/kdesrc &amp;amp;&amp;amp; ./kdesrc-build qt-copy&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T18:54:28Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
== Going with kdesrc-build ==&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T18:35:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesrc-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
kdesrc-build requires Perl 5.8 or higher. It is installed by default with most distributions, and is included in the link above. Check your version of Perl with:&lt;br /&gt;
&amp;lt;code&amp;gt;perl -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T18:33:01Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;br /&gt;
****** http://kdesrc-build.kde.org/&lt;br /&gt;
******* http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.php&lt;br /&gt;
******** Download http://kdesrc-build.kde.org/releases/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Download_and_install_kdesrc-build #Download_and_install_kdesrc-build]&lt;br /&gt;
****** Run commands at [http://techbase.kde.org/Getting_Started/Build/kdesvn-build#Setup_the_configuration #Setup_the_configuration]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T18:14:12Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: revert&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
kdesrc-build requires Perl 5.8 or higher. It is installed by default with most distributions, and is included in the link above. Check your version of Perl with:&lt;br /&gt;
&amp;lt;code&amp;gt;perl -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T18:11:16Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Setup the configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
kdesrc-build requires Perl 5.8 or higher. It is installed by default with most distributions, and is included in the link above. Check your version of Perl with:&lt;br /&gt;
&amp;lt;code&amp;gt;perl -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T18:10:43Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Setup the configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
kdesrc-build requires Perl 5.8 or higher. It is installed by default with most distributions, and is included in the link above. Check your version of Perl with:&lt;br /&gt;
&amp;lt;code&amp;gt;perl -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T18:09:53Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Setup the configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
kdesrc-build requires Perl 5.8 or higher. It is installed by default with most distributions, and is included in the link above. Check your version of Perl with:&lt;br /&gt;
&amp;lt;code&amp;gt;perl -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:58:43Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Prerequisites */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
kdesrc-build requires Perl 5.8 or higher. It is installed by default with most distributions, and is included in the link above. Check your version of Perl with:&lt;br /&gt;
&amp;lt;code&amp;gt;perl -v&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:54:30Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
In addition to those listed requirements, kdesrc-build requires the Perl scripting platform to be installed.  It is installed by default with most distributions, and is required to build KDE SC anyways.  kdesrc-build requires Perl 5.8 or higher.&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/User:Fulldecent</id>
		<title>User:Fulldecent</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/User:Fulldecent"/>
				<updated>2010-08-30T17:52:46Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: Created page with 'I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in und...'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I am interested in compiling KDE SC on a stock ubuntu-server distribution in under 7 days, and then updating the documentation so that a new contributor to KDE can do this in under 6 days. I think the huge up-front commitment to build from trunk is a barrier to entry for new contributors.&lt;br /&gt;
&lt;br /&gt;
Here is a list of documentation that I am consulting and working on. They are listed in order from http://kde.org/community/getinvolved/, a place where new contributors can start, and is hierarchal based on hyper links. Action that is required is also included on this list. Ultimately, this should result in a runnable system.&lt;br /&gt;
&lt;br /&gt;
* http://kde.org/community/getinvolved/&lt;br /&gt;
** http://kde.org/community/getinvolved/development/&lt;br /&gt;
*** http://techbase.kde.org/Getting_Started/Build/Unstable_Version&lt;br /&gt;
**** http://kdesrc-build.kde.org/&lt;br /&gt;
***** http://techbase.kde.org/Getting_Started/Build/kdesvn-build&lt;br /&gt;
****** http://techbase.kde.org/Getting_Started/Build/KDE4#Required_packages_from_your_distribution&lt;br /&gt;
******* Run commands on this page&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:38:46Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of KDE SC 4 build requirements on any recent Kubuntu or Debian. That is, if you want to build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) install almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libqt4-dev libstreamanalyzer-dev \&lt;br /&gt;
libstrigiqtdbusclient-dev libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:36:18Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* kdebase dependencies */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) install almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libqt4-dev libstreamanalyzer-dev \&lt;br /&gt;
libstrigiqtdbusclient-dev libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:34:46Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) install almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libqt4-dev libstreamanalyzer-dev \&lt;br /&gt;
libstrigiqtdbusclient-dev libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:33:35Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) install almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libqt4-dev libstreamanalyzer-dev \&lt;br /&gt;
libstrigiqtdbusclient-dev libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== Build prerequisites ==&lt;br /&gt;
In Kubuntu and Debian (Testing/Unstable) the build prerequisites are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Optional packages for API documentation generation:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install doxygen graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:31:53Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* 4.6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
This (along with the command for 4.x above) install almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz libqt4-dev libstreamanalyzer-dev \&lt;br /&gt;
libstrigiqtdbusclient-dev libxml2-utils libopenexr-dev libjasper-dev libenchant-dev \&lt;br /&gt;
libavahi-common-dev libaspell-dev libasound2-dev libldap2-dev libsasl2-dev \&lt;br /&gt;
libsmbclient-dev libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev network-manager-dev libsmbclient-dev \&lt;br /&gt;
libsensors-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev libsvn-dev libsvncpp-dev \&lt;br /&gt;
libqt4-dev libqca2-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git libpoppler-qt4-dev \&lt;br /&gt;
libspectre-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== More Trunk and unsorted ==&lt;br /&gt;
****I moved  libstreamanalyzer-dev libstrigiqtdbusclient-dev to the section below since that pulls in qt4.&lt;br /&gt;
&lt;br /&gt;
This installs build prerequisites such as build essential, almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&lt;br /&gt;
To install all the optional packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake  \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen graphviz libqt4-dev \&lt;br /&gt;
dbus-x11 libdbus-1-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libclucene0ldbl libclucene-dev libjpeg62-dev libkrb5-dev libsm-dev \&lt;br /&gt;
libssl-dev libbz2-dev libical-dev libxml2-utils libopenexr-dev \&lt;br /&gt;
libjasper-dev libenchant-dev libavahi-common-dev libaspell-dev \&lt;br /&gt;
libasound2-dev libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev \&lt;br /&gt;
libldap2-dev libsasl2-dev libxine-dev libqimageblitz-dev libsmbclient-dev \&lt;br /&gt;
libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev \&lt;br /&gt;
network-manager-dev libsmbclient-dev libsensors-dev \&lt;br /&gt;
libpam0g-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev \&lt;br /&gt;
libeigen2-dev libopenbabel-dev libfacile-ocaml-dev libboost-python-dev \&lt;br /&gt;
libsvn-dev libsvncpp-dev libqt4-dev libqca2-dev \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libxtst-dev librdf0-dev xsltproc \&lt;br /&gt;
libxrender-dev libfontconfig1-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git \&lt;br /&gt;
libpoppler-qt4-dev libspectre-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libqt4-webkit-dev shared-desktop-ontologies&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
== Build prerequisites ==&lt;br /&gt;
In Kubuntu and Debian (Testing/Unstable) the build prerequisites are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Optional packages for API documentation generation:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install doxygen graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:23:32Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
Install these for any KDE 4.x release, then add specific packages for point releases as below.&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.6 ===&lt;br /&gt;
(Also known as trunk) &lt;br /&gt;
No extra packages for trunk at this time&lt;br /&gt;
&lt;br /&gt;
=== 4.5 ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev # for kdenetworks&lt;br /&gt;
sudo aptitude install liblcms1-dev # for kdegraphics&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 ===&lt;br /&gt;
(Nothing extra needed)&lt;br /&gt;
&lt;br /&gt;
== More Trunk and unsorted ==&lt;br /&gt;
****I moved  libstreamanalyzer-dev libstrigiqtdbusclient-dev to the section below since that pulls in qt4.&lt;br /&gt;
&lt;br /&gt;
This installs build prerequisites such as build essential, almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&lt;br /&gt;
To install all the optional packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake  \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen graphviz libqt4-dev \&lt;br /&gt;
dbus-x11 libdbus-1-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libclucene0ldbl libclucene-dev libjpeg62-dev libkrb5-dev libsm-dev \&lt;br /&gt;
libssl-dev libbz2-dev libical-dev libxml2-utils libopenexr-dev \&lt;br /&gt;
libjasper-dev libenchant-dev libavahi-common-dev libaspell-dev \&lt;br /&gt;
libasound2-dev libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev \&lt;br /&gt;
libldap2-dev libsasl2-dev libxine-dev libqimageblitz-dev libsmbclient-dev \&lt;br /&gt;
libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev \&lt;br /&gt;
network-manager-dev libsmbclient-dev libsensors-dev \&lt;br /&gt;
libpam0g-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev \&lt;br /&gt;
libeigen2-dev libopenbabel-dev libfacile-ocaml-dev libboost-python-dev \&lt;br /&gt;
libsvn-dev libsvncpp-dev libqt4-dev libqca2-dev \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libxtst-dev librdf0-dev xsltproc \&lt;br /&gt;
libxrender-dev libfontconfig1-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git \&lt;br /&gt;
libpoppler-qt4-dev libspectre-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libqt4-webkit-dev shared-desktop-ontologies&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
== Build prerequisites ==&lt;br /&gt;
In Kubuntu and Debian (Testing/Unstable) the build prerequisites are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Optional packages for API documentation generation:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install doxygen graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:19:55Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* 4.6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4.6 ==&lt;br /&gt;
No extra packages for trunk at this time&lt;br /&gt;
&lt;br /&gt;
== 4.5 ==&lt;br /&gt;
&lt;br /&gt;
=== kdenetworks ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
=== kdegraphics ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install liblcms1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4.4 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== More Trunk and unsorted ==&lt;br /&gt;
****I moved  libstreamanalyzer-dev libstrigiqtdbusclient-dev to the section below since that pulls in qt4.&lt;br /&gt;
&lt;br /&gt;
This installs build prerequisites such as build essential, almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&lt;br /&gt;
To install all the optional packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake  \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen graphviz libqt4-dev \&lt;br /&gt;
dbus-x11 libdbus-1-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libclucene0ldbl libclucene-dev libjpeg62-dev libkrb5-dev libsm-dev \&lt;br /&gt;
libssl-dev libbz2-dev libical-dev libxml2-utils libopenexr-dev \&lt;br /&gt;
libjasper-dev libenchant-dev libavahi-common-dev libaspell-dev \&lt;br /&gt;
libasound2-dev libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev \&lt;br /&gt;
libldap2-dev libsasl2-dev libxine-dev libqimageblitz-dev libsmbclient-dev \&lt;br /&gt;
libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev \&lt;br /&gt;
network-manager-dev libsmbclient-dev libsensors-dev \&lt;br /&gt;
libpam0g-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev \&lt;br /&gt;
libeigen2-dev libopenbabel-dev libfacile-ocaml-dev libboost-python-dev \&lt;br /&gt;
libsvn-dev libsvncpp-dev libqt4-dev libqca2-dev \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libxtst-dev librdf0-dev xsltproc \&lt;br /&gt;
libxrender-dev libfontconfig1-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git \&lt;br /&gt;
libpoppler-qt4-dev libspectre-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libqt4-webkit-dev shared-desktop-ontologies&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
== Build prerequisites ==&lt;br /&gt;
In Kubuntu and Debian (Testing/Unstable) the build prerequisites are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Optional packages for API documentation generation:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install doxygen graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:17:38Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 requirements on any recent Kubuntu or Debian.&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
To build a basic functioning desktop, the recommended packages are installed with the commands on this page.&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4.6 ==&lt;br /&gt;
Trunk at this time&lt;br /&gt;
&lt;br /&gt;
== 4.5 ==&lt;br /&gt;
&lt;br /&gt;
=== kdenetworks ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
=== kdegraphics ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install liblcms1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4.4 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== More Trunk and unsorted ==&lt;br /&gt;
****I moved  libstreamanalyzer-dev libstrigiqtdbusclient-dev to the section below since that pulls in qt4.&lt;br /&gt;
&lt;br /&gt;
This installs build prerequisites such as build essential, almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&lt;br /&gt;
To install all the optional packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake  \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen graphviz libqt4-dev \&lt;br /&gt;
dbus-x11 libdbus-1-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libclucene0ldbl libclucene-dev libjpeg62-dev libkrb5-dev libsm-dev \&lt;br /&gt;
libssl-dev libbz2-dev libical-dev libxml2-utils libopenexr-dev \&lt;br /&gt;
libjasper-dev libenchant-dev libavahi-common-dev libaspell-dev \&lt;br /&gt;
libasound2-dev libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev \&lt;br /&gt;
libldap2-dev libsasl2-dev libxine-dev libqimageblitz-dev libsmbclient-dev \&lt;br /&gt;
libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev \&lt;br /&gt;
network-manager-dev libsmbclient-dev libsensors-dev \&lt;br /&gt;
libpam0g-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev \&lt;br /&gt;
libeigen2-dev libopenbabel-dev libfacile-ocaml-dev libboost-python-dev \&lt;br /&gt;
libsvn-dev libsvncpp-dev libqt4-dev libqca2-dev \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libxtst-dev librdf0-dev xsltproc \&lt;br /&gt;
libxrender-dev libfontconfig1-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git \&lt;br /&gt;
libpoppler-qt4-dev libspectre-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libqt4-webkit-dev shared-desktop-ontologies&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
== Build prerequisites ==&lt;br /&gt;
In Kubuntu and Debian (Testing/Unstable) the build prerequisites are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Optional packages for API documentation generation:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install doxygen graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Distributions/Debian</id>
		<title>Getting Started/Build/Distributions/Debian</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Distributions/Debian"/>
				<updated>2010-08-30T17:14:25Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* 4.5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Kubuntu and Debian}}&lt;br /&gt;
This page details installation of kde4 Trunk requirements on any recent Kubuntu or Debian. See [[/4.4]] [[/4.5]]&lt;br /&gt;
&lt;br /&gt;
'''If Kubuntu doesn't have QT4.6 yet, you can get it adding this repository ppa:mapopa/qt4.6 istead compile kde-qt'''&lt;br /&gt;
&lt;br /&gt;
For a basic functioning desktop, the recommended packages are installed with the command:&lt;br /&gt;
== KDE 4.x ==&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen dbus-x11 \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libical-dev libgif-dev libssl-dev \&lt;br /&gt;
libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev libxine-dev \&lt;br /&gt;
libqimageblitz-dev libbz2-dev libdbus-1-dev libpam0g-dev libpcre3-dev \&lt;br /&gt;
libkrb5-dev libsm-dev libclucene0ldbl libclucene-dev libjpeg62-dev \&lt;br /&gt;
libxtst-dev xsltproc libxrender-dev libfontconfig1-dev automoc librdf0-dev \&lt;br /&gt;
libdbusmenu-qt-dev docbook-xsl docbook-xml libattica-dev libqt4-webkit-dev \&lt;br /&gt;
shared-desktop-ontologies libphonon-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4.6 ==&lt;br /&gt;
Trunk at this time&lt;br /&gt;
&lt;br /&gt;
== 4.5 ==&lt;br /&gt;
&lt;br /&gt;
=== kdenetworks ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libv4l-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
=== kdegraphics ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install liblcms1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4.4 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== More Trunk and unsorted ==&lt;br /&gt;
****I moved  libstreamanalyzer-dev libstrigiqtdbusclient-dev to the section below since that pulls in qt4.&lt;br /&gt;
&lt;br /&gt;
This installs build prerequisites such as build essential, almost all compilation requirements for kde4 (with the exception of qt4) and some recommended packages such as libssl-dev for https support. Further recommended and optional packages are listed below.&lt;br /&gt;
&lt;br /&gt;
To install all the optional packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential kde-devel xorg-dev cdbs debhelper cmake  \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr doxygen graphviz libqt4-dev \&lt;br /&gt;
dbus-x11 libdbus-1-dev libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libclucene0ldbl libclucene-dev libjpeg62-dev libkrb5-dev libsm-dev \&lt;br /&gt;
libssl-dev libbz2-dev libical-dev libxml2-utils libopenexr-dev \&lt;br /&gt;
libjasper-dev libenchant-dev libavahi-common-dev libaspell-dev \&lt;br /&gt;
libasound2-dev libboost-dev libboost-program-options-dev libboost-graph-dev libgpgme11-dev \&lt;br /&gt;
libldap2-dev libsasl2-dev libxine-dev libqimageblitz-dev libsmbclient-dev \&lt;br /&gt;
libxkbfile-dev libxcb1-dev libxklavier-dev libxdamage-dev \&lt;br /&gt;
libxcomposite-dev libbluetooth-dev libusb-dev \&lt;br /&gt;
network-manager-dev libsmbclient-dev libsensors-dev \&lt;br /&gt;
libpam0g-dev libnm-util-dev libusb-dev libcfitsio3-dev libnova-dev \&lt;br /&gt;
libeigen2-dev libopenbabel-dev libfacile-ocaml-dev libboost-python-dev \&lt;br /&gt;
libsvn-dev libsvncpp-dev libqt4-dev libqca2-dev \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libcommoncpp2-dev libidn11 libidn11-dev libxtst-dev librdf0-dev xsltproc \&lt;br /&gt;
libxrender-dev libfontconfig1-dev libpci-dev libxss-dev libxft-dev \&lt;br /&gt;
libpolkit-dbus-dev libpolkit-grant-dev libpolkit-dev git \&lt;br /&gt;
libpoppler-qt4-dev libspectre-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libqt4-webkit-dev shared-desktop-ontologies&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, to enable XMMS support for the 'Now Playing' plasma data engine in kdebase, you will need to either compile XMMS from source, or install the package from a [http://www.pvv.ntnu.no/~knuta/xmms/ third-party XMMS package repository].&lt;br /&gt;
&lt;br /&gt;
== Build prerequisites ==&lt;br /&gt;
In Kubuntu and Debian (Testing/Unstable) the build prerequisites are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
kdesdk-scripts subversion ssh xserver-xephyr&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Optional packages for API documentation generation:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install doxygen graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdelibs dependencies ==&lt;br /&gt;
&lt;br /&gt;
Kdelibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqt4-dev dbus-x11 \&lt;br /&gt;
libstreamanalyzer-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxml2-dev libxslt1-dev shared-mime-info libgif-dev libpcre3-dev \&lt;br /&gt;
libjpeg62-dev librdf0-dev libdbusmenu-qt-dev docbook-xsl docbook-xml \&lt;br /&gt;
libjasper-dev libopenexr-dev libacl1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may also need the automoc and libphonon-dev packages when compiling on *buntu:&lt;br /&gt;
&amp;lt;code bash&amp;gt;sudo aptitude install automoc libphonon-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recommended packages ===&lt;br /&gt;
* libssl-dev - Needed for https support etc.&lt;br /&gt;
* libbz2-dev - Needed for bzip support in kio_archive and GHNS packages.&lt;br /&gt;
* libpcre3-dev - regular expression library. Recommended for Javascript support.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libssl-dev libbz2-dev libpcre3-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optional packages ===&lt;br /&gt;
* libasound2-dev - The Alsa sound system&lt;br /&gt;
* libaspell-dev - spell checking support (in kwrite etc)&lt;br /&gt;
* libavahi-common-dev - avahi/zeroconf service discovery&lt;br /&gt;
* libenchant-dev - spell checking wrapper library&lt;br /&gt;
* libjasper-dev - image processing library&lt;br /&gt;
* libopenexr-dev - image processing library&lt;br /&gt;
* libxml2-utils - used to validate generate doc files&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libasound2-dev libaspell-dev \&lt;br /&gt;
libavahi-common-dev libenchant-dev libjasper-dev libopenexr-dev \&lt;br /&gt;
libxml2-utils&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs dependencies ==&lt;br /&gt;
kdepimlibs dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libboost-dev libboost-program-options-dev libboost-graph-dev \&lt;br /&gt;
  libgpgme11-dev libsasl2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* libsasl2-dev - Required for imap and sieve kioslaves&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If compiling on *buntu you may need libical-dev:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libical-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
=== kdepimlibs recommended ===&lt;br /&gt;
* libldap2-dev - For ldap support in kde4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdebase dependencies ==&lt;br /&gt;
kdebase-runtime dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxine-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|Note that libxine1-dev depends on gnome packages due to a kubuntu gutsy packaging bug (fixed in hardy). Also kubuntu packages xinelib version 1.1.8, which has trouble playing short sounds (fixed in xinelib 1.1.9).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
kdebase-apps dependencies can be installed with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libqimageblitz-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-apps optional ===&lt;br /&gt;
* libxcb1-dev - X C binding - Used for video widget support in xine&lt;br /&gt;
* libxkbfile-dev - keyboard configuration package&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libsmbclient-dev libxkbfile-dev libxcb1-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== kdebase-workspace optional ===&lt;br /&gt;
* libsmbclient-dev - for samba support in kde4&lt;br /&gt;
* network-manager-dev - Can be used by solid for network management&lt;br /&gt;
* libusb-dev - for usb support in solid&lt;br /&gt;
* libbluetooth-dev - for bluetooth support in solid&lt;br /&gt;
* libxcomposite-dev - for compositing support in kwin&lt;br /&gt;
* libxdamage-dev - for compositing support in kwin&lt;br /&gt;
* libxklavier-dev - virtual keyboard&lt;br /&gt;
* libsensors-dev - Support for hardware sensors (eg, temperature, fans)&lt;br /&gt;
* libpam0g-dev - Authentication module&lt;br /&gt;
* libnm-util-dev  - needed to build solid with network manager&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libxklavier-dev libxdamage-dev libxcomposite-dev \&lt;br /&gt;
libbluetooth-dev libusb-dev libcaptury-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libsensors-dev libpam0g-dev libnm-util-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kdegraphics ==&lt;br /&gt;
* libpoppler-qt4-dev - PDF support in Okular&lt;br /&gt;
* libspectre-dev - postscript support in Okular&lt;br /&gt;
* liblcms1-dev&lt;br /&gt;
* libexiv2-dev - to build Gwenview&lt;br /&gt;
&lt;br /&gt;
== kdeedu ==&lt;br /&gt;
The following packages are recommended if you intend to use kstars:&lt;br /&gt;
&lt;br /&gt;
* libfacile-ocaml-dev - used by kalzuim.&lt;br /&gt;
* libboost-python-dev - optional for kig.&lt;br /&gt;
* libreadline-dev - Gives kalgebra a console interface.&lt;br /&gt;
* libopenbabel-dev - used by kalzium.&lt;br /&gt;
* libeigen2-dev - used by kalzium.&lt;br /&gt;
* libusb-dev - Provides KStars INDI support.&lt;br /&gt;
* libcfitsio3-dev - Gives KStars support for FITS images.&lt;br /&gt;
* libnova-dev - A general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library for KStars.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install libusb-dev libcfitsio3-dev libnova-dev libeigen2-dev \&lt;br /&gt;
libopenbabel-dev libfacile-ocaml-dev libboost-python-dev &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== koffice ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdepim ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support.&lt;br /&gt;
&lt;br /&gt;
== kdenetwork ==&lt;br /&gt;
* libqca2-dev - qt cryptographic support. Used for jabber protocol.&lt;br /&gt;
&lt;br /&gt;
== kdevplatform ==&lt;br /&gt;
* libsvn-dev&lt;br /&gt;
* libboost-serialization-dev&lt;br /&gt;
&lt;br /&gt;
== kdevelop ==&lt;br /&gt;
* kdevplatform-dev&lt;br /&gt;
* kdebase-workspace-dev&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Getting_Started/Build/KDE4#kdelibs|building KDE 4]].&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2010-08-30T17:10:19Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required packages from your distribution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 (Development version, TRUNK) From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Set up KDE 4 for development]]|&lt;br /&gt;
&lt;br /&gt;
reading=[[../kdesrc-build|kdesrc-build: The KDE From Source Build Tool]]&amp;lt;br&amp;gt;[[Contribute/Send Patches|Sending Patches]]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]&amp;lt;br&amp;gt;[[../KDE4/Windows|Instructions for MS Windows]]|&lt;br /&gt;
}}&lt;br /&gt;
{| class=&amp;quot;collapsible collapsed&amp;quot; style=&amp;quot;border: 1px #aaa solid; background: #efefef;&amp;quot;&lt;br /&gt;
! style=&amp;quot;font-size: 1.25em; &amp;quot;| Table of contents&lt;br /&gt;
|-&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
{{warning|The commands below are used to build the latest UNSTABLE version of KDE from TRUNK. &lt;br /&gt;
&lt;br /&gt;
This should not be used in a production environment -- not recommended for daily use.&lt;br /&gt;
&lt;br /&gt;
To build a stable KDE-4 version, go to:&lt;br /&gt;
&lt;br /&gt;
::[[Getting_Started/Build/KDE4.x|upgrading to KDE-4.x from KDE-3.x]]&lt;br /&gt;
&lt;br /&gt;
Or&lt;br /&gt;
&lt;br /&gt;
::[[Getting_Started/Build/KDE4.4 Upgrade|Upgrade KDE-4.4.x release version or KDE-4.4 SVN BRANCH)]]&lt;br /&gt;
&lt;br /&gt;
which is currently under construction.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows a labor intensive way to get KDE from trunk running on Linux/BSD systems.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
kdesrc-build http://kdesrc-build.kde.org/ is an easy alternative. (Previously called kdesvn-build)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
There are also tutorials for [[Getting_Started/Build/KDE4/FreeBSD|FreeBSD]], [[/Windows|Windows]], [[/Mac OS X|Mac OS X]] and [http://solaris.kde.org/ Solaris]. This tutorial creates a special user, kde-devel, that will run KDE trunk. On the one hand, this allows other users to continue with another KDE version. On the other hand, testing special system-wide code like the KDE display manager is not possible. There is a tutorial to&lt;br /&gt;
[[Getting_Started/Build/KDE4/onVmWare|set up KDE 4 trunk on a virtual machine]].&lt;br /&gt;
&lt;br /&gt;
Throughout the tutorial the bash shell is used.&lt;br /&gt;
&lt;br /&gt;
{{warning|Expect a higher risk of build failure '''on Mondays''' when most kdelibs changes are committed. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.}}&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
It is important to keep the development version from interfering with the rest of your computer, The method covered here is creating a dedicated kde-devel user.&lt;br /&gt;
&lt;br /&gt;
We will need to:&lt;br /&gt;
 #Add the user&lt;br /&gt;
 #Set the shell to bash&lt;br /&gt;
 #and may have to use sudoedit if we want to be able to sudo&lt;br /&gt;
 #Create a .bashrc file with environment variables for the build system&lt;br /&gt;
&lt;br /&gt;
A graphical tool is avalable from most distributions, if you have KDE you can get to this tool via: K-&amp;gt;Computer-&amp;gt;System Settings-&amp;gt;User Management&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
Less Safe Alternative:&lt;br /&gt;
One can do everything under your normal user account&lt;br /&gt;
&lt;br /&gt;
See [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&lt;br /&gt;
for more details. &lt;br /&gt;
&lt;br /&gt;
The environment variables determinate what version you use. Proceed same as here except put the environment variables in a file. In your &amp;lt;tt&amp;gt;.bashrc&amp;lt;/tt&amp;gt; file add the line &amp;lt;tt&amp;gt;source .kde_devel_env&amp;lt;/tt&amp;gt;. renaming the .kde_devel_env file would make them not be loaded, so you wouldn't use the devel version.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Commandline useradd===&lt;br /&gt;
Some systems are configured to use {{path|/bin/sh}}. Many users prefer Bash{{path|/bin/bash}} &lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
On Ark Linux and Fedora, you can skip the &amp;lt;tt&amp;gt;-s /bin/bash&amp;lt;/tt&amp;gt; switch - {{path|/bin/sh}} is {{path|bash}}.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo useradd -m kde-devel -s /bin/bash&lt;br /&gt;
sudo passwd kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== commandline permissions and groups ====&lt;br /&gt;
Edit your /etc/groups file to add the kde-devel user to all the groups that you need (probably the groups that your usual username is already assigned to).&lt;br /&gt;
&lt;br /&gt;
You may need to add user to sudoers file. (beyond scope of this tutorial)&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. &lt;br /&gt;
&lt;br /&gt;
Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;[[Getting Started/Build/KDE4/Prerequisites#Abstract|makeobj]]&amp;lt;/tt&amp;gt; command available. (What is this, how do we know???)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can download the kde-sdk a.k.a kdesdk package (or perform a subversion checkout) and include the kde-sdk/scripts/ directory in your path. (What is this???)&lt;br /&gt;
&lt;br /&gt;
You will probably also want to modify the path to make sure it doesn't include your kde3 paths.&lt;br /&gt;
&lt;br /&gt;
 Also if you want to use KDevelop to develop KDE 4 applications you may pass the ''-GKDevelop3'' flag to the ''cmake'' command (to make CMake generate KDevelop project files, it will help to avoid rebuilding in the future, see [[Getting_Started/Set_up_KDE_4_for_development#Setting_up_the_environment|this]]).  &lt;br /&gt;
To make it run, you have to open a new bash or to execute &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
source ~/.bashrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Using the kde-devel User ===&lt;br /&gt;
To get a text-only command prompt, say from konsole&lt;br /&gt;
 su - kde-devel&lt;br /&gt;
'(need hyphen otherwise your environment will be the same as your regular user)&lt;br /&gt;
&lt;br /&gt;
To Log in Text-only from a virtual terminal:&lt;br /&gt;
 CTRL-F1  ( CTRL-F7 is normally graphical )&lt;br /&gt;
&lt;br /&gt;
To use a shell that can pop up applications when your normal user is logged in:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
ssh -X kde-devel@localhost&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
If the ssh command fails, check out the [[Getting_Started/Set_up_KDE_4_for_development#Launching_KDE_4_apps|Launching KDE 4 apps]] section of the [[Getting_Started/Set_up_KDE_4_for_development|KDE4 development guide]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Required packages from your distribution ==&lt;br /&gt;
The requirements to build kde4 from source vary from distribution to distribution. Instructions for your distribution are provided below:&lt;br /&gt;
See [[build requirements]] for more complete list.&lt;br /&gt;
&lt;br /&gt;
[[Getting_Started/Build/KDE4/Ark Linux|Ark Linux]],&lt;br /&gt;
[[Getting_Started/Build/KDE4/Arch Linux|Arch Linux]], [[Getting_Started/Build/KDE4/Fedora|Fedora]],&lt;br /&gt;
[[Getting_Started/Build/KDE4/Kubuntu and Debian|Kubuntu and Debian]] (or check out [[Getting_Started/Using_Project_Neon_to_contribute_to_KDE|Project Neon]]), [[Getting_Started/Build/KDE4/openSUSE|openSUSE]] ([http://en.opensuse.org/openSUSE:KDE_developers_guide specific guide for openSUSE]. However be careful because it updates a huge number of your stable packages.),&lt;br /&gt;
[[Getting_Started/Build/KDE4/Gentoo|Gentoo]],&lt;br /&gt;
[[Getting_Started/Build/KDE4/LFS|Linux from Scratch]] or to build from source.&lt;br /&gt;
[[Getting_Started/Build/KDE4/Mandriva|Mandriva]]&lt;br /&gt;
[[Getting_Started/Build/KDE4/Generic|any other distro]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Optional Documentation Dependencies ===&lt;br /&gt;
For trunk you also now need docbook-dtd42-xml for the docs. Depending on your distribution please get the docbook related packages and the 4.2 DTD.&lt;br /&gt;
&lt;br /&gt;
Your next compilation step depends on the packages supplied by your distro.&lt;br /&gt;
&lt;br /&gt;
== Compiling kde-qt, etc. ==&lt;br /&gt;
If you do not want to use the packages provided by your distro you can compile things like Qt yourself. Instructions for building all dependencies including CMake, Qt4 (kde-qt) and kdesupport are available in [[Getting_Started/Build/KDE4/Prerequisites|the build prerequisites page]].  Note that automoc, strigi, soprano, and a few other things are part of kdesupport, so if you have errors about these missing, you'll need to get kdesupport.&lt;br /&gt;
&lt;br /&gt;
=== Useful subversion tweaks ===&lt;br /&gt;
&lt;br /&gt;
{{Warning|Do not use this method when you don't know what you are doing or just want to test some trunk feature, seriously! &lt;br /&gt;
You can create a very costly load when you accidentially checkout all of trunk or for example all of &amp;quot;trunk/KDE&amp;quot; just to build single modules. This would generate immense useless load on the svn server.}}&lt;br /&gt;
&lt;br /&gt;
If you check out large parts of svn trunk regularly or if you want to create patches which touch several modules at once, you should try to checkout an empty tree of trunk first and then update only the relevant modules, for example:&lt;br /&gt;
&lt;br /&gt;
==== Example ====&lt;br /&gt;
 cd&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout --depth empty svn://anonsvn.kde.org/home/kde/trunk&lt;br /&gt;
 cd trunk&lt;br /&gt;
 svn up kdesupport &amp;amp;&amp;amp; cd kdesupport&lt;br /&gt;
 cmakekde&lt;br /&gt;
 cs trunk&lt;br /&gt;
 svn up --depth empty KDE&lt;br /&gt;
 svn up KDE/kdelibs &amp;amp;&amp;amp; cd KDE/kdelibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
 cs trunk&lt;br /&gt;
 svn up KDE/kdepimlibs&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
==== Why do I want to do that? ====&lt;br /&gt;
That way you can move stuff around all over the trunk repository, e.g. from playground to kdereview or to KDE/*. The following examples assume that you only want to test or work on single and few modules of trunk. &lt;br /&gt;
&lt;br /&gt;
This way updating the whole repository to a (hopefully) consitent state, the same revision, is really easy:&lt;br /&gt;
&lt;br /&gt;
 cs trunk # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn up&lt;br /&gt;
&lt;br /&gt;
== Download and Compile ==&lt;br /&gt;
In this section we go over acquiring and building the product.&lt;br /&gt;
{{Note|&lt;br /&gt;
check out http://kdesvn-build.kde.org/  you may not need to do all of this stuff.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
Please note, that requirements and dependancies frequently change.&lt;br /&gt;
You are running an UNSTABLE version, and simply compiling is not guaranteed. You will need to review errors and locate packages, (see acquire dependencies above) and [[Getting_Started/Build/KDE4/Troubleshooting|Troubleshooting]] information.&lt;br /&gt;
&lt;br /&gt;
We can now move on to building KDE's most essential libraries.&lt;br /&gt;
&lt;br /&gt;
=== kdelibs ===&lt;br /&gt;
Very important for lots of things, you may need to see troubleshooting and install some things from kdesupport first.&lt;br /&gt;
&lt;br /&gt;
==== The Recipe ====&lt;br /&gt;
 cd   &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 cd kdelibs&lt;br /&gt;
 mkdir build&lt;br /&gt;
 cd build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
==== What's Happening ====&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 3). We download the sources for kdelibs using subversion (line 4), go into the new {{path|~/kde/src/KDE/kdelibs}} directory (line 5), and commence the build (line 6). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake $KDE_SRC/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
==== Additional KDE-specific CMake know-how ====&lt;br /&gt;
&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
To make a non-debug-release (e.g. suppressing all kDebug() messages), use e.g.&lt;br /&gt;
 cmake -DCMAKE_BUILD_TYPE=Release . &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
&lt;br /&gt;
For troubleshooting information, see the [[Getting_Started/Build/KDE4/Troubleshooting#Issues_building_kdelibs|kdelibs troubleshooting section]].&lt;br /&gt;
&lt;br /&gt;
=== kdepimlibs ===&lt;br /&gt;
Currently kdebase depends on kdepimlibs so it is required to install it first. These libraries are also shared by other packages such as those within kdepim, kdeutils and kdenetwork.&lt;br /&gt;
&lt;br /&gt;
==== libical ====&lt;br /&gt;
Download libical from http://sourceforge.net/project/showfiles.php?group_id=16077, compile, link and install it.&lt;br /&gt;
 tar xvzf libical-0.41.tar.gz&lt;br /&gt;
 cd libical-0.41&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
==== The Recipe ====&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
 cd kdepimlibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
==== What's Happening ====&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/kde/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
&lt;br /&gt;
For troubleshooting information, see the [[Getting_Started/Build/KDE4/Troubleshooting#Issues_building_kdepimlibs|kdepimlibs troubleshooting section]].&lt;br /&gt;
&lt;br /&gt;
=== kdebase ===&lt;br /&gt;
kdebase is divided into three parts:&lt;br /&gt;
* '''apps'''&lt;br /&gt;
:This contains applications like Dolphin or KWrite.&lt;br /&gt;
* '''runtime'''&lt;br /&gt;
:This contains things needed by every application at runtime, like icons. It is a required dependency for each KDE application, so you have to compile and install this.&lt;br /&gt;
* '''workspace'''&lt;br /&gt;
:This contains things specific to the KDE desktop, like Plasma or the window manager. Most stuff here depends on X11. You only need it if you want to build a full KDE desktop.&lt;br /&gt;
&lt;br /&gt;
You can build all of kdebase at once, which is described in the recipe below. If you only want to build kdebase-runtime, which is the only requirement, you can replace &amp;lt;code bash&amp;gt;cd kdebase&amp;lt;/code&amp;gt; with &amp;lt;code bash&amp;gt;cd kdebase/runtime&amp;lt;/code&amp;gt; in the recipe below.&lt;br /&gt;
&lt;br /&gt;
==== The Recipe ====&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
 cd kdebase&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
For troubleshooting information, see the [[Getting_Started/Build/KDE4/Troubleshooting#Issues_building_kdebase|kdebase troubleshooting section]].&lt;br /&gt;
&lt;br /&gt;
== Translations ==&lt;br /&gt;
&lt;br /&gt;
Most KDE users are going to install translations before being able to use their desktop properly. Full information is given in the [[Development/Tutorials/Localization/Building_KDE's_l10n_Module|Localisation tutorial]].&lt;br /&gt;
For a single language, the following receipe installs messages and translated documentation:&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4&lt;br /&gt;
 cd l10n-kde4&lt;br /&gt;
 svn up scripts &amp;lt;language&amp;gt;&lt;br /&gt;
 ./scripts/autogen.sh &amp;lt;language&amp;gt;&lt;br /&gt;
 cd &amp;lt;language&amp;gt;&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
== Running KDE 4 programs ==&lt;br /&gt;
&lt;br /&gt;
You can now run KDE 4 programs (e.g. kwrite) by typing:&lt;br /&gt;
 ssh -X kde-devel@localhost&lt;br /&gt;
 kwrite &lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
For troubleshooting issues see [[Getting_Started/Build/KDE4/Troubleshooting#Running_programs|troubleshooting running programs]].&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
&lt;br /&gt;
See the [[Development/Tools/apidox|generating apidox]] page.&lt;br /&gt;
&lt;br /&gt;
== Staying up to date ==&lt;br /&gt;
&lt;br /&gt;
In order to keep the kde4 installation up to date, each of the modules installed should be updated periodically. As Monday is the day for big changes in kdelibs, Tuesday may be the best day to do this. For each module checked out, run &amp;lt;tt&amp;gt;svn up&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs kdesupport # cs is not a typo&lt;br /&gt;
svn up&lt;br /&gt;
cb # cb is not a typo&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: it is not necessary to run cmakekde for updates.&lt;br /&gt;
&lt;br /&gt;
== Installing a subset of a module ==&lt;br /&gt;
&lt;br /&gt;
Many modules in KDE contain a large number of programs which could take a long time to download and compile. In cases where you want to work only on a particular program or programs in a module, it is possible to download and compile particular folders. In some cases, certain folders are required for any build of the module. This is determined in the CMakeLists.txt file of the module. For example the [http://websvn.kde.org/branches/KDE/4.0/kdegames/CMakeLists.txt?view=markup kdegames CMakeLists.txt file] lists:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
add_subdirectory(libkdegames)&lt;br /&gt;
add_subdirectory(libkmahjongg)&lt;br /&gt;
&lt;br /&gt;
macro_optional_add_subdirectory(doc)&lt;br /&gt;
macro_optional_add_subdirectory(lskat)&lt;br /&gt;
macro_optional_add_subdirectory(katomic)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, the libkdegames and libkmahjongg directories are required to build any of kdegames. The cmake directory will also usually be required. All the other directories (doc, katomic etc) are optional. They will be built if present on your machine. In this example, we build kmahjongg and kbattleship:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn co -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames # The -N switch performs a non-recursive checkout&lt;br /&gt;
cd kdegames&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/libkdegames # Get required directories&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/libkmahjongg&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/cmake&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/kbattleship # Get optional directories&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/kmahjongg&lt;br /&gt;
cmakekde &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
For further isolation of your development environment change symbolic links, which you will see after executing ls -lh $(kde4-config --localprefix), assuming newly installed kde4-config is called.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development|Set up KDE 4 for development]] tutorial for how to start KDE 4 applications and how to use KDevelop to work on them.&lt;br /&gt;
&lt;br /&gt;
For most of what you need to know on patches see: [[Contribute/Send Patches|Sending Patches]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;br /&gt;
{{Build KDE}}{{Getting Started}}&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:09:27Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Prerequisites */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required_packages_from_your_distribution|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
In addition to those listed requirements, kdesrc-build requires the Perl scripting platform to be installed.  It is installed by default with most distributions, and is required to build KDE SC anyways.  kdesrc-build requires Perl 5.8 or higher.&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:06:53Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Setting up */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use [http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required Software|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
In addition to those listed requirements, kdesrc-build requires the Perl scripting platform to be installed.  It is installed by default with most distributions, and is required to build KDE SC anyways.  kdesrc-build requires Perl 5.8 or higher.&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:05:52Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Introduction to kdesvn-build */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use&lt;br /&gt;
[http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required Software|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
In addition to those listed requirements, kdesrc-build requires the Perl scripting platform to be installed.  It is installed by default with most distributions, and is required to build KDE SC anyways.  kdesrc-build requires Perl 5.8 or higher.&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:04:27Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Introduction to kdesvn-build */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies. Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use&lt;br /&gt;
[http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required Software|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
In addition to those listed requirements, kdesrc-build requires the Perl scripting platform to be installed.  It is installed by default with most distributions, and is required to build KDE SC anyways.  kdesrc-build requires Perl 5.8 or higher.&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/kdesrc-build</id>
		<title>Getting Started/Build/kdesrc-build</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/kdesrc-build"/>
				<updated>2010-08-30T17:03:13Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Introduction to kdesvn-build */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/kdesrc-build}}&lt;br /&gt;
== Building KDE using the kdesrc-build tool ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction to kdesvn-build ===&lt;br /&gt;
&lt;br /&gt;
[http://kdesrc-build.kde.org/ kdesrc-build] (formerly kdesvn-build) is a tool to allow users and developers to easily download and build the latest versions of the KDE Software Compilation (KDE SC) from the KDE source code repositories.  It automates the following tasks and more:&lt;br /&gt;
&lt;br /&gt;
Many errors that occur using other methods occur here too, you read the log files that are stored for you.&lt;br /&gt;
&lt;br /&gt;
* Performing the initial checkout.&lt;br /&gt;
* Handling updates for modules that are already checked out.&lt;br /&gt;
* Setting up the build system for the module.&lt;br /&gt;
* Performing the build and install.&lt;br /&gt;
* Specifying your CMake options or configure flags (so you don't have to remember them every time).&lt;br /&gt;
* Logging build errors so you can review them easier for troubleshooting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is not the end-all for your troubles building KDE, [[troubleshooting]] still applies&lt;br /&gt;
&lt;br /&gt;
=== Why use kdesrc-build? ===&lt;br /&gt;
&lt;br /&gt;
So why use kdesrc-build?  There are several reasons you may like to use it:&lt;br /&gt;
&lt;br /&gt;
# Less manual editing of commands.  Instead of having to remember to add the correct options to the cmake command line or configure command, you can setup the options once and then kdesrc-build will use your settings from then on, saving you from wasting time because you forgot to enable a setting.&lt;br /&gt;
# Command logging to help debug build failures.  kdesrc-build logs all command outputs to a file.  This has several advantages:&lt;br /&gt;
## When a module fails to build, you already have the error output saved to disk, ready to be viewed and compared with other error messages to aid debugging.&lt;br /&gt;
## Quieter output.  Even with CMake, the output of Qt or a KDE SC module build can be extensive.  kdesrc-build does not show the details of a module build (but will show the progress), instead an overview of the build process is displayed.&lt;br /&gt;
# It's just easier.  Instead of having to learn how to use the Subversion and git tools, and how to setup a KDE build system, you can specify what modules you want build, where to install them to, and any other options you want and then have kdesrc-build actually do it, even while you're away from the computer or busy doing other things.&lt;br /&gt;
# It's easy to step in yourself.  kdesrc-build uses a standard source and build directory layout, and calls the same commands you would.  So kdesrc-build will not interfere with you performing the build or editing the source yourself if you so choose.&lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
==== Useful Links ====&lt;br /&gt;
When using kdesrc-build you may find it beneficial to have a way of searching the source repository so that you know what modules to look for.&lt;br /&gt;
&lt;br /&gt;
* To browse the KDE Subversion repository, use&lt;br /&gt;
[http://websvn.kde.org/trunk/KDE WebSVN].&lt;br /&gt;
* To browse any of the various KDE projects using git, you can go to [http://gitorious.org/ Gitorious].&lt;br /&gt;
* The Nokia Qt toolkit used by KDE can be browsed at [http://gitorious.org/+kde-developers/qt/kde-qt the Gitorious kde-qt homepage].&lt;br /&gt;
&lt;br /&gt;
==== Prerequisites ====&lt;br /&gt;
kdesrc-build is fairly easy to install and setup, but you also need to have the right software installed to build KDE SC.  The requirements to build KDE SC are available as follows:&lt;br /&gt;
&lt;br /&gt;
* KDE SC 4: [[../KDE4#Required Software|KDE 4 Requirements]]&lt;br /&gt;
&lt;br /&gt;
{{note|It is possible to build KDE 3 using older versions of kdesrc-build, but this is not described here.}}&lt;br /&gt;
&lt;br /&gt;
In addition to those listed requirements, kdesrc-build requires the Perl scripting platform to be installed.  It is installed by default with most distributions, and is required to build KDE SC anyways.  kdesrc-build requires Perl 5.8 or higher.&lt;br /&gt;
&lt;br /&gt;
{{note|kdesrc-build is developed on a Linux system, but it should work on the various BSD distributions as well (although GNU tools may be required).}}&lt;br /&gt;
&lt;br /&gt;
==== Download and install kdesrc-build ====&lt;br /&gt;
Once your system is setup to be able to compile the KDE SC, you can download kdesrc-build from its website, [http://kdesrc-build.kde.org/ kdesrc-build.kde.org].  The file you download will contain (at least) the kdesrc-build script and a sample configuration file.  Installing kdesrc-build is as simple as saving the file and making it executable.  If you'd like, you can move it to a directory in your PATH, however for this example we'll put it into the KDE source directory that we use (~/kdesrc)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
tar xjvf ~/path/to/kdesrc-build-1.12.tar.bz2&lt;br /&gt;
cp kdesrc-build-1.12/kdesrc-build .&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alternatively, the newest kdesrc-build script (and sample config file) can be pulled directly from svn:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
mkdir -p ~/kdesrc&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
export SVN_ROOT=svn://anonsvn.kde.org/home/kde&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-build &amp;gt; kdesrc-build&lt;br /&gt;
svn cat $SVN_ROOT/trunk/KDE/kdesdk/scripts/kdesrc-buildrc-sample &amp;gt; ~/.kdesrc-buildrc&lt;br /&gt;
chmod +x kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Setup the configuration ====&lt;br /&gt;
Now you should [[Getting Started/Build/kdesrc-buildrc|setup your configuration]].  For the most part the defaults in the included kdesrc-buildrc-sample should be sufficient.&lt;br /&gt;
&lt;br /&gt;
Older:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesvn/kdesvn-build-1.10/kdesvn-buildrc-sample ~/.kdesvn-buildrc&lt;br /&gt;
# Now edit the ~/.kdesvn-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Newer:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cp ~/kdesrc/kdesrc-build-1.12/kdesrc-buildrc-sample ~/.kdesrc-buildrc&lt;br /&gt;
# Now edit the ~/.kdesrc-buildrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|Note that the config file's name begins with a leading ., making it a hidden file.  You may need to show hidden files in Dolphin or Konqueror to find the configuration file to edit it.  Or, you can edit the sample before copying it to ~/.kdesrc-buildrc.}}&lt;br /&gt;
&lt;br /&gt;
Also, make sure that the modules you'll want to build are included.  You'll want the following at the least:&lt;br /&gt;
&lt;br /&gt;
* qt-copy, kdesupport, kdelibs, kdepimlibs, kdebase&lt;br /&gt;
&lt;br /&gt;
Modules are built in the order they appear in your ~/.kdesrc-buildrc, so the first module should be qt-copy, kdelibs should be before any other KDE SC module, and so on.&lt;br /&gt;
&lt;br /&gt;
{{note|The sample configuration file does include these modules by default, you won't need to make many changes unless you'd like to add some modules to the build by uncommenting them.}}&lt;br /&gt;
&lt;br /&gt;
You may want to enable the make-install-prefix option if you are installing KDE SC or Qt to a directory that is not in your home directory.  make-install-prefix allows you to run su or sudo during the make install process so you can install files as root, or set certain programs to execute with higher permissions (This is required for certain programs to execute properly).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module kdelibs&lt;br /&gt;
  make-install-prefix sudo -S # sudo with no stdin&lt;br /&gt;
end module&lt;br /&gt;
&lt;br /&gt;
module kdebase&lt;br /&gt;
  make-install-prefix sudo -S&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If a module you'd like to build isn't already present, simply add&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module &amp;amp;lt;module-name&amp;amp;gt;&lt;br /&gt;
end module&amp;lt;/pre&amp;gt; at the end of the ~/.kdesrc-buildrc. &amp;amp;lt;module-name&amp;amp;gt; would be whatever the module is called in the software repository (for instance, kdemultimedia).&lt;br /&gt;
&lt;br /&gt;
===== Git-based modules =====&lt;br /&gt;
&lt;br /&gt;
Some KDE projects use the &amp;quot;git&amp;quot; source-control software instead of Subversion (as part of an eventual planned migration to git). This includes software like Amarok and Konversation.&lt;br /&gt;
&lt;br /&gt;
To build these modules in kdesrc-build, you just need to add a couple of lines to the module configuration. For example, konversation is developed in the git://gitorious.org/konversation/konversation.git repository at [http://gitorious.org/]. So you would just add a module (you can pick whatever name for the module you like, as long as it's not already used):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;module konversation&lt;br /&gt;
    repository git://gitorious.org/konversation/konversation.git&lt;br /&gt;
    branch master&lt;br /&gt;
end module&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case I selected the &amp;quot;master&amp;quot; branch since that is the default git branch.&lt;br /&gt;
&lt;br /&gt;
Now whenever you build konversation, kdesrc-build will use git instead of Subversion.&lt;br /&gt;
&lt;br /&gt;
==== Useful kdesrc-build commands ====&lt;br /&gt;
kdesrc-build is driven from the command line, so here's a guide to some of the more useful command line options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table cellpadding=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Option&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Effect&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-pretend --pretend]&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt; (Short&amp;amp;nbsp;form&amp;amp;nbsp;&amp;lt;tt&amp;gt;&amp;lt;span style=&amp;quot;white-space:nowrap;&amp;quot;&amp;gt;-p&amp;lt;/span&amp;gt;&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;This option is like a dry run.  kdesrc-build will process the options and its configuration like normal, and run through the build as normal, but instead of downloading or running the build will instead output what kdesrc-build would have done.  You should always run with -p before running kdesrc-build to make sure it is doing what you expect.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-no-svn --no-svn]&amp;lt;/tt&amp;gt; (Alt. form &amp;lt;tt&amp;gt;--no-src&amp;lt;/tt&amp;gt;)&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option skips the source code update step.  This is useful if you're running kdesrc-build again soon after the last update and don't want to wait to find out there were no changes.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;tt&amp;gt;[http://kdesrc-build.kde.org/documentation/cmdline.html#cmdline-refresh-build --refresh-build]&amp;lt;/tt&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;This option causes kdesrc-build to delete the current build information for the given modules and start building them again from scratch.  This option takes a lot of time but gives the best chance of a successful build.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Any other non-option arguments on the command line are assumed to be modules to build (and are built in the order provided on the command line).  If no modules are specified, all of the modules listed in the ~/.kdesrc-buildrc are built in the order listed in the file.&lt;br /&gt;
&lt;br /&gt;
== Build ==&lt;br /&gt;
We're almost there.  If you're happy with your settings then it's time to test out kdesrc-build.  In theory things are as simple as running kdesrc-build and then coming back later. ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may want to test by building qt-copy first however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kdesrc&lt;br /&gt;
./kdesrc-build qt-copy&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If you have the [http://www.gnu.org/software/screen/ GNU screen] program available then you should definitely use it to run kdesrc-build, as you can detach your kdesrc-build session and logout while kdesrc-build is still running.}}&lt;br /&gt;
&lt;br /&gt;
If the build failed (kdesrc-build will error out with a nice bright red error message) then there are several possibilities:&lt;br /&gt;
&lt;br /&gt;
# You are missing a key piece of required software (such as a development library)&lt;br /&gt;
# The KDE SC code being compiled is broken in some fashion to where it won't build.  This is commonly due to newly committed code that worked on the developer's machine, or occasionally on Mondays (when incompatible changes are permitted to kdelibs).&lt;br /&gt;
# kdesrc-build is not setup properly.  You may be trying to install to a directory that you have no permissions to access for instance, or you may have specified a system qtdir that does not exist.&lt;br /&gt;
# The module may depend on a newer version of qt-copy or kdelibs (or other module).  In this case you'll have to run kdesrc-build to update the out-of-date module first.&lt;br /&gt;
&lt;br /&gt;
How do you find out what the error was?  The output of the failing command will be in the log directory.  By default, all log output is in the {{path|log}} subdirectory of the KDE SC source directory.  The log directory is laid out like this: {{path|log/date-run/module/output-file.log}}.  To simplify finding the appropriate file, there are a couple of symlinks created:&lt;br /&gt;
&lt;br /&gt;
{{path|log/latest}} always has the debugging output for the last time kdesrc-build was run (--pretend doesn't count toward this)&lt;br /&gt;
{{path|log/latest/&amp;amp;lt;module&amp;amp;gt;/error.log}} has the debugging output for the command that caused a module build to fail.&lt;br /&gt;
&lt;br /&gt;
For instance if qt-copy just failed to build you could read the output like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~/kderc&lt;br /&gt;
kwrite log/latest/qt-copy/error.log&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace kwrite with your preferred editor.  Hopefully the output can guide you to resolving the problem.  For instance, if the failure is a cmake output saying you're missing a library, install that library and try again. ;)  For link errors you can try running a --refresh-build on the module (or if that doesn't work, required libraries like qt-copy and kdelibs).&lt;br /&gt;
&lt;br /&gt;
If you're stumped by the error you may want to wait a day and try updating again, and hope that the reason for the error has been fixed.  You can also try mailing the [http://www.kde.org/mailinglists/ kde-devel] mailing list to see if others know about the problem or have had similar issues.&lt;br /&gt;
&lt;br /&gt;
== Running KDE ==&lt;br /&gt;
&lt;br /&gt;
Assuming you got enough of the modules to build and install to have a working KDE installation, you'll still need to setup your environment correctly to run it.  kdesrc-build doesn't help you out here (yet), but the instructions at [[../../Increased_Productivity_in_KDE4_with_Scripts/.bashrc|the .bashrc wiki page]] apply just as well, except that you'll need to set the environment variables to the settings that are in your ~/.kdesrc-buildrc.&lt;br /&gt;
&lt;br /&gt;
For the KDEDIRS and KDEDIR variable use the setting of the &amp;quot;prefix&amp;quot; option (in the global section).&lt;br /&gt;
For the QTDIR variable use the setting of the &amp;quot;qtdir&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
{{tip|When copying settings over to the .bashrc, change any ~'s in the paths to $HOME, as the ~ character is not expanded correctly in the .bashrc.}}&lt;br /&gt;
&lt;br /&gt;
Once your .bashrc is setup logout and log back in again and then you should be able to run your new KDE installation.&lt;br /&gt;
&lt;br /&gt;
== Keeping KDE up to date ==&lt;br /&gt;
&lt;br /&gt;
Keeping your KDE installation up to date is as simple as running kdesrc-build again.  Every kdesrc-build has these phases:&lt;br /&gt;
&lt;br /&gt;
# Update the source code for all modules being built.&lt;br /&gt;
# Build and then install all the modules.&lt;br /&gt;
&lt;br /&gt;
Old build directories are not deleted by default, so the build after a small update will not normally take as long as the initial build of a module.  This is called &amp;quot;incremental make&amp;quot;.  However it may be necessary at times to perform a full rebuild due to inconsistencies between the build directory configuation and changes to the source directory.  You can use the --refresh-build option to force a full rebuild.&lt;br /&gt;
&lt;br /&gt;
For more information on how to take advantage of kdesrc-build, see the [http://kdesrc-build.kde.org/documentation online documentation] for kdesrc-build, which describes all of the module options and command line options available for kdesrc-build and gives tips on how to perform various useful tasks.&lt;br /&gt;
&lt;br /&gt;
If you have any questions that are not answered please feel free to add them under the Discussion entry for this page and hopefully someone will be able to get the answer.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build_KDE]]&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Contribute/Bugsquad/Howto</id>
		<title>Contribute/Bugsquad/Howto</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Contribute/Bugsquad/Howto"/>
				<updated>2010-08-24T23:15:21Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: initial checkin&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The main communication tool between developers and users, and the main quality tool is the KDE bugs and wishes database. The database is implemented using the [http://www.bugzilla.org/about.html Bugzilla] tool for tracking bugs and wishes, developed initially for the Mozilla web browser. [http://bugs.kde.org/] is the  the web front end implementation of KDE's Bugzilla, and the main place to go when managing bugs, but there are other front ends: the KBugBuster, from the kdesdk module and the e-mail interface, used to add comments, change bugs status, etc...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Many bug reports are filed daily, especially after releases. There are too many to be handled by the developers, so the amount of open reports increases over time. Additionally old bug reports have to be revisited regularly to see if they still apply to the current version. Reviewing the bugs database also give you insight about the most needed features and most pernicious bugs, allowing you to point them, and the developers to actually fix bugs or spend time to add new features to KDE, instead of managing bugs.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Always direct users to the KDE bug tracker system to discuss bugs and wishes, because this way issues will not be forgotten. If the point is a bit more polemic, it is sensible to start a discussion in the [http://www.kde.org/mailinglists/ application mailing list] or in [http://mail.kde.org/mailman/listinfo/kde-usability KDE usability mailing list], but instruct them to start by [http://bugs.kde.org/wizard.cgi filing the bug], because by [http://bugs.kde.org/quicksearch.html searching for similar bugs or wishes] they may find answers or insight.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Before Starting&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;To start, [http://bugs.kde.org/createaccount.cgi open an account on bugs.kde.org] if you don't have one. The database records not only the bugs and wishes status, but also related discussions, screenshots, patches, etc.. turning it to a very complete source of information. Please try the following pages at [http://bugs.kde.org/ bugs.kde.org], to get used to KDE bugzilla capabilities. The KBugBugster is also useful, but less flexible.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://bugs.kde.org/quicksearch.html Simple search form]&lt;br /&gt;
* [http://bugs.kde.org/query.cgi Advanced search form]&lt;br /&gt;
* [http://bugs.kde.org/wizard.cgi New wishes/bugs wizard]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;At the beginning, you will only be able to comment on bug reports which are not your own. Only after acquiring more knowledge on the application and on KDE Bugzilla system, you may ask for rights to confirm bug reports and close non verifiable ones.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;You need a current KDE installation in order to be able to test if a bug is still uptodate. This means you should either test with 'trunk', that is the latest development-version of KDE, or the latest branch of KDE. See http://techbase.kde.org/Getting_Started/Build/KDE4&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Also it is important to have a KDE version compiled with debug information. KDE binaries compiled with debug information are bigger and run slower, but provide invaluable information to the developers when applications crash, as they are able to locate where in the source code it crashed, and sometimes even why. Whenever an application crashes, the KDE crash handler appears. You can now retrieve the backtrace information to add to a bugreport.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Managing Reports&amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The main tool for bug triage is knowledge of your application. You will learn that you don't need to be a developer to have a good understanding of it: reading bug reports and comments about them, writing documentation or working with the application's user interface will do the trick.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;You should always start by stating your opinion in the bug reports and letting the developers take the appropriate action. If you feel you are ready to manage bugs effectively, know well the application and have a bit experience with bugzilla, it is time to ask for permissions. The [mailto:quality@kde.org Quality Team mailinglist], the [https://bugs.kde.org/enter_sysadmin_request.cgi KDE system administrator], or the mailinglist of the application you are working with, are the right places to ask for it. The developers will probably be happy to have someone working with them, and in the end of the day it is your own reputation as a good contributor that is in the line, as developers will still watch what you are doing. Some of the task below require these permissions.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;A good way to start is checking if bugs are still valid:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Believe the reporter: if you cannot reproduce a new bug, first ask for more context information, then think about closing it or asking to close it.&lt;br /&gt;
* The bug may be triggered by a combination of factors, or the bug may be fixed in the main branch, but not in the stable branch (if so, ask in the bug report for a backport. If it is not doable, the developers will say so).&lt;br /&gt;
* Add any additional information you can give, e.g. backtrace, additional observations, how to (better) reproduce the faulty behavior or simply add with which day's version the bug still appears.&lt;br /&gt;
* If you can reproduce an UNCONFIRMED bug, please write that in the bugreport and change its status to NEW.&lt;br /&gt;
* If a program hangs, you can &amp;amp;quot;kill -SIGSEGV Processid&amp;amp;quot; the process to get a backtrace.&lt;br /&gt;
* Check if the report is filed into the correct product and component category too. KDE is a very modular, and massively reuse code, and sometimes is hard even for the developers to detect in which component the bug is, so be careful. If the report is not already assigned to some other developer than the current component owner, &amp;lt;strong&amp;gt;make sure to select the &amp;amp;quot;Reassign bug to owner of selected component&amp;amp;quot; when moving a report&amp;lt;/strong&amp;gt;. If a report is filed into a category where there is no single maintainer/active developer and you know which developer is responsible or works on the code (a look into the source or reading kde-cvs mailing list can help), you may assign a bug report to him/her directly.&lt;br /&gt;
* Check if a report describes an error already described in another closed or open report: Resolve it as DUPLICATE with reference to the prior report.&lt;br /&gt;
* Check if the same report was submitted more than one time. Please close the identical bug (the one with the highest number) as INVALID and not as DUPLICATE because otherwise they show up wrongly in the most frequently reported bugs statistics.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Browser (Konqueror) bugs are usually very easy to check and there are lots of them:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Add &amp;amp;quot;(regression)&amp;amp;quot; to the title if the page was correctly rendered in a previous stable release.&lt;br /&gt;
* It's a good idea to put the site into the title where an error was encountered to ease duplicate spotting.&lt;br /&gt;
* A parallel installation of a Gecko-based browser and Opera can give you an idea how a web page probably should look like.&lt;br /&gt;
* Try to generate a stripped down testcase of a faulty rendered webpage. Add &amp;amp;quot;(testcase)&amp;amp;quot; to the title if a testcase is attached to the bug report.&lt;br /&gt;
* If a webpage doesn't exist any longer or was obviously rewritten and there was no testcase provided, close the report as WONTFIX.&lt;br /&gt;
* If the reporter or a comment mentions that a page works fine in Safari, it can help the developers to note that in the title too.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Check if the severity is appropriate, but if you don't agree, state so in the bugreport. Let the maintainer change the severity, as it is used by them to remind to fix crucial issues.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Check if the title contains a good summary, e.g. feature requests titled &amp;amp;quot;Feature wanted&amp;amp;quot; don't help when glancing over the report list. If a patch is provided add &amp;amp;quot;(patch)&amp;amp;quot; to the title.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Note: Don't use the &amp;amp;quot;Change Several Bugs at Once&amp;amp;quot; feature for moving reports. There is a bug in Bugzilla which confirms every reports which gets moved.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The &amp;lt;strong&amp;gt;KDE Bugsquad&amp;lt;/strong&amp;gt; coordinates bug triage efforts as well as organising regular bug-days where many people work together to clearup all the bugs for a particular program. Bug-days are an excellent oppurtunity for making your first steps in contributing to KDE, and there are always plenty of experienced bug-busters on hand to help you with any difficulties you may have. For more information, see the [http://techbase.kde.org/index.php?title=Contribute/Bugsquad Bugsquad Techbase pages]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This article originally from Carlos Leonhard Woelz -- http://websvn.kde.org/trunk/www/sites/quality/develop/howto/howtobugs.php?revision=1044461&amp;amp;view=markup&amp;amp;pathrev=1100000&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Using_Project_Neon_to_contribute_to_KDE</id>
		<title>Getting Started/Using Project Neon to contribute to KDE</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Using_Project_Neon_to_contribute_to_KDE"/>
				<updated>2010-08-21T12:28:41Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Using_Project_Neon_to_contribute_to_KDE}}&lt;br /&gt;
&lt;br /&gt;
{{Note | Project Neon can help you with builds current as of 2009-12-10}}&lt;br /&gt;
&lt;br /&gt;
[https://edge.launchpad.net/project-neon Project Neon] is a nightly build of the latest KDE trunk. It is an easy way for new contributors to KDE to get started without having to build the entire KDE-SVN tree and maintain the checkout. Additionally, dependencies are automatically handled and updated. This is suitable for new developers, translators, usability designers, documenters, promoters, bug triagers etc. This process makes the steps detailed on [[Getting_Started/Build/KDE4|this page]], including changes to your [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.bashrc]] unnecessary.&lt;br /&gt;
&lt;br /&gt;
However, for developers, it may at some point become necessary to build more components from SVN as you become more involved in the project. The [[Getting_Started/Build/kdesvn-build|kdesvn-build]] script is an easy way to build all or parts of KDE SVN.&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Project neon always requires the latest stable Kubuntu release. As of January 2009, that is version 8.10. Previous versions of Kubuntu are not supported. It is possible to port Project Neon to other distributions, though there are currently no maintainers for other distributions working on the project. OpenSuse provides their own weekly build of KDE trunk. Find instructions on how to use it [[Getting Started/Using OpenSuse KDE unstable packages for development|here]].&lt;br /&gt;
&lt;br /&gt;
== Installing Project Neon ==&lt;br /&gt;
&lt;br /&gt;
To use Project Neon, add the following PPA (Personal Package Archive) to your &amp;lt;tt&amp;gt;sources.list&amp;lt;/tt&amp;gt; using your preferred method:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
# Project neon nightly KDE4 build&lt;br /&gt;
deb http://ppa.launchpad.net/project-neon/ubuntu jaunty main&lt;br /&gt;
&lt;br /&gt;
#above repository is PGP signed, refer to below link for getting PGP key&lt;br /&gt;
https://launchpad.net/~project-neon/+archive/ppa&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After that, you can simply install the nightly package of whichever modules you want to work on. The following packages are available:&lt;br /&gt;
&lt;br /&gt;
 kde-nightly-kdebase&lt;br /&gt;
 kde-nightly-kdeplasma-addons&lt;br /&gt;
 kde-nightly-kdepim&lt;br /&gt;
 kde-nightly-kdeedu&lt;br /&gt;
 kde-nightly-kdenetwork&lt;br /&gt;
 kde-nightly-kdeutils&lt;br /&gt;
 kde-nightly-kdegraphics&lt;br /&gt;
 kde-nightly-kdemultimedia&lt;br /&gt;
&lt;br /&gt;
You can install all of the packages or just the ones you are interested in, depending on what you want to use them for. For example if you want to install the latest KDE Workspace (plasma, kwin etc), install the &amp;lt;tt&amp;gt;kde-nightly-kdebase&amp;lt;/tt&amp;gt; package and &amp;lt;tt&amp;gt;kde-nightly-kdeplasma-addons&amp;lt;/tt&amp;gt; package for extra plasmoids.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install kde-nightly-kdebase kde-nightly-kdeplasma-addons&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are only interested in application development in another module, you can install just the module package.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install kde-nightly-kdepim&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That command will also install the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; and other dependencies too. In your regular (stable) KDE session you can then run the nightly version of your chosen application by using the full path from the command line.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
/opt/kde-nightly/bin/kmail&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will correctly use the nightly version of libraries instead of using the stable versions, so no other changes are necessary to your library path etc.&lt;br /&gt;
&lt;br /&gt;
Alternatively, instead of using the full path to the executable, you could add the following to your &amp;lt;tt&amp;gt;.bashrc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
_STABLE_PATH=$PATH&lt;br /&gt;
function switchtonightly {&lt;br /&gt;
  export PATH=/opt/kde-nightly/bin:$_STABLE_PATH&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function switchtostable {&lt;br /&gt;
  export PATH=$_STABLE_PATH&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will allow you to optionally run unstable applications when you choose to in your session.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
# Runs the stable version of kmail&lt;br /&gt;
kmail&lt;br /&gt;
switchtonightly&lt;br /&gt;
# runs the nightly version of kmail&lt;br /&gt;
kmail&lt;br /&gt;
# runs the nightly version of knode&lt;br /&gt;
knode&lt;br /&gt;
switchtostable&lt;br /&gt;
# runs the stable version of kmail&lt;br /&gt;
kmail&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that settings for applications that you run from project neon do not conflict with your regular application settings and data. &amp;lt;tt&amp;gt;.kde-neon/&amp;lt;/tt&amp;gt; is used instead of &amp;lt;tt&amp;gt;.kde/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for development ==&lt;br /&gt;
&lt;br /&gt;
If you are joining one of the development teams in KDE, you will need a real SVN checkout in order to contribute your code back to the project and create patches easily.&lt;br /&gt;
&lt;br /&gt;
Some extra tools (&amp;lt;tt&amp;gt;neonmake&amp;lt;/tt&amp;gt;) are provided for this purpose in the package &amp;lt;tt&amp;gt;amarok-nightly-tools&amp;lt;/tt&amp;gt;. The packages come with development headers and debugging symbols built in.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install amarok-nightly-tools&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are already using a nightly package of the module you want to develop for, you should remove that, and checkout the development version. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
# Remove the packaged nightly version&lt;br /&gt;
sudo aptitude purge kde-nightly-kdepim&lt;br /&gt;
&lt;br /&gt;
# Add below Project Neon source code repository to sources.list&lt;br /&gt;
deb-src http://ppa.launchpad.net/project-neon/ppa/ubuntu jaunty main&lt;br /&gt;
&lt;br /&gt;
# Get the dependencies for building kdepim&lt;br /&gt;
sudo apt-get build-dep kde-nightly-kdepim&lt;br /&gt;
cd ~&lt;br /&gt;
# You may choose to do your development in a different folder.&lt;br /&gt;
cd Development&lt;br /&gt;
# Gets the latest version of the kdepim module.&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim&lt;br /&gt;
cd kdepim&lt;br /&gt;
# Shortcut provided by Project Neon to make the module&lt;br /&gt;
# and install it to the prefix /opt/kde-nightly/&lt;br /&gt;
sudo neonmake&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that you should usually checkout a module from KDE, not an application. Most modules contain libraries shared within the module and which are necessary to build the applications in the module.&lt;br /&gt;
&lt;br /&gt;
Also of note is the &amp;lt;tt&amp;gt;neonmake&amp;lt;/tt&amp;gt; command. This is a shortcut which temporarily sets some environment variables like the &amp;lt;tt&amp;gt;LD_LIBRARY_PATH&amp;lt;/tt&amp;gt;, the install prefix etc, then runs the equivalent of &amp;lt;tt&amp;gt;cmake &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt;. It also runs rpath to configure the executable file to use the nightly libraries.&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for translation ==&lt;br /&gt;
&lt;br /&gt;
The Project Neon nightly packages include English language strings only. Translated packages are not available. However, if you are translating KDE applications, you can install the translations from KDE SVN in your normal workflow.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd ~&lt;br /&gt;
cd Translations&lt;br /&gt;
# The -N switch checks out only the top level directory from svn.&lt;br /&gt;
svn co -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4&lt;br /&gt;
cd l10n-kde4&lt;br /&gt;
# scripts necessary to build translations.&lt;br /&gt;
svn up scripts&lt;br /&gt;
# Get the German translations&lt;br /&gt;
svn up de&lt;br /&gt;
# Generate the build files for the German language pack&lt;br /&gt;
./scripts/autogen.sh de&lt;br /&gt;
cd de&lt;br /&gt;
neonmake&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After building the translations it is possible to either change the language in system settings, or run applications in another language using the environment variable &amp;lt;tt&amp;gt;KDE_LANG&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
switchtonightly&lt;br /&gt;
KDE_LANG=de kmail&lt;br /&gt;
switchtostable&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for documentation ==&lt;br /&gt;
&lt;br /&gt;
The Project Neon nightly source packages include the official KDE User Documentation in English.&lt;br /&gt;
&lt;br /&gt;
TODO: How to build user docs from SVN.&lt;br /&gt;
&lt;br /&gt;
== Using Project Neon for promotion ==&lt;br /&gt;
&lt;br /&gt;
If you are creating screenshots or screencasts of the latest version of KDE, project Neon is a simple and fast way of getting a default KDE4 session.&lt;br /&gt;
&lt;br /&gt;
The KDE Promotion team recommends using the default background, theme, icons etc when preparing official promotional materials (unless the feature you are showing is related to configuring KDE artwork). Project Neon uses the default artwork that comes with KDE4, so it is useful for creating promo materials.&lt;br /&gt;
&lt;br /&gt;
Here is a shortcut to get all available modules from the PPA:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install kde-nightly-kdebase kde-nightly-kdeplasma-addons \&lt;br /&gt;
kde-nightly-kdepim kde-nightly-kdeedu kde-nightly-kdenetwork \&lt;br /&gt;
kde-nightly-kdeutils kde-nightly-kdegraphics kde-nightly-kdemultimedia&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The application [http://ariya.blogspot.com/2008/06/creating-fancy-screenshots-with.html screenie] is provided in Kubuntu 8.10 as &amp;lt;tt&amp;gt;screenie-qt&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo aptitude install screenie-qt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-21T03:05:47Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:~/.local/bin/:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]]. I assume you have OS X 10.5 or 10.6 installed, otherwise you would have some more dependencies.&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.linuxfromscratch.org/blfs/view/svn/pst/DocBook.html DocBook XML DTD-4.5 and DocBook XSL Stylesheets-1.75.2]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
mkdir docbook&lt;br /&gt;
cd docbooj&lt;br /&gt;
curl http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip -O&lt;br /&gt;
unzip docbook-xml-4.5.zip&lt;br /&gt;
# RUN ALL THE COMMANDS AT http://www.linuxfromscratch.org/blfs/view/svn/pst/DocBook.html AS ROOT&lt;br /&gt;
# DOWNLOAD THE FILE AT http://www.linuxfromscratch.org/blfs/view/svn/pst/docbook-xsl.html&lt;br /&gt;
sudo tar xfj docbook-xsl-1.75.2.tar.bz2&lt;br /&gt;
cd docbook-xsl-1.75.2&lt;br /&gt;
# RUN ALL THE COMMANDS THERE AS ROOT&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/gtk-doc/download.html gtk-doc]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/1.15/gtk-doc-1.15.tar.gz -O -L&lt;br /&gt;
tar xfz gtk-doc-*.tar.gz&lt;br /&gt;
cd gtk-doc-1.15&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;git clone git://git.gnome.org/glib&lt;br /&gt;
cd glib/&lt;br /&gt;
./autogen.sh --prefix=/opt/kde4-deps/ ## THIS IS WHERE I GET STUCK (entriken 2010-08-20)&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-21T01:04:47Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:~/.local/bin/:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]]. I assume you have OS X 10.5 or 10.6 installed, otherwise you would have some more dependencies.&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;Go to that link and download gtk-osx-build-setup.sh&lt;br /&gt;
sh gtk-osx-build-setup.sh&lt;br /&gt;
jhbuild bootstrap # THIS IS WHERE I GET STUCK (entriken, 2010-08-20)&lt;br /&gt;
jhbuild build meta-gtk-osx-bootstrap&lt;br /&gt;
jhbuild build&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-21T00:49:13Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:~/.local/bin/:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]]. I assume you have OS X 10.5 or 10.6 installed, otherwise you would have some more dependencies.&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;Go to that link and download/run gtk-osx-build-setup.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-21T00:44:58Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:~/.local/bin/:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;Go to that link and download/run gtk-osx-build-setup.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-21T00:43:47Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Setting Up Your Build Environment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:~/.local/bin/:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;I'M STUCK HERE&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-21T00:36:36Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* CMake */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;I'M STUCK HERE&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T23:29:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;I'M STUCK HERE&amp;lt;/code&amp;gt;&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T23:27:56Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Qt/Mac Open Source Edition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/sdk-mac-os-cpp&lt;br /&gt;
&lt;br /&gt;
The latest version has QtDBus and should work with KDE for Mac. Get it here: http://download.qt.nokia.com/qtsdk/qt-sdk-mac-opensource-2010.04.dmg&lt;br /&gt;
&lt;br /&gt;
(statement make by entriken and unverified 2010-08-20)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T23:12:04Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Setting Up Your Build Environment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/:/opt/kde4-deps/lib/pkgconfig/&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T23:06:28Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz -O&lt;br /&gt;
tar xfz libxml2-sources-*.tar.gz&lt;br /&gt;
cd libxml2-2.7.7&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&lt;br /&gt;
cd ~/kde4.build&lt;br /&gt;
curl ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz -O&lt;br /&gt;
tar xfz libxslt-*.tar.gz&lt;br /&gt;
cd libxslt-1.1.26&lt;br /&gt;
./configure --prefix=/opt/kde4-deps/&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:48:29Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
&amp;lt;code&amp;gt;curl -O http://www.explain.com.au/download/combo-2007-10-07.dmg.gz&lt;br /&gt;
gunzip  combo-2007-10-07.dmg.gz &lt;br /&gt;
open combo-2007-10-07.dmg &lt;br /&gt;
cp /Volumes/gnome-combo-2007-10-07-rw/x* /opt/kde4-deps/&lt;br /&gt;
sudo cp /Volumes/gnome-combo-2007-10-07-rw/x* /opt/kde4-deps/&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:44:05Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2 and libxslt]&lt;br /&gt;
  * Get binaries from http://www.explain.com.au/download/combo-2007-10-07.dmg.gz&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:41:45Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
git clone git://git.gnome.org/libxml2&lt;br /&gt;
cd libxml2&lt;br /&gt;
I DONT KNOW WHAT TO DO HERE&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:41:04Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variables must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You might want to put those in your ~/.bash_profile&lt;br /&gt;
&lt;br /&gt;
* For Fink users: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* For others: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
git clone git://git.gnome.org/libxml2&lt;br /&gt;
cd libxml2&lt;br /&gt;
I DONT KNOW WHAT TO DO HERE&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:38:37Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* [http://www.gnu.org/software/libtool/libtool.html libtool]&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://ftp.gnu.org/gnu/libtool/libtool-2.2.tar.gz -O&lt;br /&gt;
tar xfz libtool-2.2.tar.gz &lt;br /&gt;
cd libtool-2.2&lt;br /&gt;
ls&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.xmlsoft.org/downloads.html libxml2]&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
git clone git://git.gnome.org/libxml2&lt;br /&gt;
cd libxml2&lt;br /&gt;
I DONT KNOW WHAT TO DO HERE&amp;lt;/code&amp;gt;&lt;br /&gt;
* [http://www.gtk.org/download.html glib2]&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:04:33Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
{{Note|&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at http://kde.mac.org and are generated semi-regularly.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T22:02:41Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T21:33:48Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde4.build&lt;br /&gt;
cd ~/kde4.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde4.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T21:33:13Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Building kdelibs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde.build&lt;br /&gt;
cd ~/kde.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/kde.build&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T21:32:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* CMake */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde.build&lt;br /&gt;
cd ~/kde.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Get the latest CMake from http://www.cmake.org/cmake/resources/software.html#latest and install:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz -O&lt;br /&gt;
tar xfz cmake-*.tar.gz&lt;br /&gt;
cd cmake-*&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all&lt;br /&gt;
sudo make install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T20:05:15Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde.build&lt;br /&gt;
cd ~/kde.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T19:16:21Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Qt/Mac Open Source Edition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde.build&lt;br /&gt;
cd ~/kde.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Get the Qt/Mac source code from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;curl http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.3.tar.gz -O&lt;br /&gt;
tar xfz qt-everywhere-opensource-src-*.tar.gz&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T19:09:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir ~/kde.build&lt;br /&gt;
cd ~/kde.build&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Click &amp;quot;Source code available on this link:&amp;quot; at http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T19:05:41Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Qt/Mac Open Source Edition */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Click &amp;quot;Source code available on this link:&amp;quot; at http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T19:00:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [http://developer.apple.com/technologies/xcode.html XCode]&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Download qt-mac-opensource from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T19:00:02Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Required Third Party Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* [[http://developer.apple.com/technologies/xcode.html XCode]]&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Download qt-mac-opensource from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2010-08-20T18:30:25Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Commandline useradd */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 (Development version, TRUNK) From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Set up KDE 4 for development]]|&lt;br /&gt;
&lt;br /&gt;
reading=[[../kdesrc-build|kdesrc-build: The KDE From Source Build Tool]]&amp;lt;br&amp;gt;[[Contribute/Send Patches|Sending Patches]]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]&amp;lt;br&amp;gt;[[../KDE4/Windows|Instructions for MS Windows]]|&lt;br /&gt;
}}&lt;br /&gt;
{| class=&amp;quot;collapsible collapsed&amp;quot; style=&amp;quot;border: 1px #aaa solid; background: #efefef;&amp;quot;&lt;br /&gt;
! style=&amp;quot;font-size: 1.25em; &amp;quot;| Table of contents&lt;br /&gt;
|-&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
{{warning|The commands below are used to build the latest UNSTABLE version of KDE from TRUNK. &lt;br /&gt;
&lt;br /&gt;
This should not be used in a production environment -- not recommended for daily use.&lt;br /&gt;
&lt;br /&gt;
To build a stable KDE-4 version, go to:&lt;br /&gt;
&lt;br /&gt;
::[[Getting_Started/Build/KDE4.x|upgrading to KDE-4.x from KDE-3.x]]&lt;br /&gt;
&lt;br /&gt;
Or&lt;br /&gt;
&lt;br /&gt;
::[[Getting_Started/Build/KDE4.4 Upgrade|Upgrade KDE-4.4.x release version or KDE-4.4 SVN BRANCH)]]&lt;br /&gt;
&lt;br /&gt;
which is currently under construction.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows a labor intensive way to get KDE from trunk running on Linux/BSD systems.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
kdesrc-build http://kdesrc-build.kde.org/ is an easy alternative. (Previously called kdesvn-build)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
There are also tutorials for [[Getting_Started/Build/KDE4/FreeBSD|FreeBSD]], [[/Windows|Windows]], [[/Mac OS X|Mac OS X]] and [http://solaris.kde.org/ Solaris]. This tutorial creates a special user, kde-devel, that will run KDE trunk. On the one hand, this allows other users to continue with another KDE version. On the other hand, testing special system-wide code like the KDE display manager is not possible. There is a tutorial to&lt;br /&gt;
[[Getting_Started/Build/KDE4/onVmWare|set up KDE 4 trunk on a virtual machine]].&lt;br /&gt;
&lt;br /&gt;
Throughout the tutorial the bash shell is used.&lt;br /&gt;
&lt;br /&gt;
{{warning|Expect a higher risk of build failure '''on Mondays''' when most kdelibs changes are committed. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.}}&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
It is important to keep the development version from interfering with the rest of your computer, The method covered here is creating a dedicated kde-devel user.&lt;br /&gt;
&lt;br /&gt;
We will need to:&lt;br /&gt;
 #Add the user&lt;br /&gt;
 #Set the shell to bash&lt;br /&gt;
 #and may have to use sudoedit if we want to be able to sudo&lt;br /&gt;
 #Create a .bashrc file with environment variables for the build system&lt;br /&gt;
&lt;br /&gt;
A graphical tool is avalable from most distributions, if you have KDE you can get to this tool via: K-&amp;gt;Computer-&amp;gt;System Settings-&amp;gt;User Management&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
Less Safe Alternative:&lt;br /&gt;
One can do everything under your normal user account&lt;br /&gt;
&lt;br /&gt;
See [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&lt;br /&gt;
for more details. &lt;br /&gt;
&lt;br /&gt;
The environment variables determinate what version you use. Proceed same as here except put the environment variables in a file. In your &amp;lt;tt&amp;gt;.bashrc&amp;lt;/tt&amp;gt; file add the line &amp;lt;tt&amp;gt;source .kde_devel_env&amp;lt;/tt&amp;gt;. renaming the .kde_devel_env file would make them not be loaded, so you wouldn't use the devel version.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Commandline useradd===&lt;br /&gt;
Some systems are configured to use {{path|/bin/sh}}. Many users prefer Bash{{path|/bin/bash}} &lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
On Ark Linux and Fedora, you can skip the &amp;lt;tt&amp;gt;-s /bin/bash&amp;lt;/tt&amp;gt; switch - {{path|/bin/sh}} is {{path|bash}}.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo useradd -m kde-devel -s /bin/bash&lt;br /&gt;
sudo passwd kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== commandline permissions and groups ====&lt;br /&gt;
Edit your /etc/groups file to add the kde-devel user to all the groups that you need (probably the groups that your usual username is already assigned to).&lt;br /&gt;
&lt;br /&gt;
You may need to add user to sudoers file. (beyond scope of this tutorial)&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. &lt;br /&gt;
&lt;br /&gt;
Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;[[Getting Started/Build/KDE4/Prerequisites#Abstract|makeobj]]&amp;lt;/tt&amp;gt; command available. (What is this, how do we know???)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can download the kde-sdk a.k.a kdesdk package (or perform a subversion checkout) and include the kde-sdk/scripts/ directory in your path. (What is this???)&lt;br /&gt;
&lt;br /&gt;
You will probably also want to modify the path to make sure it doesn't include your kde3 paths.&lt;br /&gt;
&lt;br /&gt;
 Also if you want to use KDevelop to develop KDE 4 applications you may pass the ''-GKDevelop3'' flag to the ''cmake'' command (to make CMake generate KDevelop project files, it will help to avoid rebuilding in the future, see [[Getting_Started/Set_up_KDE_4_for_development#Setting_up_the_environment|this]]).  &lt;br /&gt;
To make it run, you have to open a new bash or to execute &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
source ~/.bashrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Using the kde-devel User ===&lt;br /&gt;
To get a text-only command prompt, say from konsole&lt;br /&gt;
 su - kde-devel&lt;br /&gt;
'(need hyphen otherwise your environment will be the same as your regular user)&lt;br /&gt;
&lt;br /&gt;
To Log in Text-only from a virtual terminal:&lt;br /&gt;
 CTRL-F1  ( CTRL-F7 is normally graphical )&lt;br /&gt;
&lt;br /&gt;
To use a shell that can pop up applications when your normal user is logged in:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
ssh -X kde-devel@localhost&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
If the ssh command fails, check out the [[Getting_Started/Set_up_KDE_4_for_development#Launching_KDE_4_apps|Launching KDE 4 apps]] section of the [[Getting_Started/Set_up_KDE_4_for_development|KDE4 development guide]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Required packages from your distribution ==&lt;br /&gt;
The requirements to build kde4 from source vary from distribution to distribution. Instructions for your distribution are provided below:&lt;br /&gt;
See [[build requirements]] for more complete list.&lt;br /&gt;
&lt;br /&gt;
[[Getting_Started/Build/KDE4/Ark Linux|Ark Linux]],&lt;br /&gt;
[[Getting_Started/Build/KDE4/Arch Linux|Arch Linux]], [[Getting_Started/Build/KDE4/Fedora|Fedora]],&lt;br /&gt;
[[Getting_Started/Build/KDE4/Kubuntu and Debian|Kubuntu and Debian]]( or check out [[Getting_Started/Using_Project_Neon_to_contribute_to_KDE|Project Neon]])&lt;br /&gt;
, [[Getting_Started/Build/KDE4/openSUSE|openSUSE]]( [http://en.opensuse.org/openSUSE:KDE_developers_guide specific guide for openSUSE]. However be careful because it updates a huge number of your stable packages.),&lt;br /&gt;
[[Getting_Started/Build/KDE4/Gentoo|Gentoo]],&lt;br /&gt;
[[Getting_Started/Build/KDE4/LFS|Linux from Scratch]] or to build from source.&lt;br /&gt;
[[Getting_Started/Build/KDE4/Mandriva|Mandriva]]&lt;br /&gt;
[[Getting_Started/Build/KDE4/Generic|any other distro]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Optional Documentation Dependencies ===&lt;br /&gt;
For trunk you also now need docbook-dtd42-xml for the docs. Depending on your distribution please get the docbook related packages and the 4.2 DTD.&lt;br /&gt;
&lt;br /&gt;
Your next compilation step depends on the packages supplied by your distro.&lt;br /&gt;
&lt;br /&gt;
== Compiling kde-qt, etc. ==&lt;br /&gt;
If you do not want to use the packages provided by your distro you can compile things like Qt yourself. Instructions for building all dependencies including CMake, Qt4 (kde-qt) and kdesupport are available in [[Getting_Started/Build/KDE4/Prerequisites|the build prerequisites page]].  Note that automoc, strigi, soprano, and a few other things are part of kdesupport, so if you have errors about these missing, you'll need to get kdesupport.&lt;br /&gt;
&lt;br /&gt;
=== Useful subversion tweaks ===&lt;br /&gt;
&lt;br /&gt;
{{Warning|Do not use this method when you don't know what you are doing or just want to test some trunk feature, seriously! &lt;br /&gt;
You can create a very costly load when you accidentially checkout all of trunk or for example all of &amp;quot;trunk/KDE&amp;quot; just to build single modules. This would generate immense useless load on the svn server.}}&lt;br /&gt;
&lt;br /&gt;
If you check out large parts of svn trunk regularly or if you want to create patches which touch several modules at once, you should try to checkout an empty tree of trunk first and then update only the relevant modules, for example:&lt;br /&gt;
&lt;br /&gt;
==== Example ====&lt;br /&gt;
 cd&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout --depth empty svn://anonsvn.kde.org/home/kde/trunk&lt;br /&gt;
 cd trunk&lt;br /&gt;
 svn up kdesupport &amp;amp;&amp;amp; cd kdesupport&lt;br /&gt;
 cmakekde&lt;br /&gt;
 cs trunk&lt;br /&gt;
 svn up --depth empty KDE&lt;br /&gt;
 svn up KDE/kdelibs &amp;amp;&amp;amp; cd KDE/kdelibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
 cs trunk&lt;br /&gt;
 svn up KDE/kdepimlibs&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
==== Why do I want to do that? ====&lt;br /&gt;
That way you can move stuff around all over the trunk repository, e.g. from playground to kdereview or to KDE/*. The following examples assume that you only want to test or work on single and few modules of trunk. &lt;br /&gt;
&lt;br /&gt;
This way updating the whole repository to a (hopefully) consitent state, the same revision, is really easy:&lt;br /&gt;
&lt;br /&gt;
 cs trunk # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn up&lt;br /&gt;
&lt;br /&gt;
== Download and Compile ==&lt;br /&gt;
In this section we go over acquiring and building the product.&lt;br /&gt;
{{Note|&lt;br /&gt;
check out http://kdesvn-build.kde.org/  you may not need to do all of this stuff.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
Please note, that requirements and dependancies frequently change.&lt;br /&gt;
You are running an UNSTABLE version, and simply compiling is not guaranteed. You will need to review errors and locate packages, (see acquire dependencies above) and [[Getting_Started/Build/KDE4/Troubleshooting|Troubleshooting]] information.&lt;br /&gt;
&lt;br /&gt;
We can now move on to building KDE's most essential libraries.&lt;br /&gt;
&lt;br /&gt;
=== kdelibs ===&lt;br /&gt;
Very important for lots of things, you may need to see troubleshooting and install some things from kdesupport first.&lt;br /&gt;
&lt;br /&gt;
==== The Recipe ====&lt;br /&gt;
 cd   &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 cd kdelibs&lt;br /&gt;
 mkdir build&lt;br /&gt;
 cd build&lt;br /&gt;
 cmakekde ..&lt;br /&gt;
&lt;br /&gt;
==== What's Happening ====&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 3). We download the sources for kdelibs using subversion (line 4), go into the new {{path|~/kde/src/KDE/kdelibs}} directory (line 5), and commence the build (line 6). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake $KDE_SRC/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
==== Additional KDE-specific CMake know-how ====&lt;br /&gt;
&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
To make a non-debug-release (e.g. suppressing all kDebug() messages), use e.g.&lt;br /&gt;
 cmake -DCMAKE_BUILD_TYPE=Release . &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
&lt;br /&gt;
For troubleshooting information, see the [[Getting_Started/Build/KDE4/Troubleshooting#Issues_building_kdelibs|kdelibs troubleshooting section]].&lt;br /&gt;
&lt;br /&gt;
=== kdepimlibs ===&lt;br /&gt;
Currently kdebase depends on kdepimlibs so it is required to install it first. These libraries are also shared by other packages such as those within kdepim, kdeutils and kdenetwork.&lt;br /&gt;
&lt;br /&gt;
==== libical ====&lt;br /&gt;
Download libical from http://sourceforge.net/project/showfiles.php?group_id=16077, compile, link and install it.&lt;br /&gt;
 tar xvzf libical-0.41.tar.gz&lt;br /&gt;
 cd libical-0.41&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
==== The Recipe ====&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
 cd kdepimlibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
==== What's Happening ====&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/kde/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
&lt;br /&gt;
For troubleshooting information, see the [[Getting_Started/Build/KDE4/Troubleshooting#Issues_building_kdepimlibs|kdepimlibs troubleshooting section]].&lt;br /&gt;
&lt;br /&gt;
=== kdebase ===&lt;br /&gt;
kdebase is divided into three parts:&lt;br /&gt;
* '''apps'''&lt;br /&gt;
:This contains applications like Dolphin or KWrite.&lt;br /&gt;
* '''runtime'''&lt;br /&gt;
:This contains things needed by every application at runtime, like icons. It is a required dependency for each KDE application, so you have to compile and install this.&lt;br /&gt;
* '''workspace'''&lt;br /&gt;
:This contains things specific to the KDE desktop, like Plasma or the window manager. Most stuff here depends on X11. You only need it if you want to build a full KDE desktop.&lt;br /&gt;
&lt;br /&gt;
You can build all of kdebase at once, which is described in the recipe below. If you only want to build kdebase-runtime, which is the only requirement, you can replace &amp;lt;code bash&amp;gt;cd kdebase&amp;lt;/code&amp;gt; with &amp;lt;code bash&amp;gt;cd kdebase/runtime&amp;lt;/code&amp;gt; in the recipe below.&lt;br /&gt;
&lt;br /&gt;
==== The Recipe ====&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
 cd kdebase&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
For troubleshooting information, see the [[Getting_Started/Build/KDE4/Troubleshooting#Issues_building_kdebase|kdebase troubleshooting section]].&lt;br /&gt;
&lt;br /&gt;
== Translations ==&lt;br /&gt;
&lt;br /&gt;
Most KDE users are going to install translations before being able to use their desktop properly. Full information is given in the [[Development/Tutorials/Localization/Building_KDE's_l10n_Module|Localisation tutorial]].&lt;br /&gt;
For a single language, the following receipe installs messages and translated documentation:&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4&lt;br /&gt;
 cd l10n-kde4&lt;br /&gt;
 svn up scripts &amp;lt;language&amp;gt;&lt;br /&gt;
 ./scripts/autogen.sh &amp;lt;language&amp;gt;&lt;br /&gt;
 cd &amp;lt;language&amp;gt;&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
== Running KDE 4 programs ==&lt;br /&gt;
&lt;br /&gt;
You can now run KDE 4 programs (e.g. kwrite) by typing:&lt;br /&gt;
 ssh -X kde-devel@localhost&lt;br /&gt;
 kwrite &lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
For troubleshooting issues see [[Getting_Started/Build/KDE4/Troubleshooting#Running_programs|troubleshooting running programs]].&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
&lt;br /&gt;
See the [[Development/Tools/apidox|generating apidox]] page.&lt;br /&gt;
&lt;br /&gt;
== Staying up to date ==&lt;br /&gt;
&lt;br /&gt;
In order to keep the kde4 installation up to date, each of the modules installed should be updated periodically. As Monday is the day for big changes in kdelibs, Tuesday may be the best day to do this. For each module checked out, run &amp;lt;tt&amp;gt;svn up&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs kdesupport # cs is not a typo&lt;br /&gt;
svn up&lt;br /&gt;
cb # cb is not a typo&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: it is not necessary to run cmakekde for updates.&lt;br /&gt;
&lt;br /&gt;
== Installing a subset of a module ==&lt;br /&gt;
&lt;br /&gt;
Many modules in KDE contain a large number of programs which could take a long time to download and compile. In cases where you want to work only on a particular program or programs in a module, it is possible to download and compile particular folders. In some cases, certain folders are required for any build of the module. This is determined in the CMakeLists.txt file of the module. For example the [http://websvn.kde.org/branches/KDE/4.0/kdegames/CMakeLists.txt?view=markup kdegames CMakeLists.txt file] lists:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
add_subdirectory(libkdegames)&lt;br /&gt;
add_subdirectory(libkmahjongg)&lt;br /&gt;
&lt;br /&gt;
macro_optional_add_subdirectory(doc)&lt;br /&gt;
macro_optional_add_subdirectory(lskat)&lt;br /&gt;
macro_optional_add_subdirectory(katomic)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, the libkdegames and libkmahjongg directories are required to build any of kdegames. The cmake directory will also usually be required. All the other directories (doc, katomic etc) are optional. They will be built if present on your machine. In this example, we build kmahjongg and kbattleship:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn co -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames # The -N switch performs a non-recursive checkout&lt;br /&gt;
cd kdegames&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/libkdegames # Get required directories&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/libkmahjongg&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/cmake&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/kbattleship # Get optional directories&lt;br /&gt;
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames/kmahjongg&lt;br /&gt;
cmakekde &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
For further isolation of your development environment change symbolic links, which you will see after executing ls -lh $(kde4-config --localprefix), assuming newly installed kde4-config is called.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development|Set up KDE 4 for development]] tutorial for how to start KDE 4 applications and how to use KDevelop to work on them.&lt;br /&gt;
&lt;br /&gt;
For most of what you need to know on patches see: [[Contribute/Send Patches|Sending Patches]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;br /&gt;
{{Build KDE}}{{Getting Started}}&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T18:24:56Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: new link for Qt/Mac&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Download qt-mac-opensource from http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X</id>
		<title>Archive:Getting Started/Build/Mac OS X</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Mac_OS_X"/>
				<updated>2010-08-20T18:19:43Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: remove link to dead content&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KDE4}}&lt;br /&gt;
{{improve}}&lt;br /&gt;
&lt;br /&gt;
*Note: You may wish to do all of this inside a directory name that ends in ''.noindex'' or ''.build'' to keep spotlight from indexing all of your temporary build-files as you build them.&lt;br /&gt;
&lt;br /&gt;
== Required Third Party Tools ==&lt;br /&gt;
The following third party tools are required for successfully building KDE on OSX. Also, here are some [[Getting_Started/Build/KDE4/LFS| good tips for installing from source]].&lt;br /&gt;
* AGG&lt;br /&gt;
* bzip2&lt;br /&gt;
* giflib or libungif&lt;br /&gt;
* libart_lgpl&lt;br /&gt;
* libidn&lt;br /&gt;
* libjpeg&lt;br /&gt;
* libmng&lt;br /&gt;
* libpng&lt;br /&gt;
* libxml2&lt;br /&gt;
* libxslt&lt;br /&gt;
* libusb&lt;br /&gt;
* OpenEXR&lt;br /&gt;
* PCRE&lt;br /&gt;
* Strigi&lt;br /&gt;
* shared-mime-info&lt;br /&gt;
* pkgconfig&lt;br /&gt;
* subversion (to check out the kde sources)&lt;br /&gt;
* dbus&lt;br /&gt;
&lt;br /&gt;
== Verify Compiler Version ==&lt;br /&gt;
* Fink: If your ''Distribution'' line in ''/sw/etc/fink.conf'' is 10.4-transitional, instead of 10.4, make sure you run ''sudo gcc_select 3.3'' before proceeding with any compiling, or you will end up with binary-incompatible c++ code!&lt;br /&gt;
* Manual: run ''sudo gcc_select 4.0'' if you want to be compatible with the pre-made installers.&lt;br /&gt;
== Qt/Mac Open Source Edition ==&lt;br /&gt;
Download qt-mac-opensource from http://www.trolltech.com/download/qt/mac&lt;br /&gt;
&lt;br /&gt;
Patches are required for a successful build.  Download the qt-copy patches through KDE's svn:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/&amp;lt;/code&amp;gt;&lt;br /&gt;
and apply the patches: &lt;br /&gt;
&amp;lt;code&amp;gt;cd qt-mac-opensource-4*&lt;br /&gt;
for patch in /path/to/patches/*.diff; do patch -p0 &amp;lt; $patch; done&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: when applying patches you will get errors when processing x11 specific files (i.e. files that match the pattern *_x11.{h,cpp}), simply skip those patches. &lt;br /&gt;
&lt;br /&gt;
And finally, compile qt-mac:&lt;br /&gt;
&amp;lt;code&amp;gt;./configure -prefix /opt/qt4 -qt-gif&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note: The Qt/Mac binary edition available from ftp.trolltech.com will '''not''' work,&lt;br /&gt;
because it does not contain the QtDBus module! (tested with 4.3.2)&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
CMake may be downloaded from CVS:&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake login&amp;lt;/code&amp;gt;&lt;br /&gt;
Note: password is &amp;quot;cmake&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;cvs -d :pserver:anonymous@www.cmake.org:/cvsroot/CMake co CMake&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled and installed:&lt;br /&gt;
&amp;lt;code&amp;gt;cd CMake&lt;br /&gt;
./configure --prefix=/opt/kde4-deps&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Setting Up Your Build Environment ==&lt;br /&gt;
Variable must be set to build KDE successfully, and are noted below&lt;br /&gt;
*Note: Replace /opt/kde4-deps with the location of your 3rd-party tools, and add your cmake location if you compiled from source&lt;br /&gt;
&amp;lt;code&amp;gt;export PATH=&amp;quot;/opt/qt4/bin:/opt/kde4/bin:/opt/kde4-deps/bin:$PATH&amp;quot;&lt;br /&gt;
export CMAKE_LIBRARY_PATH=&amp;quot;/opt/kde4-deps/lib&amp;quot;&lt;br /&gt;
export CMAKE_INCLUDE_PATH=&amp;quot;/opt/kde4-deps/include&amp;quot;&lt;br /&gt;
export PKG_CONFIG_PATH=&amp;quot;/opt/qt4/lib/&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
== Building kdelibs ==&lt;br /&gt;
kdelibs must be checked out of svn locally to be built:&lt;br /&gt;
&amp;lt;code&amp;gt;svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&amp;lt;/code&amp;gt;&lt;br /&gt;
And then compiled by performing the following:&lt;br /&gt;
&amp;lt;code&amp;gt;mkdir kdelibs.build&lt;br /&gt;
cd kdelibs.build&lt;br /&gt;
cmake ../kdelibs -DCMAKE_INSTALL_PREFIX=/opt/kde4&lt;br /&gt;
make all install&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
If kdelibs fails to compile successfully, check the build status for the latest Nightly Builds and Continuous Builds at http://public.kitware.com/dashboard.php?name=kde&lt;br /&gt;
&lt;br /&gt;
Information about getting and compiling the dependencies can be found at [[Getting_Started/Build/KDE4]] and [[Getting_Started/Build/KDE4/Prerequisites]] (pages are Linux focused, but can be useful)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Binaries ==&lt;br /&gt;
If you're interested in just checking things out, binaries for kdelibs and parts of KDE in general are available at [[Projects/KDE on Mac OS X]] and are generated semi-regularly.&lt;br /&gt;
&lt;br /&gt;
== Further Reading ==&lt;br /&gt;
For more general information on using CMake, see the [[Development/Tutorials/CMake|CMake Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OSX]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Policies/Draft/The_Power_Of_The_Doer</id>
		<title>Policies/Draft/The Power Of The Doer</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Policies/Draft/The_Power_Of_The_Doer"/>
				<updated>2010-08-16T13:39:55Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: add attribution&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;THIS IS NOT CURRENTLY AN OFFICIAL KDE POLICY&lt;br /&gt;
&lt;br /&gt;
Most of KDE contributors are volunteers, either programmers, artists, writers or translators. A traditional organization of hierarchy in this case is difficult to maintain and inefficient. But there are some rules and principles that help coordinating the efforts, and it is fundamental to know them.&lt;br /&gt;
&lt;br /&gt;
=The Power Of The Doer=&lt;br /&gt;
&lt;br /&gt;
In a volunteer project, the way to make something happen is present a concrete&lt;br /&gt;
solution, better yet if followed with an implementation. For example, pointing&lt;br /&gt;
out that KDE context help for dialogs is incomplete will not be useful, people&lt;br /&gt;
already know that. Writing context help for dialogs and sending it to the&lt;br /&gt;
maintainer is the only practical way to change this reality. There is also a lot&lt;br /&gt;
of room for different approaches in the implementation, as the maintainer is&lt;br /&gt;
likely to accept something he does not consider the best possible solution if he&lt;br /&gt;
judges it is an improvement. Programming issues are decided by programmers,&lt;br /&gt;
documentation issues are solved by documentation writers and so on.&lt;br /&gt;
&lt;br /&gt;
==The Maintainer Role And The Decision Process==&lt;br /&gt;
&lt;br /&gt;
The maintainer is the guy who formally takes responsibility for an&lt;br /&gt;
application or library. But it does not mean that he takes all decisions. For&lt;br /&gt;
controversial issues, the general decision is made by voting. To have a voice&lt;br /&gt;
in the voting process, it is necessary to be a current contributor, with&lt;br /&gt;
relevant past contributions. Anyone can try to influence the decision process&lt;br /&gt;
by presenting thoughtful arguments and evidence. And even when something is&lt;br /&gt;
decided to be the right path, it does not mean it will be implemented: someone&lt;br /&gt;
must have the time and will to implement it.&lt;br /&gt;
&lt;br /&gt;
(This content originally by Carlos Woelz from http://websvn.kde.org/trunk/www/areas/quality/develop/policies/index.php?annotate=286645&amp;amp;pathrev=286645)&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Policies/Draft/The_Power_Of_The_Doer</id>
		<title>Policies/Draft/The Power Of The Doer</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Policies/Draft/The_Power_Of_The_Doer"/>
				<updated>2010-08-15T19:58:33Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;THIS IS NOT CURRENTLY AN OFFICIAL KDE POLICY&lt;br /&gt;
&lt;br /&gt;
Most of KDE contributors are volunteers, either programmers, artists, writers or translators. A traditional organization of hierarchy in this case is difficult to maintain and inefficient. But there are some rules and principles that help coordinating the efforts, and it is fundamental to know them.&lt;br /&gt;
&lt;br /&gt;
=The Power Of The Doer=&lt;br /&gt;
&lt;br /&gt;
In a volunteer project, the way to make something happen is present a concrete&lt;br /&gt;
solution, better yet if followed with an implementation. For example, pointing&lt;br /&gt;
out that KDE context help for dialogs is incomplete will not be useful, people&lt;br /&gt;
already know that. Writing context help for dialogs and sending it to the&lt;br /&gt;
maintainer is the only practical way to change this reality. There is also a lot&lt;br /&gt;
of room for different approaches in the implementation, as the maintainer is&lt;br /&gt;
likely to accept something he does not consider the best possible solution if he&lt;br /&gt;
judges it is an improvement. Programming issues are decided by programmers,&lt;br /&gt;
documentation issues are solved by documentation writers and so on.&lt;br /&gt;
&lt;br /&gt;
==The Maintainer Role And The Decision Process==&lt;br /&gt;
&lt;br /&gt;
The maintainer is the guy who formally takes responsibility for an&lt;br /&gt;
application or library. But it does not mean that he takes all decisions. For&lt;br /&gt;
controversial issues, the general decision is made by voting. To have a voice&lt;br /&gt;
in the voting process, it is necessary to be a current contributor, with&lt;br /&gt;
relevant past contributions. Anyone can try to influence the decision process&lt;br /&gt;
by presenting thoughtful arguments and evidence. And even when something is&lt;br /&gt;
decided to be the right path, it does not mean it will be implemented: someone&lt;br /&gt;
must have the time and will to implement it.&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Policies/Draft/The_Power_Of_The_Doer</id>
		<title>Policies/Draft/The Power Of The Doer</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Policies/Draft/The_Power_Of_The_Doer"/>
				<updated>2010-08-15T18:51:31Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: copied content from http://quality.kde.org/develop/policies/&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Most of KDE contributors are volunteers, either programmers, artists, writers or translators. A traditional organization of hierarchy in this case is difficult to maintain and inefficient. But there are some rules and principles that help coordinating the efforts, and it is fundamental to know them.&lt;br /&gt;
&lt;br /&gt;
=The Power Of The Doer=&lt;br /&gt;
&lt;br /&gt;
In a volunteer project, the way to make something happen is present a concrete&lt;br /&gt;
solution, better yet if followed with an implementation. For example, pointing&lt;br /&gt;
out that KDE context help for dialogs is incomplete will not be useful, people&lt;br /&gt;
already know that. Writing context help for dialogs and sending it to the&lt;br /&gt;
maintainer is the only practical way to change this reality. There is also a lot&lt;br /&gt;
of room for different approaches in the implementation, as the maintainer is&lt;br /&gt;
likely to accept something he does not consider the best possible solution if he&lt;br /&gt;
judges it is an improvement. Programming issues are decided by programmers,&lt;br /&gt;
documentation issues are solved by documentation writers and so on.&lt;br /&gt;
&lt;br /&gt;
==The Maintainer Role And The Decision Process==&lt;br /&gt;
&lt;br /&gt;
The maintainer is the guy who formally takes responsibility for an&lt;br /&gt;
application or library. But it does not mean that he takes all decisions. For&lt;br /&gt;
controversial issues, the general decision is made by voting. To have a voice&lt;br /&gt;
in the voting process, it is necessary to be a current contributor, with&lt;br /&gt;
relevant past contributions. Anyone can try to influence the decision process&lt;br /&gt;
by presenting thoughtful arguments and evidence. And even when something is&lt;br /&gt;
decided to be the right path, it does not mean it will be implemented: someone&lt;br /&gt;
must have the time and will to implement it.&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Archive:Getting_Started/Build/Requirements</id>
		<title>Archive:Getting Started/Build/Requirements</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Archive:Getting_Started/Build/Requirements"/>
				<updated>2008-08-12T22:14:44Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: update due to 4.1 release&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4/Prerequisites}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 From Source/Prerequisites|&lt;br /&gt;
&lt;br /&gt;
pre=[[../|KDE SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../|KDE SVN Quickstart Guide]]|&lt;br /&gt;
|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
Some or all of these packages should be available for installation from your distribution. For ease of installation and upgrading it is a good idea to install distribution packages if a recent enough version is provided. Software required to build KDE4 includes:&lt;br /&gt;
&lt;br /&gt;
* gcc and g++, preferably version 4.2 or higher&lt;br /&gt;
* svn, the subversion revision control client&lt;br /&gt;
* pkg-config&lt;br /&gt;
* development libraries and headers for X11, OpenGL (mesa-common-dev and libglu1-mesa-dev), libjpeg, libpng, libungif, [http://clucene.sourceforge.net/index.php/Downloads libclucene], [http://download.librdf.org/source/ librdf], libxml2 and libxslt&lt;br /&gt;
* the &amp;lt;tt&amp;gt;makeobj&amp;lt;/tt&amp;gt; script, which is included in kdesdk. You can install it from kdesdk (kdesdk-scripts on Debian) or similar packages, or download at [http://websvn.kde.org/*checkout*/trunk/KDE/kdesdk/scripts/makeobj WebSVN]&lt;br /&gt;
* the [http://freedesktop.org/wiki/Software/shared-mime-info shared-mime-info package], is the freedesktop MIME standard now used in KDE&lt;br /&gt;
* [http://boost.org/ boost], used by kdebase; after build and/or install, in order to make cmake aware about its location (FindBoost),  add the boost directory (which contains the include subdirectory) to CMAKE_INCLUDE_PATH or set a environment variable called BOOST_ROOT that points to the boost directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== D-Bus ==&lt;br /&gt;
QtDBus and KDE are known to work with D-Bus versions 0.62, as well as 0.92 and upwards. Versions 0.60 and 0.61 may work too but are not tested. Versions 0.90 and 0.91 are known not to work. We recommend using post-1.0 release versions (at least 0.94), so consider upgrading if you haven't done so.&lt;br /&gt;
&lt;br /&gt;
You may skip this section if you have a recent D-Bus version or if you don't want to upgrade. You probably want to skip building the bindings until/unless you know you will be building HAL (see below).&lt;br /&gt;
&lt;br /&gt;
Before running these steps in the recipe, make sure your X11 headers and libraries are available. The configure script run on line 5 of the following instructions should output:&lt;br /&gt;
 Building X11 code:        yes&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&lt;br /&gt;
{{tip|Make sure you did set up your environment correctly as described [[Getting_Started/Build/KDE4#Setting_up_the_environment|above]]. This is necessary for the &amp;lt;tt&amp;gt;cs&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;cb&amp;lt;/tt&amp;gt; functions to work.}}&lt;br /&gt;
&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]] &lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz&lt;br /&gt;
 tar -xvzf dbus-1.0.2.tar.gz&lt;br /&gt;
 cd dbus-1.0.2/&lt;br /&gt;
 ./configure --prefix=$DBUSDIR --localstatedir=/var&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 sudo dbus-uuidgen --ensure&lt;br /&gt;
&lt;br /&gt;
 cs # see above&lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.74.tar.gz&lt;br /&gt;
 tar -xvzf dbus-glib-0.74.tar.gz&lt;br /&gt;
 cd dbus-glib-0.74/&lt;br /&gt;
 ./configure --prefix=$DBUSDIR&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 cd&lt;br /&gt;
 sudo chown -R kde-devel:kde-devel *&lt;br /&gt;
&lt;br /&gt;
=== What's Happening === &lt;br /&gt;
After changing into the source directory (line 1), D-Bus source code is downloaded from freedesktop.org (line 2) and unpacked (line 3). After going into the newly created D-Bus directory (line 4), the build is set up using the supplied {{path|configure}} script (line 5). After building (line 6) and installing (line 7) D-Bus, we use the &amp;lt;tt&amp;gt;dbus-uuidgen&amp;lt;/tt&amp;gt; tool to install a machine identification file that allows the bus to start automatically when the desktop session starts (line 8).&lt;br /&gt;
&lt;br /&gt;
Note that you need write access to {{path|/var}} for the last two steps. If your system does not have the sudo command, you can use the &amp;lt;tt&amp;gt;su&amp;lt;/tt&amp;gt; command instead, e.g. &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The steps for building the glib bindings are similar to the above.&lt;br /&gt;
&lt;br /&gt;
When these two packages are done building, we must fix the file ownership because 'sudo make install' has created root owned files and directories in ~kde-devel/kde.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get the error:&lt;br /&gt;
&amp;quot;configure: error: DBus development libraries not found&amp;quot;&lt;br /&gt;
do this:&lt;br /&gt;
export PKG_CONFIG_PATH=/lib/pkgconfig/&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Skip this if you have [http://cmake.org/ CMake] &amp;gt;=2.6 installed. &lt;br /&gt;
You should be able to directly use the binary packages available on the [http://cmake.org/HTML/index.html CMake site]. There are also distribution specific packages available.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click Here to learn more]] &lt;br /&gt;
 wget http://www.cmake.org/files/v2.6/cmake-2.6.1.tar.gz&lt;br /&gt;
 tar -zxf cmake-2.6.1.tar.gz&lt;br /&gt;
 mkdir cmake-build&lt;br /&gt;
 cd cmake-build &lt;br /&gt;
 ../cmake-2.6.1/bootstrap&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
First, we go back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's source directory (line 1), get the CMake sources (line 2) and unpack them (line 3). We create a directory to build CMake in (line 4) and go into it (line 5). We then run the CMake bootstrap script to set up the CMake build (line 6), then make (line 7) and install it (line 8) using the root user.&lt;br /&gt;
&lt;br /&gt;
If your system does not have the &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; command, you can instead do &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
Next we need to get Qt4. KDE 4.0 builds against Qt 4.3, however KDE 4.1 and trunk require the Qt 4.4. A recent snapshot of Qt 4.4 is available in the qt-copy module. KDE 4 will not build against Qt 4.2 or earlier.&lt;br /&gt;
&lt;br /&gt;
Most distributions have packages of Qt 4.3.  Some have packaged either the Qt 4.4 beta, or qt-copy as well.  If the distribution you use has done this, using it is a viable option. If the distribution you use does not provide packages of the necessary version of Qt, it will be necessary to use the recipe below. More information can be found in the sections of the tutorial specific to each distribution.&lt;br /&gt;
&lt;br /&gt;
Building qt4.4 with the -no-qt3support option will cause things to break.&lt;br /&gt;
&lt;br /&gt;
Please read the README.qt-copy file for the necessary Qt configure options as well as currently known issues.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cs # Note: cs is not a typo. See  [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|&amp;lt;font color=red&amp;gt;.bashrc&amp;lt;/font&amp;gt;]] &lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
 cd qt-copy&lt;br /&gt;
 ./apply_patches&lt;br /&gt;
 ./configure [copy/paste configure line from README.qt-copy replacing &amp;lt;installdir&amp;gt; with $QTDIR]&lt;br /&gt;
 make -j2 # use 'make -j(X+1)' where X is your number of processors, to compile faster&lt;br /&gt;
 # if we don't install, we'll just clear obj files to&lt;br /&gt;
 # save disk space&lt;br /&gt;
 if [ &amp;quot;$QTDIR&amp;quot; = &amp;quot;`pwd`&amp;quot; ]; then \&lt;br /&gt;
 find . -name '*.o' -delete ; \&lt;br /&gt;
 else make install; fi;&lt;br /&gt;
&lt;br /&gt;
'''Make sure &amp;lt;tt&amp;gt;which qmake&amp;lt;/tt&amp;gt; delivers something out of $QTDIR, e.g.:'''&lt;br /&gt;
 /home/kde-devel/qt-copy/bin/qmake&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We switch back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's home directory (line 1) and download the source code using subversion (svn) from KDE's repository (line 2). After changing into the resulting {{path|qt-copy}} directory (line 3), we run a script that manages the patches that come with &amp;lt;tt&amp;gt;qt-copy&amp;lt;/tt&amp;gt; (line 4). &lt;br /&gt;
&lt;br /&gt;
Once the patches have been applied, we then set up the build using the &amp;lt;tt&amp;gt;configure&amp;lt;/tt&amp;gt; script (line 5-6). The various command line options used are explained in the {{path|qt-copy/README.qt-copy}} file. Finally, we build the minimal requirements for KDE (line 7) and install (line 10) Qt. If install dir is the same as the current dir (line 8), then we just free some space (line 9) instead. If you want all the example and demo applications, you can either build them individually or simply do a &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; from the {{path|qt-copy}} directory. &lt;br /&gt;
&lt;br /&gt;
Note that the installation does not require root as it installs Qt locally into {{path|$QTDIR}}. Installation is necessary if {{path|$QTDIR}} differs from the source directory.&lt;br /&gt;
In the end, we make sure the cmake macro to find the Qt directory will work. It must be able to find qmake in $QTDIR.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &amp;quot;error: X11/Xlib.h: No such file or directory&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;xorg&amp;lt;/tt&amp;gt; (the actual name may vary between operating systems, for example it is &amp;lt;tt&amp;gt;xorg-dev&amp;lt;/tt&amp;gt; on Ubuntu based systems such as Kubuntu). &lt;br /&gt;
&lt;br /&gt;
If you get an error in the configure step about missing defines, check the value of &amp;lt;tt&amp;gt;$QMAKESPEC&amp;lt;/tt&amp;gt;.  Some distributions set this to point directly to the system-installed Qt.  If &amp;lt;tt&amp;gt;unset QMAKESPEC&amp;lt;/tt&amp;gt; solves the problem, you probably want to add it to the &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt; script.&lt;br /&gt;
&lt;br /&gt;
If you get an error &amp;quot;.pch/debug-shared/QtCore&amp;quot;, this is because Qt-4.3 enables precompiled headers if your gcc supports it, but for some reason it doesn't work for you. If you use distcc, configure qt with -no-pch. If you use icecream, update to the latest icecream from svn trunk.&lt;br /&gt;
&lt;br /&gt;
Try running any Qt program, like {{program|assistant}}. '''Note:''' You may need to run &amp;lt;tt&amp;gt;xhost +local:kde-devel&amp;lt;/tt&amp;gt; as your regular kde3 user to run this application.  If it crashes in QSpanData::adjustSpanMethods, then your problem is the oxygen style. Try removing {{path|lib/kde4/plugins/styles/kstyle-oxygen.so}} and {{path|lib/kde4/plugins/styles/oxygen.so}} if they exist in the KDE install prefix.&lt;br /&gt;
&lt;br /&gt;
=== Generating local API documentation ===&lt;br /&gt;
It's nice to have the Qt documentation locally for nice integration with [[Getting_Started/Set_up_KDE_4_for_development#KDevelop|KDevelop]], and doing this is really quite easy (also shown in {{path|README.qt-copy}}):&lt;br /&gt;
 cd $KDE_SRC/qt-copy&lt;br /&gt;
 make docs&lt;br /&gt;
 ./config.status&lt;br /&gt;
 make install&lt;br /&gt;
Note that it is necessary to do this only once, even if you rebuild Qt later.&lt;br /&gt;
&lt;br /&gt;
== HAL ==&lt;br /&gt;
&lt;br /&gt;
{{tip|You can use qdbusviewer to see if you have org.freedesktop.hal. If not, you might need a newer version of hal. If you have org.freedesktop.hal, you probably don't need to, and don't ''want'' to, roll your own HAL.}}&lt;br /&gt;
&lt;br /&gt;
If your system requires you to build a newer version of HAL, there's a decent chance you'll need to build other stuff as well, some of which may not be straight forward. This, however, should only be required for older distros.&lt;br /&gt;
&lt;br /&gt;
== kdesupport ==&lt;br /&gt;
&lt;br /&gt;
{{warning|Don't forget to read the [[Getting_Started/Build/KDE4#Setting_up_the_environment|Setting Up The Environment]] section first.}}&lt;br /&gt;
&lt;br /&gt;
There are several libraries that KDE applications rely on in the kdesupport module. This includes Phonon, Strigi and Soprano for file metadata and search, QImageBlitz for image manipulation needed in kdebase, eigen for visual effects in applications such as Kalzium, taglib for music players and qca for some cryptographic needs. &lt;br /&gt;
&lt;br /&gt;
Strigi itself has a few dependencies as well: you will need the libraries and headers for libz, libbz2, openssl (libcrypto or libssl), libclucene (&amp;gt;=0.9.16a but watch out: version 0.9.17 does '''not''' work), and either libxml2 or libexpat.&lt;br /&gt;
&lt;br /&gt;
Please remember that if you use openSUSE, you can install the needed packages from the KDE:KDE4 buildservice repository and do not have to bother with fiddling the details below. Skip to the kdelibs section. &lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/&lt;br /&gt;
 cd kdesupport&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1). We download the sources in kdesupport using subversion (line 2), go into the new {{path|~/kde/src/kdesupport}} directory (line 3), and commence the build (line 4). This will leave us in the kdesupport build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &lt;br /&gt;
   cmakekde: command not found&lt;br /&gt;
then you have to go manually into the kdesupport directory in ~ and execute the command cmakekde. if this still doesn't work, then something is wrong with your bashrc.&lt;br /&gt;
&lt;br /&gt;
If you get &lt;br /&gt;
 CMake Error: This project requires some variables to be set,&lt;br /&gt;
 and cmake can not find them.&lt;br /&gt;
 Please set the following variables:&lt;br /&gt;
 LIBXML2_INCLUDE_DIR (ADVANCED)&lt;br /&gt;
you should install the development package for libxml2.&lt;br /&gt;
&lt;br /&gt;
If you get &lt;br /&gt;
 CMake Error: Could NOT find REDLAND&lt;br /&gt;
then you need librdf from the Redland.&lt;br /&gt;
If your distribution does not provide the librdf package, you can download the source there: [http://download.librdf.org/source/ http://download.librdf.org/source/] and build it.&lt;br /&gt;
(Gentoo users: The ebuild for librdf is named dev-libs/redland)&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
 Fetching external item into 'kdesupport/admin'&lt;br /&gt;
 Error validating server certificate for 'https://...'&lt;br /&gt;
see [[Getting_Started/Sources/Using_Subversion_with_KDE|Using Subversion with KDE]]&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
 FILE cannot create directory: /usr/lib[64]/qt4/plugins/crypto. Maybe need administrative privileges.&lt;br /&gt;
 &lt;br /&gt;
 make: *** [install] Error 255&lt;br /&gt;
take a second look in the .bashrc file described above, are paths correct?  ($QTDIR and $PATH are used to get the QT installation path)&lt;br /&gt;
Alternatively, you may see this error if you decided to use a distribution installed version of qt4 and skipped the Qt install above.  Either install qt-copy as describe above, or &amp;quot;sudo make install&amp;quot;. If you use &amp;quot;sudo make install&amp;quot;, make sure that you change the ownership back to your user for some of the ~/kde subdirectories that were effected by using sudo (ie. &amp;quot;&amp;lt;tt&amp;gt;sudo chown -R kde-devel:kde-devel ~/kde&amp;lt;/tt&amp;gt;&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
If you get a message related to &lt;br /&gt;
   target libQtTest.so not found&lt;br /&gt;
you may need to recompile qt-copy. This time you should take out&lt;br /&gt;
   -nomake demos -nomake examples&lt;br /&gt;
from the configure command, so that Qt generates library QtTest.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
      CMake Error: Qt qmake not found!&lt;br /&gt;
Then:&lt;br /&gt;
      1) uncomment Qt section in .bashrc script (QTDIR, QT_PLUGINS_DIR,      &lt;br /&gt;
            PKG_CONFIG_PATH variable settings).&lt;br /&gt;
      2) source ~/.bashrc&lt;br /&gt;
      3) cd &amp;amp;&amp;amp; cd qt-copy&lt;br /&gt;
      4) make confclean&lt;br /&gt;
      5) repeat steps for installing Qt (from ./configure line).&lt;br /&gt;
      6) retry building kdesupport&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
      &amp;quot;CMake Error: Could NOT find BZip2&amp;quot;&lt;br /&gt;
then&lt;br /&gt;
      sudo apt-get install libbz2-dev&lt;br /&gt;
&lt;br /&gt;
== Next Step ==&lt;br /&gt;
Once all requirements have been installed it is time to install [[../#kdelibs|kdelibs]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2007-12-29T21:20:23Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Staying up to date */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Set up KDE 4 for development]]|&lt;br /&gt;
&lt;br /&gt;
reading=[[../kdesvn-build|kdesvn-build: The KDE From Subversion Build Tool]]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]&amp;lt;br&amp;gt;[[../KDE4/Windows|Instructions for MS Windows]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows one way to get KDE from trunk running on Linux/BSD systems. There are also tutorials for [[Getting_Started/Build/KDE4/FreeBSD|FreeBSD]], [http://www.kdelibs.com/ Windows], [[Getting_Started/Build/KDE4/Mac OS X|Mac OS X]] and [http://solaris.kde.org/ Solaris]. Throughout the tutorial the bash shell is used.&lt;br /&gt;
&lt;br /&gt;
{{warning|Expect a higher risk of build failure '''on Mondays''' when most kdelibs changes are committed. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Software Requirements ==&lt;br /&gt;
&lt;br /&gt;
The following needs to be installed to successfully use this tutorial:&lt;br /&gt;
* gcc and g++, preferably version 4.2 or higher&lt;br /&gt;
* svn, the subversion revision control client&lt;br /&gt;
* pkg-config&lt;br /&gt;
* development libraries and headers for X11, OpenGL (mesa-common-dev and libglu1-mesa-dev), libjpeg, libpng, libungif, [http://clucene.sourceforge.net/index.php/Downloads libclucene], [http://download.librdf.org/source/ librdf], libxml2 and libxslt&lt;br /&gt;
* the &amp;lt;tt&amp;gt;makeobj&amp;lt;/tt&amp;gt; script, which is included in kdesdk. You can install it from kdesdk (kdesdk-scripts on Debian) or similar packages, or download at [http://websvn.kde.org/*checkout*/trunk/KDE/kdesdk/scripts/makeobj WebSVN]&lt;br /&gt;
* the [http://freedesktop.org/wiki/Software/shared-mime-info shared-mime-info package], is the freedesktop MIME standard now used in KDE&lt;br /&gt;
* [http://boost.org/ boost], used by kdebase; after build and/or install, in order to make cmake aware about its location (FindBoost),  add the boost directory (which contains the include subdirectory) to CMAKE_INCLUDE_PATH or set a environment variable called BOOST_ROOT that points to the boost directory.&lt;br /&gt;
&lt;br /&gt;
=== Ark Linux ===&lt;br /&gt;
In Ark Linux, the build dependencies you need are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
apt-get install devel-core libxml-devel libxslt-devel bzip2-devel \&lt;br /&gt;
clucene-core-devel librdf-devel shared-mime-info xorg-Mesa-libGL-devel \&lt;br /&gt;
subversion boost-devel doxygen giflib-devel dbus-devel openssl-devel \&lt;br /&gt;
alsa-lib-devel kdesdk-scripts qt4-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you prefer a graphical interface, select the packages listed above in the &amp;quot;Install Software&amp;quot; tool in Mission Control.&lt;br /&gt;
&lt;br /&gt;
This includes installation of CMake, DBus and Qt - you can skip steps 5, 6 and 7.&lt;br /&gt;
&lt;br /&gt;
=== Arch Linux ===&lt;br /&gt;
In Arch Linux you need to install the following packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
pacman -Sy subversion bzip2 libxslt libxml2 \&lt;br /&gt;
shared-mime-info mesa boost dbus openssl \&lt;br /&gt;
pkgconfig xine-lib clucene&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to use qt4 from the Arch Linux repository you can install it with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
pacman -Sy qt4&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;For clucene libraries you need the [http://aur.archlinux.org/packages.php?do_Details=1&amp;amp;ID=5968 PKGBUILD] from AUR.&amp;lt;/s&amp;gt;&lt;br /&gt;
(No longer needed since clucene has been put into the extra-repo.)&lt;br /&gt;
&lt;br /&gt;
=== Fedora ===&lt;br /&gt;
&lt;br /&gt;
Some of the required packages for building KDE4 on Fedora 7 or higher:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
yum install clucene-core-devel libxml-devel libxslt-devel \&lt;br /&gt;
dbus-devel boost-devel bzip2-devel openssl-devel alsa-lib-devel \&lt;br /&gt;
redland-devel rasqal-devel raptor-devel hspell-devel aspell-devel \&lt;br /&gt;
cups-devel xine-lib-devel avahi-devel gamin-devel OpenEXR-devel \&lt;br /&gt;
enchant-devel jasper-devel ilmbase-devel pcre-devel gpgme-devel \&lt;br /&gt;
libxklavier-devel glib-devel libusb-devel libsmbclient-devel \&lt;br /&gt;
libxcb-devel NetworkManager-devel lm_sensors-devel libraw1394-devel \&lt;br /&gt;
bluez-libs-devel gcc-c++ libXext-devel cmake subversion giflib-devel \&lt;br /&gt;
libpng-devel libXdamage-devel libXcomposite-devel libXrender-devel \&lt;br /&gt;
fontconfig-devel libXft-devel libXcursor-devel libXfixes-devel \&lt;br /&gt;
ruby-devel libXScrnSaver-devel libkdcraw-devel exiv2-devel \&lt;br /&gt;
lcms-devel libtiff-devel sqlite-devel libxkbfile-devel \&lt;br /&gt;
imlib2-devel patch gstreamer-plugins-base-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some optional packages for koffice support:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
yum install qca2-devel gsl-devel freeglut-devel \&lt;br /&gt;
GraphicsMagick-c++-devel GraphicsMagick-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This includes installation of D-Bus and CMake -- you can skip steps 5 and 6.&lt;br /&gt;
&lt;br /&gt;
DCH-10/15/07: Note - It may be simpler to spin RPMs. Note that you can edit the variables in /etc/rpm/macros.kde4 (which is provided by Rawhide kde-filesystem).&lt;br /&gt;
&lt;br /&gt;
The build stage then looks like:&lt;br /&gt;
 (but in what directory?)&lt;br /&gt;
%build&lt;br /&gt;
&lt;br /&gt;
mkdir -p %{_target_platform}&lt;br /&gt;
&lt;br /&gt;
pushd %{_target_platform}&lt;br /&gt;
&lt;br /&gt;
%{cmake_kde4} ..&lt;br /&gt;
&lt;br /&gt;
popd&lt;br /&gt;
&lt;br /&gt;
make %{?_smp_mflags} -C %{_target_platform}&lt;br /&gt;
&lt;br /&gt;
I have had better results with creating a kdesupport rpm which means that you should not install the soprano and strigi rpms. YMMV&lt;br /&gt;
&lt;br /&gt;
telsh: On a Fedora 8 System I had to install &amp;quot;qt4-devel&amp;quot; too to have qmake.&lt;br /&gt;
&lt;br /&gt;
=== Kubuntu and Debian ===&lt;br /&gt;
&lt;br /&gt;
In Kubuntu 7.04 (Feisty) and Debian (Testing/Unstable) the build dependencies you need are installed with:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
libxml2-dev libxslt1-dev libbz2-dev libclucene-dev librdf-dev \&lt;br /&gt;
shared-mime-info libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev \&lt;br /&gt;
libxext-dev libjpeg-dev libpng12-dev subversion libsm-dev libxinerama-dev \&lt;br /&gt;
libxrender-dev libfontconfig-dev libboost-dev libxcursor-dev doxygen \&lt;br /&gt;
libungif4-dev libdbus-1-dev libssl-dev libgpgme11-dev \&lt;br /&gt;
libasound2-dev kdesdk-scripts libpth-dev libjasper-dev \&lt;br /&gt;
ssh libxine-dev libqimageblitz-dev libqimageblitz4 libglib2.0-dev \&lt;br /&gt;
libxkbfile-dev libenchant-dev libbluetooth-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libxcb1-dev libcaptury-dev libxcomposite-dev \&lt;br /&gt;
libxdamage-dev libusb-dev libgpgme11-dev libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In Kubuntu 7.10 (Gutsy) and Debian unstable you also have to add:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo aptitude install dbus-x11  libqt4-dev libqca2-dev libeigen-dev \&lt;br /&gt;
libstreamanalyzer-dev libsoprano-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxklavier11-dev libxml2-utils libdbus-1-dev libxslt1-dev cmake libbz2-dev \&lt;br /&gt;
libungif4-dev libgpgme11-dev libboost-dev libxine-dev libxkbfile-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For a fully functional API documentation framework you also need:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is no need to compile qt or kdesupport on kubuntu gutsy. All required packages are provided by installing the above. Setup the kde4 user etc as explained in the next section, but skip over compiling qt, hal and kdesupport.&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
If you get something trouble on compile KDE4&lt;br /&gt;
Beta4 or above in Kubuntu 7.10, such as :&lt;br /&gt;
&lt;br /&gt;
Soprano version is too low&lt;br /&gt;
&lt;br /&gt;
strigi xxx.h not found...&lt;br /&gt;
&lt;br /&gt;
You may need to checkout, and compile the relevant part of&lt;br /&gt;
kdesupport source code in the SVN server of KDE4. (svn://anonsvn.kde.org/home/kde/trunk/kdesupport/soprano/)  &lt;br /&gt;
&lt;br /&gt;
This is covered when you get to the section on compiling kdesupport.&lt;br /&gt;
&lt;br /&gt;
You might also have to remove any installed soprano package : sudo apt-get remove libsoprano4 libsoprano-dev&lt;br /&gt;
&lt;br /&gt;
If you still get an error in the kdelibs section about soprano like:&lt;br /&gt;
CMake Error: Error in cmake code at&lt;br /&gt;
$src/KDE/kdelibs/cmake/modules/FindSoprano.cmake:78:&lt;br /&gt;
FILE Internal CMake error when trying to open file: /usr/include/soprano/version.h for reading.&lt;br /&gt;
&lt;br /&gt;
then delete kdelibs/CMakeCache.txt&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== openSUSE ===&lt;br /&gt;
&lt;br /&gt;
In openSUSE 10.2 and newer, you can install packages using [http://en.opensuse.org/Zypper Zypper]:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo zypper install &amp;lt;package-name&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In older releases of SUSE, you can use YaST:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
su&lt;br /&gt;
yast -i &amp;lt;packagename&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Required Packages'''&lt;br /&gt;
&lt;br /&gt;
The packages you will need to install are:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
xorg-x11-devel&lt;br /&gt;
libxml2-devel &lt;br /&gt;
kdesdk3 &lt;br /&gt;
clucene-core-devel &lt;br /&gt;
boost-devel&lt;br /&gt;
libjpeg-devel &lt;br /&gt;
liblrdf-devel &lt;br /&gt;
libpng-devel &lt;br /&gt;
libxslt-devel &lt;br /&gt;
libredland-devel&lt;br /&gt;
Mesa-devel &lt;br /&gt;
giflib-devel &lt;br /&gt;
subversion &lt;br /&gt;
gcc &lt;br /&gt;
gcc-c++&lt;br /&gt;
gmp-devel (needed to build kdesupport)&lt;br /&gt;
gpgme-devel (needed to build kdepimlibs)&lt;br /&gt;
libxine1-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Optional Packages'''&lt;br /&gt;
&lt;br /&gt;
You can skip the manual and painful installation kdesupport and its dependencies ( Qt 4.3, CMake 2.4.6, DBus, Hal, clucene-core, Strigi,&lt;br /&gt;
Soprano and other Nepomuk dependencies) by adding the KDE:KDE4 repository from&lt;br /&gt;
the [http://download.opensuse.org/repositories/KDE:/KDE4/ openSUSE Build Service] to your installation sources. &lt;br /&gt;
&lt;br /&gt;
For openSUSE 10.2 and newer do:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo zypper service-add http://software.opensuse.org/download/KDE:/KDE4/openSUSE_10.2 KDE4-102&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For older versions of SUSE Linux do:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
su&lt;br /&gt;
installation_sources -a http://software.opensuse.org/download/KDE:/KDE4/[YOUR SUSE LINUX VERSION]&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the following packages:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
cmake&lt;br /&gt;
dbus-1-devel&lt;br /&gt;
libqt4-devel&lt;br /&gt;
libqca2-devel&lt;br /&gt;
libsoprano-devel&lt;br /&gt;
libqimageblitz-devel&lt;br /&gt;
strigi&lt;br /&gt;
strigi-ui&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are a lot more packages that are needed to satisfy the config-check, such as libusb-devel, bison etc., so look out for the config notifications and install accordingly. Please remember to skip any instructions that refer to kdesupport below. Start to compile with kdelibs. &lt;br /&gt;
&lt;br /&gt;
And for fully functional apidox framework you also need:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CMake binary packages for openSUSE are available from the KDE:KDE4 repository as well as from the [http://software.opensuse.org/download/devel:/tools:/building/ openSUSE build service].&lt;br /&gt;
&lt;br /&gt;
=== Gentoo ===&lt;br /&gt;
&lt;br /&gt;
==== Install by hand ====&lt;br /&gt;
&lt;br /&gt;
You can use stable ebuilds just remember to sync your portage before you begin.&lt;br /&gt;
&lt;br /&gt;
Remember: All commands are executed as root.&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
We need to allow the following keyword masked ebuilds.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
echo 'dev-util/cmake' &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
echo 'dev-cpp/clucene' &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make sure you have set the berkdb USE flag for redland, otherwise nepomuk won't work.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
echo 'dev-libs/redland berkdb' &amp;gt;&amp;gt; /etc/portage/package.use&lt;br /&gt;
echo 'x11-libs/qt accessibility' &amp;gt;&amp;gt; /etc/portage/package.use&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are the packages you will need to emerge, I included the update option into the emerge command so you will not re-emerge anything that you might already have installed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
emerge -avu 'sys-devel/gcc' \&lt;br /&gt;
  'dev-util/subversion' \&lt;br /&gt;
  'dev-util/pkgconfig'  \&lt;br /&gt;
  'x11-base/xorg-x11' \&lt;br /&gt;
  'virtual/glut' \&lt;br /&gt;
  'media-libs/mesa' \&lt;br /&gt;
  'media-libs/jpeg' \&lt;br /&gt;
  'media-libs/libpng' \&lt;br /&gt;
  'media-libs/giflib' \&lt;br /&gt;
  'dev-cpp/clucene' \&lt;br /&gt;
  'dev-util/cppunit' \&lt;br /&gt;
  'media-libs/liblrdf' \&lt;br /&gt;
  'dev-libs/libxml2' \&lt;br /&gt;
  'dev-libs/libxslt' \&lt;br /&gt;
  'x11-misc/shared-mime-info' \&lt;br /&gt;
  'dev-libs/boost' \&lt;br /&gt;
  'dev-util/cmake' \&lt;br /&gt;
  'dev-libs/redland' \&lt;br /&gt;
  'sys-apps/dbus' \&lt;br /&gt;
  'sys-apps/hal' \&lt;br /&gt;
  'x11-libs/qt'&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
You will also need to emerge either 'kde-base/kdesdk' or kde-base/kdesdk-scripts'.&lt;br /&gt;
&lt;br /&gt;
If you emerged DBUS, CMAKE, QT or HAL you may skip those sections respectively.&lt;br /&gt;
Good luck!&lt;br /&gt;
&lt;br /&gt;
==== Install via portage ====&lt;br /&gt;
&lt;br /&gt;
Also you can install the KDE 4 packages directly via &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
emerge -a &amp;lt;packagename&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the things you need, [http://gentoo-wiki.com/TIP_Overlays#Layman install layman] and then pull in the &amp;quot;kde&amp;quot; overlay (which contains experimental KDE ebuilds): &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
layman -a kde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
After this you need to adjust some USE-flags for KDE 4 and tell portage to use the testing KDE 4 ebuilds instead of the stable KDE 3 ones. &lt;br /&gt;
&lt;br /&gt;
That way portage will do the dependency tracking for you. &lt;br /&gt;
&lt;br /&gt;
Detailed instructions on building KDE 4 in Gentoo via portage can be found in the [http://overlays.gentoo.org/proj/kde/wiki KDE overlay wiki]. They are discussed in the forum thread [http://forums.gentoo.org/viewtopic-t-530111-postdays-0-postorder-asc-start-0.html KDE 4 monolithic ebuilds], which is continued [http://forums.gentoo.org/viewtopic-p-4359581.html#4359581 here]&lt;br /&gt;
&lt;br /&gt;
=== Mandriva ===&lt;br /&gt;
In Mandriva the build dependencies you need are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
urpmi gcc-c++ cmake libxml2-devel libbzip2_1-devel \&lt;br /&gt;
libclucene0-devel liblrdf2-devel libmesagl1-devel \&lt;br /&gt;
subversion doxygen libdbus-1_3-devel libopenssl0.9.8-devel \&lt;br /&gt;
libalsa2-devel libgpgme-devel libboost1-devel libxine-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you're running 64-bit environment you should replace all packages starting with &amp;quot;lib...&amp;quot; to &amp;quot;lib64...&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you prefer a graphical interface, select the packages listed above in the &amp;quot;Install Software&amp;quot; tool in Mandriva Linux Control Center.&lt;br /&gt;
&lt;br /&gt;
This includes installation of CMake, DBus - you can skip steps 5 and 6.&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
Some people like to have a separate user account for KDE 4 (for instance an old bug deleted files by mistake), and the instructions below were written with that approach.&lt;br /&gt;
&lt;br /&gt;
However it is much more efficient to do everything with a single user account, see [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&lt;br /&gt;
for more details. &lt;br /&gt;
&lt;br /&gt;
You can still follow the instructions below, but don't put the environment variables in your &amp;lt;tt&amp;gt;.bashrc&amp;lt;/tt&amp;gt;, put them in a separate file that you source to switch to the KDE 4 environment.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Option 1: Command Line ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd -m kde-devel&lt;br /&gt;
passwd kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning|&lt;br /&gt;
The new kde-devel user will not be added automatically to all the user groups, which will result in not having sound, not being able to sudo, etc. Edit your /etc/groups file to add the kde-devel user to all the groups that you need (probably the groups that your usual username is already assigned to).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Option 2: Using KControl ===&lt;br /&gt;
&lt;br /&gt;
Instead of using the commands above, you can also use the User module in the KDE Control Center if you already have KDE3 installed.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;[[Getting Started/Build/KDE4#Required Software|makeobj]]&amp;lt;/tt&amp;gt; command available. You will probably also want to modify the path to make sure it doesn't include your kde3 paths. Also if you want to use KDevelop to develop KDE 4 applications you may pass the ''-GKDevelop3'' flag to the ''cmake'' command (to make CMake generate KDevelop project files, it will help to avoid rebuilding in the future, see [[Getting_Started/Set_up_KDE_4_for_development#Setting_up_the_environment|this]]).  &lt;br /&gt;
To make it run, you have to open a new bash or to execute &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
source ~/.bashrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Switching to the New User ===&lt;br /&gt;
Switch to the user kde-devel: (don't forget the dash)&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
ssh -X kde-devel@localhost&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
If the ssh command fails, check out the [[Getting_Started/Set_up_KDE_4_for_development#Launching_KDE_4_apps|Launching KDE 4 apps]] section of the [[Getting_Started/Set_up_KDE_4_for_development|KDE4 development guide]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== The development user's shell ==&lt;br /&gt;
&lt;br /&gt;
On some systems a new user is configured by default to use {{path|/bin/sh}}. If this is not the case on your system, you can skip this section. Using {{path|/bin/sh}} can be very inconvenient to work with and you may want to change it to {{path|/bin/bash}} or another shell.&lt;br /&gt;
On Ark Linux and Fedora, you can skip this step - {{path|/bin/sh}} is {{path|bash}}.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: As the kde-devel user ===&lt;br /&gt;
&lt;br /&gt;
If you don't have root privileges and your system supports the changing of your own shell with the &amp;lt;tt&amp;gt;chsh&amp;lt;/tt&amp;gt; application, then you could try to change your shell to {{path|/bin/bash}} by using:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
chsh -s /bin/bash kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: As the root user ===&lt;br /&gt;
&lt;br /&gt;
If your system comes with the &amp;lt;tt&amp;gt;usermod&amp;lt;/tt&amp;gt; application you can run the following command as root: &amp;lt;tt&amp;gt;usermod -s /bin/bash&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Another option is to use the &amp;lt;tt&amp;gt;vipw&amp;lt;/tt&amp;gt; application as root to safely edit your {{path|/etc/passwd}}. Locate 'kde-devel' in the the file. Change '{{path|/bin/sh}}' at the end of the line to read '{{path|/bin/bash}}', save your changes and exit.&lt;br /&gt;
&lt;br /&gt;
The new shell will be started automatically when you log in as the kde-devel user again.&lt;br /&gt;
&lt;br /&gt;
== D-Bus ==&lt;br /&gt;
QtDBus and KDE are known to work with D-Bus versions 0.62, as well as 0.92 and upwards. Versions 0.60 and 0.61 may work too but are not tested. Versions 0.90 and 0.91 are known not to work. We recommend using post-1.0 release versions (at least 0.94), so consider upgrading if you haven't done so.&lt;br /&gt;
&lt;br /&gt;
You may skip this section if you have a recent D-Bus version or if you don't want to upgrade. You probably want to skip building the bindings until/unless you know you will be building HAL (see below).&lt;br /&gt;
&lt;br /&gt;
Before running these steps in the recipe, make sure your X11 headers and libraries are available. The configure script run on line 5 of the following instructions should output:&lt;br /&gt;
 Building X11 code:        yes&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&lt;br /&gt;
{{tip|Make sure you did set up your environment correctly as described [[Getting_Started/Build/KDE4#Setting_up_the_environment|above]]. This is necessary for the &amp;lt;tt&amp;gt;cs&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;cb&amp;lt;/tt&amp;gt; functions to work.}}&lt;br /&gt;
&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]] &lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz&lt;br /&gt;
 tar -xvzf dbus-1.0.2.tar.gz&lt;br /&gt;
 cd dbus-1.0.2/&lt;br /&gt;
 ./configure --prefix=$DBUSDIR --localstatedir=/var&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 sudo dbus-uuidgen --ensure&lt;br /&gt;
&lt;br /&gt;
 cs # see above&lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.74.tar.gz&lt;br /&gt;
 tar -xvzf dbus-glib-0.74.tar.gz&lt;br /&gt;
 cd dbus-glib-0.74/&lt;br /&gt;
 ./configure --prefix=$DBUSDIR&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 cd&lt;br /&gt;
 sudo chown -R kde-devel:kde-devel *&lt;br /&gt;
&lt;br /&gt;
=== What's Happening === &lt;br /&gt;
After changing into the source directory (line 1), D-Bus source code is downloaded from freedesktop.org (line 2) and unpacked (line 3). After going into the newly created D-Bus directory (line 4), the build is set up using the supplied {{path|configure}} script (line 5). After building (line 6) and installing (line 7) D-Bus, we use the &amp;lt;tt&amp;gt;dbus-uuidgen&amp;lt;/tt&amp;gt; tool to install a machine identification file that allows the bus to start automatically when the desktop session starts (line 8).&lt;br /&gt;
&lt;br /&gt;
Note that you need write access to {{path|/var}} for the last two steps. If your system does not have the sudo command, you can use the &amp;lt;tt&amp;gt;su&amp;lt;/tt&amp;gt; command instead, e.g. &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The steps for building the glib bindings are similar to the above.&lt;br /&gt;
&lt;br /&gt;
When these two packages are done building, we must fix the file ownership because 'sudo make install' has created root owned files and directories in ~kde-devel/kde.&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Skip this if you have [http://cmake.org/ CMake] &amp;gt;=2.4.5 installed. &lt;br /&gt;
You should be able to directly use the binary packages available on the [http://www.cmake.org/HTML/Download.html CMake site]. There are also distribution specific packages available.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click Here to learn more]] &lt;br /&gt;
 wget http://www.cmake.org/files/v2.4/cmake-2.4.6.tar.gz&lt;br /&gt;
 tar -zxf cmake-2.4.6.tar.gz&lt;br /&gt;
 mkdir cmake-build&lt;br /&gt;
 cd cmake-build &lt;br /&gt;
 ../cmake-2.4.6/bootstrap&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
First, we go back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's source directory (line 1), get the CMake sources (line 2) and unpack them (line 3). We create a directory to build CMake in (line 4) and go into it (line 5). We then run the CMake bootstrap script to set up the CMake build (line 6), then make (line 7) and install it (line 8) using the root user.&lt;br /&gt;
&lt;br /&gt;
If your system does not have the &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; command, you can instead do &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
Next we need to get Qt4. KDE is guaranteed to build against any Qt 4.3. Qt 4.2 and earlier are not supported and will not work. &lt;br /&gt;
&lt;br /&gt;
If your distribution has a recent version of Qt4, that should work. Most distros backport bugfixes, and some distros, like Debian or openSUSE, even use the patches from KDE svn. In other cases, using the recipe below will give you a more stable Qt than your distro. Refer to the distribution specific sections above for more information. &lt;br /&gt;
&lt;br /&gt;
As for now Qt3 compatibility layer in Qt 4 is mandatory, so please &amp;lt;b&amp;gt;avoid&amp;lt;/b&amp;gt; using &amp;quot;-no-qt3support&amp;quot; option when building Qt4 from sources.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cd # Note: qt-copy lives in $HOME/qt-copy. See $QTDIR in [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|&amp;lt;font color=red&amp;gt;.bashrc&amp;lt;/font&amp;gt;]] &lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
 cd qt-copy&lt;br /&gt;
 ./apply_patches&lt;br /&gt;
 ./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
  -prefix $QTDIR -nomake examples -nomake demos&lt;br /&gt;
 make -j2&lt;br /&gt;
&lt;br /&gt;
 # if we don't install, we'll just clear obj files to&lt;br /&gt;
 # save disk space&lt;br /&gt;
 if [ $QTDIR = `pwd` ]; then \&lt;br /&gt;
 find . -name '*.o' -delete ; \&lt;br /&gt;
 else make install; fi;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We switch back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's home directory (line 1) and download the source code using subversion (svn) from KDE's repository (line 2). After changing into the resulting {{path|qt-copy}} directory (line 3), we run a script that manages the patches that come with &amp;lt;tt&amp;gt;qt-copy&amp;lt;/tt&amp;gt; (line 4). &lt;br /&gt;
&lt;br /&gt;
Once the patches have been applied, we then set up the build using the &amp;lt;tt&amp;gt;configure&amp;lt;/tt&amp;gt; script (line 5-6). The various command line options used are explained in the {{path|qt-copy/README.qt-copy}} file. Finally, we build the minimal requirements for KDE (line 7) and install (line 10) Qt. If install dir is the same as the current dir (line 8), then we just free some space (line 9) instead. If you want all the example and demo applications, you can either build them individually or simply do a &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; from the {{path|qt-copy}} directory. &lt;br /&gt;
&lt;br /&gt;
Note that the installation does not require root as it installs Qt locally into {{path|$QTDIR}}. Anyway, installation is only needed if {{path|$QTDIR}} differs from {{path|$HOME/qt-copy}}, which is not the case if you have exactly followed the instructions.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &amp;quot;error: X11/Xlib.h: No such file or directory&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;xorg&amp;lt;/tt&amp;gt; (the actual name may vary between operating systems, for example it is &amp;lt;tt&amp;gt;xorg-dev&amp;lt;/tt&amp;gt; on Ubuntu based systems such as Kubuntu). &lt;br /&gt;
&lt;br /&gt;
If you get an error in the configure step about missing defines, check the value of &amp;lt;tt&amp;gt;$QMAKESPEC&amp;lt;/tt&amp;gt;.  Some distributions set this to point directly to the system-installed Qt.  If &amp;lt;tt&amp;gt;unset QMAKESPEC&amp;lt;/tt&amp;gt; solves the problem, you probably want to add it to the &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt; script.&lt;br /&gt;
&lt;br /&gt;
If you get an error &amp;quot;.pch/debug-shared/QtCore&amp;quot;, this is because Qt-4.3 enables precompiled headers if your gcc supports it, but for some reason it doesn't work for you. If you use distcc, configure qt with -no-pch. If you use icecream, update to the latest icecream from svn trunk.&lt;br /&gt;
&lt;br /&gt;
Try running any Qt program, like {{program|assistant}}. '''Note:''' You may need to run &amp;lt;tt&amp;gt;xhost +local:kde-devel&amp;lt;/tt&amp;gt; as your regular kde3 user to run this application.  If it crashes in QSpanData::adjustSpanMethods, then your problem is the oxygen style. Try removing {{path|lib/kde4/plugins/styles/kstyle-oxygen.so}} and {{path|lib/kde4/plugins/styles/oxygen.so}} if they exist in the KDE install prefix.&lt;br /&gt;
&lt;br /&gt;
== HAL ==&lt;br /&gt;
&lt;br /&gt;
{{tip|You can use qdbusviewer to see if you have org.freedesktop.hal. If not, you might need a newer version of hal. If you have org.freedesktop.hal, you probably don't need to, and don't ''want'' to, roll your own HAL.}}&lt;br /&gt;
&lt;br /&gt;
If your system requires you to build a newer version of HAL, there's a decent chance you'll need to build other stuff as well, some of which may not be straight forward. Since this should only be required for older distros, instructions are on [[Getting_Started/Build/HAL| a separate page]].&lt;br /&gt;
&lt;br /&gt;
== kdesupport ==&lt;br /&gt;
&lt;br /&gt;
{{warning|Don't forget to read the [[Getting_Started/Build/KDE4#Setting_up_the_environment|Setting Up The Environment]] section first.}}&lt;br /&gt;
&lt;br /&gt;
There are several libraries that KDE applications rely on in the kdesupport module. This includes Strigi and Soprano for file metadata and search, QImageBlitz for image manipulation needed in kdebase, eigen for visual effects in applications such as Kalzium, taglib for music players and qca for some cryptographic needs. &lt;br /&gt;
&lt;br /&gt;
Strigi itself has a few dependencies as well: you will need the libraries and headers for libz, libbz2, openssl (libcrypto or libssl), libclucene (&amp;gt;=0.9.16a but watch out: version 0.9.17 does '''not''' work), and either libxml2 or libexpat.&lt;br /&gt;
&lt;br /&gt;
Please remember that if you use openSUSE, you can install the needed packages from the KDE:KDE4 buildservice repository and do not have to bother with fiddling the details below. Skip to the kdelibs section. &lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/&lt;br /&gt;
 cd kdesupport&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1). We download the sources in kdesupport using subversion (line 2), go into the new {{path|~/kde/src/kdesupport}} directory (line 3), and commence the build (line 4). This will leave us in the kdesupport build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &lt;br /&gt;
   cmakekde: command not found&lt;br /&gt;
then you have to go manually into the kdesupport directory in ~ and execute the command cmakekde. if this still doesn't work, then something is wrong with your bashrc.&lt;br /&gt;
&lt;br /&gt;
If you get &lt;br /&gt;
 CMake Error: This project requires some variables to be set,&lt;br /&gt;
 and cmake can not find them.&lt;br /&gt;
 Please set the following variables:&lt;br /&gt;
 LIBXML2_INCLUDE_DIR (ADVANCED)&lt;br /&gt;
you should install the development package for libxml2.&lt;br /&gt;
&lt;br /&gt;
If you get &lt;br /&gt;
 CMake Error: Could NOT find REDLAND&lt;br /&gt;
then you need librdf from the Redland.&lt;br /&gt;
If your distribution does not provide the librdf package, you can download the source there: [http://download.librdf.org/source/ http://download.librdf.org/source/] and build it.&lt;br /&gt;
(Gentoo users: The ebuild for librdf is named dev-libs/redland)&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
 Fetching external item into 'kdesupport/admin'&lt;br /&gt;
 Error validating server certificate for 'https://...'&lt;br /&gt;
see [http://techbase.kde.org/Getting_Started/Sources/Using_Subversion_with_KDE Using Subversion with KDE]&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
 FILE cannot create directory: /usr/lib[64]/qt4/plugins/crypto. Maybe need administrative privileges.&lt;br /&gt;
 &lt;br /&gt;
 make: *** [install] Error 255&lt;br /&gt;
take a second look in the .bashrc file described above, are paths correct?  ($QTDIR and $PATH are used to get the QT installation path)&lt;br /&gt;
Alternatively, you may see this error if you decided to use a distribution installed version of qt4 and skipped the Qt install above.  Either install qt-copy as describe above, or &amp;quot;sudo make install&amp;quot;. If you use &amp;quot;sudo make install&amp;quot;, make sure that you change the ownership back to your user for some of the ~/kde subdirectories that were effected by using sudo (ie. &amp;quot;&amp;lt;tt&amp;gt;sudo chown -R kde-devel:kde-devel ~/kde&amp;lt;/tt&amp;gt;&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
If you get a message related to &lt;br /&gt;
   target libQtTest.so not found&lt;br /&gt;
you may need to recompile qt-copy. This time you should take out&lt;br /&gt;
   -nomake demos -nomake examples&lt;br /&gt;
from the configure command, so that Qt generates library QtTest.&lt;br /&gt;
&lt;br /&gt;
== kdelibs ==&lt;br /&gt;
&lt;br /&gt;
We can now move on to building KDE's base libraries.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cd   &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 cd kdelibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 2). We download the sources for kdelibs using subversion (line 3), go into the new {{path|~/kde/src/KDE/kdelibs}} directory (line 4), and commence the build (line 5). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake $KDE_SRC/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
=== Additional KDE-specific CMake modules ===&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling kdelibs, first make sure the software in the [[Getting_Started/Build/KDE4#Software_Requirements|Required Software]] section above is installed and works. Other possible hints include:&lt;br /&gt;
* If the &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; command fails stating that CMake requires an out of source build directory, remove {{path|~/kde/src/KDE/kdelibs/CMakeCache.txt}}, and try again.&lt;br /&gt;
&lt;br /&gt;
If &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; still gives the same error then try this &lt;br /&gt;
 cd&lt;br /&gt;
 cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR \&lt;br /&gt;
 -DCMAKE_BUILD_TYPE=debugfull \&lt;br /&gt;
 -DKDE4_BUILD_TESTS=ON \&lt;br /&gt;
 ~/kde/src/KDE/kdelibs&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
* If you received an error stating &amp;quot;Please create a separate build directory and run 'cmake path_to_kdelibs [options]' there.&amp;quot;, then you need to change to your build directory before running cmakekde. (e.g &amp;lt;tt&amp;gt;cs KDE/kdelibs &amp;amp;&amp;amp; cb &amp;amp;&amp;amp; cmakekde&amp;lt;/tt&amp;gt;) If the message stays, run 'svn status' in the kdelibs directory and remove all files labeled with '?'.&lt;br /&gt;
* If Qt wasn't found or the wrong version of Qt was found, make sure that the qmake from the Qt you need is the first qmake in the path.&lt;br /&gt;
* If qmake wasn't found and you are using Debian packages, /usr/bin/qmake probably points to a wrong qmake version. To fix this run as root:&lt;br /&gt;
 update-alternatives --config qmake&lt;br /&gt;
* If the problems persist, try the CMake make-option &amp;lt;tt&amp;gt;--keep-going&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* Here you need the libungif library, otherwise you will get an error message like &amp;quot;&amp;lt;tt&amp;gt;Could NOT find GIF&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
* Qt-4.3 upgrade: if you get a link error in kjsembed talking about QScriptEngine, edit CMakeCache.txt in kdelibs and remove the lines that talk about QT_QTUITOOLS_LIBRARY, then type make again (that static library has a new dependency, and the cmake code that adds it needs to run).&lt;br /&gt;
* if you get &amp;lt;code&amp;gt;CMake Error: KDE Requires Qt to be built with SSL support&lt;br /&gt;
&amp;lt;/code&amp;gt;, install openssl-devel, remove CMakeCache.txt and re-compile QT.&lt;br /&gt;
* if you get &amp;lt;code&amp;gt;kdelibs/kimgio/ico.cpp:188: undefined reference to `QImage::jumpTable()'&amp;lt;/code&amp;gt; it means you compiled QT without QT3 support(no, linking to a true QT3 install won't work)&lt;br /&gt;
* if none of the errors above match yours, you might just try a quick'n'dirty &amp;lt;code&amp;gt;make clean&amp;lt;/code&amp;gt; in kdelibs.&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs ==&lt;br /&gt;
After &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt;, but before ''kdebase'', you need to build and install ''kdepimlibs''.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
 cd kdepimlibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/kde/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have trouble compiling kdepimlibs:&lt;br /&gt;
* the cmakekde command may require a later version of the gpgme library.  This is available from the project's web site: http://www.gnupg.org/(en)/download/index.html - please note that the build of gpgme also requires libgpg-error, also available from the same location.  Both libraries are installed by the &amp;quot;./configure&amp;quot;, &amp;quot;make&amp;quot; and &amp;quot;sudo make install&amp;quot; sequence, with the gpgme library configured with the additional &amp;quot;--with-gpg-error-prefix&amp;quot; parameter.  You may need to overwrite your existing &amp;quot;/usr/bin/gpgme-config&amp;quot; file with the newer version for the kdepimlibs to pick up the new install.&lt;br /&gt;
&lt;br /&gt;
== kdebase ==&lt;br /&gt;
kdebase is divided into three parts:&lt;br /&gt;
* '''apps'''&lt;br /&gt;
:This contains applications like Dolphin or KWrite.&lt;br /&gt;
* '''runtime'''&lt;br /&gt;
:This contains things needed by every application at runtime, like icons. It is a required dependency for each KDE application, so you have to compile and install this.&lt;br /&gt;
* '''workspace'''&lt;br /&gt;
:This contains things specific to the KDE desktop, like Plasma or the window manager. Most stuff here depends on X11. You only need it if you want to build a full KDE desktop.&lt;br /&gt;
&lt;br /&gt;
You can build all of kdebase at once, which is described in the recipe below. If you only want to build kdebase-runtime, which is the only requirement, you can replace &amp;lt;code bash&amp;gt;cd kdebase&amp;lt;/code&amp;gt; with &amp;lt;code bash&amp;gt;cd kdebase/runtime&amp;lt;/code&amp;gt; in the recipe below.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
 cd kdebase&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling kdebase:&lt;br /&gt;
* Make sure you have the &amp;lt;tt&amp;gt;libxss headers&amp;lt;/tt&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you do not have those headers)&lt;br /&gt;
* &amp;lt;tt&amp;gt;which meinproc&amp;lt;/tt&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
* if cmakekde can not find the path of kdepimlibs, edit the file {{path|$KDE_BUILD/KDE/kdebase/CMakeCache.txt}} and manually set &amp;lt;tt&amp;gt;KDEPIMLIBS_INCLUDE_DIR:PATH=$KDE_BUILD/kdepimlibs&amp;lt;/tt&amp;gt;&lt;br /&gt;
* if you get an error saying &amp;quot;Please set the following variables: X11_XTest_LIB (ADVANCED)&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;Xtst&amp;lt;/tt&amp;gt;. On some systems, this is packaged separately from &amp;lt;tt&amp;gt;xext&amp;lt;/tt&amp;gt; and called &amp;lt;tt&amp;gt;x11proto-xext-dev&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;libxtst-dev&amp;lt;/tt&amp;gt;. You may also need to remove the CMakeCache.txt file in the build dir after installing the package.&lt;br /&gt;
* the same for &amp;quot;X11_Xinerama_LIB (ADVANCED)&amp;quot; where you will need the devel package for &amp;lt;tt&amp;gt;xinerama&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* if you get an error complaining about a missing variable X11_Xrandr_LIB, you need the devel package for libxrandr (libxrandr-devel on ubuntu-systems)&lt;br /&gt;
* if you get the error &amp;quot;Please set the following variables: FONTCONFIG_INCLUDE_DIR, FONTCONFIG_LIBRARIES (ADVANCED)&amp;quot;, then you need to install  the libfontconfig headers&lt;br /&gt;
* if you get the error &amp;quot;CMake Error: This project requires some variables to be set, and cmake can not find them. Please set the following variables: KMETADATA_LIBRARIES&amp;quot;, you need to install soprano from kdesupport and to rebuild kdelibs&lt;br /&gt;
* if you get the error &amp;quot;‘XserverRegion’ does not name a type&amp;quot; make sure you have libxcomposite headers installed (&amp;lt;tt&amp;gt;libxcomposite-dev&amp;lt;/tt&amp;gt; in ubuntu)&lt;br /&gt;
* if you get the error &amp;quot;CMake Error: This project requires some variables to be set, and cmake can not find them. Please set the following variables: QT_QTOPENGL_LIBRARY (ADVANCED) &amp;quot;, try editing CMakeCache.txt and setting QT_QTOPENGL_LIBRARY:FILEPATH=/home/kde-devel/qt-copy/lib/libQtOpenGL.so&lt;br /&gt;
&lt;br /&gt;
* if you get messages as &amp;quot;KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.&amp;quot; then, either find the files containing the offending line and comment it out manually, or run the following script in ~/kde/src/KDE/kdebase: [http://www.plamadeala.com/files/macros_corrector.sh macros_corrector.sh]. It will just REMOVE the line that has &amp;quot;kde4_create_handbook&amp;quot; in it from all the found files.&lt;br /&gt;
*If you get an error (in ubuntu) concerning libxtst.so install the libxtst-dev package&lt;br /&gt;
* If you get the message &amp;quot;kdebase/workspace/kcontrol/kxkb/x11helper.cpp:131: error: ‘KGlobal’ has not been declared&amp;quot;, you might need to install libxklavier development packages.&lt;br /&gt;
* If you get &amp;quot;/home/kde-devel/kde/lib/libkio.so: undefined reference to `Strigi::AnalysisResult::AnalysisResult(std::basic_string&amp;lt;char, std::char_traits&amp;lt;char&amp;gt;, std::allocator&amp;lt;char&amp;gt; &amp;gt; const&amp;amp;, long, Strigi::IndexWriter&amp;amp;, Strigi::StreamAnalyzer&amp;amp;)'&amp;quot; you probably have an outdated version of strigi installed by your distro.&lt;br /&gt;
&lt;br /&gt;
== Running KDE 4 programs ==&lt;br /&gt;
&lt;br /&gt;
You can now run KDE 4 programs (e.g. kwrite) by typing:&lt;br /&gt;
 ssh -X kde-devel@localhost&lt;br /&gt;
 kwrite &lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
* If you get &lt;br /&gt;
 KUniqueApplication: Cannot find the D-Bus session server&lt;br /&gt;
check if you can access the display, e.g. type&lt;br /&gt;
 xclock&lt;br /&gt;
and see if a clock appears on the screen.&lt;br /&gt;
&lt;br /&gt;
* If you get something like&lt;br /&gt;
 Error: standard icon theme &amp;quot;oxygen&amp;quot; not found!&lt;br /&gt;
 &lt;br /&gt;
 ASSERT: &amp;quot;!isEmpty()&amp;quot; in file /home/kde-devel/qt-copy/include/QtCore/../../src/corelib/tools/qlist.h, line 245&lt;br /&gt;
 Aborted (core dumped)&lt;br /&gt;
You need to install kdebase - see above. It is enough to install the &amp;quot;runtime&amp;quot; directory from kdebase.&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
Although the API documentation for KDE is available online at [http://api.kde.org api.kde.org], it is sometimes useful to have it on your own disk, for example when you want to use [[Getting_Started/Set_up_KDE_4_for_development#KDevelop|KDevelop]] for browsing the documentation or when you are not able to be online all the time.&lt;br /&gt;
&lt;br /&gt;
Be aware that generating the API documentation can take several hours and takes almost half a gigabyte of diskspace.&lt;br /&gt;
The generation is handled by a script in {{path|kdelibs/doc/api}}, you need &amp;lt;tt&amp;gt;doxygen&amp;lt;/tt&amp;gt; to be able to run it. &lt;br /&gt;
&lt;br /&gt;
To build the API documentation for kdelibs, type the following:&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs KDE/kdelibs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 $KDE_SRC/KDE/kdelibs/doc/api/doxygen.sh \&lt;br /&gt;
 --doxdatadir=$KDE_SRC/KDE/kdelibs/doc/common .&lt;br /&gt;
&lt;br /&gt;
Repeat for other modules as desired.&amp;lt;br&amp;gt;&lt;br /&gt;
 cd &amp;lt;module home&amp;gt;&lt;br /&gt;
 $KDE_SRC/KDE/kdelibs/doc/api/doxygen.sh \&lt;br /&gt;
 --doxdatadir=$KDE_SRC/KDE/kdelibs/doc/common .&lt;br /&gt;
&lt;br /&gt;
Another, even easier method involves downloading this [[Doxyfile]] to your local system. Then simply change directory to where you want to create the documentation and run&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
% doxygen /path/to/Doxyfile&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Then review the file {{path|doxygen.log}} to see the doxygen errors and warnings. You'll find the actual documentation in the {{path|apidocs}} subdirectory.&lt;br /&gt;
&lt;br /&gt;
== Staying up to date ==&lt;br /&gt;
&lt;br /&gt;
In order to keep the kde4 installation up to date, each of the modules installed should be updated periodically. As Monday is the day for big changes in kdelibs, Tuesday may be the best day to do this. For each module checked out, run &amp;lt;tt&amp;gt;svn up&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs kdesupport # cs is not a typo&lt;br /&gt;
svn up&lt;br /&gt;
cb # cb is not a typo&lt;br /&gt;
make -j2 VERBOSE=1 &amp;amp;&amp;amp; make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: it is not necessary to run cmakekde for updates.&lt;br /&gt;
&lt;br /&gt;
== Installing a subset of a module ==&lt;br /&gt;
&lt;br /&gt;
Many modules in KDE contain a large number of programs which could take a long time to download and compile. In cases where you want to work only on a particular program or programs in a module, it is possible to download and compile particular folders. In some cases, certain folders are required for any build of the module. This is determined in the CMakeLists.txt file of the module. For example the [http://websvn.kde.org/trunk/KDE/kdegames/CMakeLists.txt?view=markup kdegames CMakeLists.txt file] lists:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
add_subdirectory(libkdegames)&lt;br /&gt;
add_subdirectory(libkmahjongg)&lt;br /&gt;
&lt;br /&gt;
macro_optional_add_subdirectory(doc)&lt;br /&gt;
macro_optional_add_subdirectory(lskat)&lt;br /&gt;
macro_optional_add_subdirectory(katomic)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, the libkdegames and libkmahjongg directories are required to build any of kdegames. The cmake directory will also usually be required. All the other directories (doc, katomic etc) are optional. They will be built if present on your machine. In this example, we build kmahjongg and kbattleship:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn co -N kdegames # The -N switch performs a non-recursive checkout&lt;br /&gt;
cd kdegames&lt;br /&gt;
svn up libkdegames # Get required directories&lt;br /&gt;
svn up libkmahjongg&lt;br /&gt;
svn up cmake&lt;br /&gt;
svn up kbattleship # Get optional directories&lt;br /&gt;
svn up kmahjongg&lt;br /&gt;
cmakekde &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== General troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
What can happen over time, after some &amp;lt;tt&amp;gt;svn up&amp;lt;/tt&amp;gt; commands, is that some of the tools used in the KDE build chain change their output format. For example, &amp;lt;tt&amp;gt;kcfg&amp;lt;/tt&amp;gt; files are read by &amp;lt;tt&amp;gt;kconfig_compiler&amp;lt;/tt&amp;gt; to produce configuration dialogs. CMake cannot detect those changes, and the compilation might fail. A workaround is to always force a re-generation of all such files:&lt;br /&gt;
 find $KDE_SRC/KDE/kdebase -name &amp;quot;*.kcfg&amp;quot; | xargs touch&lt;br /&gt;
The same applies to &amp;lt;tt&amp;gt;ui&amp;lt;/tt&amp;gt; files as produced by Qt designer.&lt;br /&gt;
&lt;br /&gt;
=== Locked sessions ===&lt;br /&gt;
When installing KDE 4 as a user, one will not be able to unlock a locked session. To work around this issue you can either:&lt;br /&gt;
 su&lt;br /&gt;
 chown root.root $KDEDIR/lib/kde4/libexec/kcheckpass&lt;br /&gt;
or&lt;br /&gt;
 chmod 755 $KDEDIR/lib/kde4/libexec/kcheckpass&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development|Set up KDE 4 for development]] tutorial for how to start KDE 4 applications and how to use KDevelop to work on them.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2007-12-27T16:04:50Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Qt */ clean up wording&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:I18n/Language Navigation Bar|Getting_Started/Build/KDE4}}&lt;br /&gt;
&lt;br /&gt;
{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Set up KDE 4 for development]]|&lt;br /&gt;
&lt;br /&gt;
reading=[[../kdesvn-build|kdesvn-build: The KDE From Subversion Build Tool]]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]&amp;lt;br&amp;gt;[[../KDE4/Windows|Instructions for MS Windows]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows one way to get KDE from trunk running on Linux/BSD systems. There are also tutorials for [[Getting_Started/Build/KDE4/FreeBSD|FreeBSD]], [http://www.kdelibs.com/ Windows], [[Getting_Started/Build/KDE4/Mac OS X|Mac OS X]] and [http://solaris.kde.org/ Solaris]. Throughout the tutorial the bash shell is used.&lt;br /&gt;
&lt;br /&gt;
{{warning|Expect a higher risk of build failure '''on Mondays''' when most kdelibs changes are committed. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Software Requirements ==&lt;br /&gt;
&lt;br /&gt;
The following needs to be installed to successfully use this tutorial:&lt;br /&gt;
* gcc and g++, preferably version 4.2 or higher&lt;br /&gt;
* svn, the subversion revision control client&lt;br /&gt;
* pkg-config&lt;br /&gt;
* development libraries and headers for X11, OpenGL (mesa-common-dev and libglu1-mesa-dev), libjpeg, libpng, libungif, [http://clucene.sourceforge.net/index.php/Downloads libclucene], [http://download.librdf.org/source/ librdf], libxml2 and libxslt&lt;br /&gt;
* the &amp;lt;tt&amp;gt;makeobj&amp;lt;/tt&amp;gt; script, which is included in kdesdk. You can install it from kdesdk (kdesdk-scripts on Debian) or similar packages, or download at [http://websvn.kde.org/*checkout*/trunk/KDE/kdesdk/scripts/makeobj WebSVN]&lt;br /&gt;
* the [http://freedesktop.org/wiki/Software/shared-mime-info shared-mime-info package], is the freedesktop MIME standard now used in KDE&lt;br /&gt;
* [http://boost.org/ boost], used by kdebase; after build and/or install, in order to make cmake aware about its location (FindBoost),  add the boost directory (which contains the include subdirectory) to CMAKE_INCLUDE_PATH or set a environment variable called BOOST_ROOT that points to the boost directory.&lt;br /&gt;
&lt;br /&gt;
=== Ark Linux ===&lt;br /&gt;
In Ark Linux, the build dependencies you need are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
apt-get install devel-core libxml-devel libxslt-devel bzip2-devel \&lt;br /&gt;
clucene-core-devel librdf-devel shared-mime-info xorg-Mesa-libGL-devel \&lt;br /&gt;
subversion boost-devel doxygen giflib-devel dbus-devel openssl-devel \&lt;br /&gt;
alsa-lib-devel kdesdk-scripts qt4-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you prefer a graphical interface, select the packages listed above in the &amp;quot;Install Software&amp;quot; tool in Mission Control.&lt;br /&gt;
&lt;br /&gt;
This includes installation of CMake, DBus and Qt - you can skip steps 5, 6 and 7.&lt;br /&gt;
&lt;br /&gt;
=== Arch Linux ===&lt;br /&gt;
In Arch Linux you need to install the following packages:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
pacman -Sy subversion bzip2 libxslt libxml2 \&lt;br /&gt;
shared-mime-info mesa boost dbus openssl \&lt;br /&gt;
pkgconfig xine-lib clucene&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to use qt4 from the Arch Linux repository you can install it with:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
pacman -Sy qt4&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;For clucene libraries you need the [http://aur.archlinux.org/packages.php?do_Details=1&amp;amp;ID=5968 PKGBUILD] from AUR.&amp;lt;/s&amp;gt;&lt;br /&gt;
(No longer needed since clucene has been put into the extra-repo.)&lt;br /&gt;
&lt;br /&gt;
=== Fedora ===&lt;br /&gt;
&lt;br /&gt;
Some of the required packages for building KDE4 on Fedora 7 or higher:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
yum install clucene-core-devel libxml-devel libxslt-devel \&lt;br /&gt;
dbus-devel boost-devel bzip2-devel openssl-devel alsa-lib-devel \&lt;br /&gt;
redland-devel rasqal-devel raptor-devel hspell-devel aspell-devel \&lt;br /&gt;
cups-devel xine-lib-devel avahi-devel gamin-devel OpenEXR-devel \&lt;br /&gt;
enchant-devel jasper-devel ilmbase-devel pcre-devel gpgme-devel \&lt;br /&gt;
libxklavier-devel glib-devel libusb-devel libsmbclient-devel \&lt;br /&gt;
libxcb-devel NetworkManager-devel lm_sensors-devel libraw1394-devel \&lt;br /&gt;
bluez-libs-devel gcc-c++ libXext-devel cmake subversion giflib-devel \&lt;br /&gt;
libpng-devel libXdamage-devel libXcomposite-devel libXrender-devel \&lt;br /&gt;
fontconfig-devel libXft-devel libXcursor-devel libXfixes-devel \&lt;br /&gt;
ruby-devel libXScrnSaver-devel libkdcraw-devel exiv2-devel \&lt;br /&gt;
lcms-devel libtiff-devel sqlite-devel libxkbfile-devel \&lt;br /&gt;
imlib2-devel patch gstreamer-plugins-base-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some optional packages for koffice support:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
yum install qca2-devel gsl-devel freeglut-devel \&lt;br /&gt;
GraphicsMagick-c++-devel GraphicsMagick-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This includes installation of D-Bus and CMake -- you can skip steps 5 and 6.&lt;br /&gt;
&lt;br /&gt;
DCH-10/15/07: Note - It may be simpler to spin RPMs. Note that you can edit the variables in /etc/rpm/macros.kde4 (which is provided by Rawhide kde-filesystem).&lt;br /&gt;
&lt;br /&gt;
The build stage then looks like:&lt;br /&gt;
 (but in what directory?)&lt;br /&gt;
%build&lt;br /&gt;
&lt;br /&gt;
mkdir -p %{_target_platform}&lt;br /&gt;
&lt;br /&gt;
pushd %{_target_platform}&lt;br /&gt;
&lt;br /&gt;
%{cmake_kde4} ..&lt;br /&gt;
&lt;br /&gt;
popd&lt;br /&gt;
&lt;br /&gt;
make %{?_smp_mflags} -C %{_target_platform}&lt;br /&gt;
&lt;br /&gt;
I have had better results with creating a kdesupport rpm which means that you should not install the soprano and strigi rpms. YMMV&lt;br /&gt;
&lt;br /&gt;
telsh: On a Fedora 8 System I had to install &amp;quot;qt4-devel&amp;quot; too to have qmake.&lt;br /&gt;
&lt;br /&gt;
=== Kubuntu and Debian ===&lt;br /&gt;
&lt;br /&gt;
In Kubuntu 7.04 (Feisty) and Debian (Testing/Unstable) the build dependencies you need are installed with:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo aptitude install build-essential cdbs debhelper cmake \&lt;br /&gt;
libxml2-dev libxslt1-dev libbz2-dev libclucene-dev librdf-dev \&lt;br /&gt;
shared-mime-info libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev \&lt;br /&gt;
libxext-dev libjpeg-dev libpng12-dev subversion libsm-dev libxinerama-dev \&lt;br /&gt;
libxrender-dev libfontconfig-dev libboost-dev libxcursor-dev doxygen \&lt;br /&gt;
libungif4-dev libdbus-1-dev libssl-dev libgpgme11-dev \&lt;br /&gt;
libasound2-dev kdesdk-scripts libpth-dev libjasper-dev \&lt;br /&gt;
ssh libxine-dev libqimageblitz-dev libqimageblitz4 libglib2.0-dev \&lt;br /&gt;
libxkbfile-dev libenchant-dev libbluetooth-dev network-manager-dev \&lt;br /&gt;
libsmbclient-dev libxcb1-dev libcaptury-dev libxcomposite-dev \&lt;br /&gt;
libxdamage-dev libusb-dev libgpgme11-dev libldap2-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In Kubuntu 7.10 (Gutsy) and Debian unstable you also have to add:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo aptitude install dbus-x11  libqt4-dev libqca2-dev libeigen-dev \&lt;br /&gt;
libstreamanalyzer-dev libsoprano-dev libstrigiqtdbusclient-dev \&lt;br /&gt;
libxklavier11-dev libxml2-utils libdbus-1-dev libxslt1-dev cmake libbz2-dev \&lt;br /&gt;
libungif4-dev libgpgme11-dev libboost-dev libxine-dev libxkbfile-dev&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For a fully functional API documentation framework you also need:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo aptitude install graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There is no need to compile qt or kdesupport on kubuntu gutsy. All required packages are provided by installing the above. Setup the kde4 user etc as explained in the next section, but skip over compiling qt, hal and kdesupport.&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
If you get something trouble on compile KDE4&lt;br /&gt;
Beta4 or above in Kubuntu 7.10, such as :&lt;br /&gt;
&lt;br /&gt;
Soprano version is too low&lt;br /&gt;
&lt;br /&gt;
strigi xxx.h not found...&lt;br /&gt;
&lt;br /&gt;
You may need to checkout, and compile the relevant part of&lt;br /&gt;
kdesupport source code in the SVN server of KDE4. (svn://anonsvn.kde.org/home/kde/trunk/kdesupport/soprano/)  &lt;br /&gt;
&lt;br /&gt;
This is covered when you get to the section on compiling kdesupport.&lt;br /&gt;
&lt;br /&gt;
You might also have to remove any installed soprano package : sudo apt-get remove libsoprano4 libsoprano-dev&lt;br /&gt;
&lt;br /&gt;
If you still get an error in the kdelibs section about soprano like:&lt;br /&gt;
CMake Error: Error in cmake code at&lt;br /&gt;
$src/KDE/kdelibs/cmake/modules/FindSoprano.cmake:78:&lt;br /&gt;
FILE Internal CMake error when trying to open file: /usr/include/soprano/version.h for reading.&lt;br /&gt;
&lt;br /&gt;
then delete kdelibs/CMakeCache.txt&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== openSUSE ===&lt;br /&gt;
&lt;br /&gt;
In openSUSE 10.2 and newer, you can install packages using [http://en.opensuse.org/Zypper Zypper]:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
sudo zypper install &amp;lt;package-name&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In older releases of SUSE, you can use YaST:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
su&lt;br /&gt;
yast -i &amp;lt;packagename&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Required Packages'''&lt;br /&gt;
&lt;br /&gt;
The packages you will need to install are:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
xorg-x11-devel&lt;br /&gt;
libxml2-devel &lt;br /&gt;
kdesdk3 &lt;br /&gt;
clucene-core-devel &lt;br /&gt;
boost-devel&lt;br /&gt;
libjpeg-devel &lt;br /&gt;
liblrdf-devel &lt;br /&gt;
libpng-devel &lt;br /&gt;
libxslt-devel &lt;br /&gt;
libredland-devel&lt;br /&gt;
Mesa-devel &lt;br /&gt;
giflib-devel &lt;br /&gt;
subversion &lt;br /&gt;
gcc &lt;br /&gt;
gcc-c++&lt;br /&gt;
gmp-devel (needed to build kdesupport)&lt;br /&gt;
gpgme-devel (needed to build kdepimlibs)&lt;br /&gt;
libxine1-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Optional Packages'''&lt;br /&gt;
&lt;br /&gt;
You can skip the manual and painful installation kdesupport and its dependencies ( Qt 4.3, CMake 2.4.6, DBus, Hal, clucene-core, Strigi,&lt;br /&gt;
Soprano and other Nepomuk dependencies) by adding the KDE:KDE4 repository from&lt;br /&gt;
the [http://download.opensuse.org/repositories/KDE:/KDE4/ openSUSE Build Service] to your installation sources. &lt;br /&gt;
&lt;br /&gt;
For openSUSE 10.2 and newer do:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo zypper service-add http://software.opensuse.org/download/KDE:/KDE4/openSUSE_10.2 KDE4-102&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For older versions of SUSE Linux do:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
su&lt;br /&gt;
installation_sources -a http://software.opensuse.org/download/KDE:/KDE4/[YOUR SUSE LINUX VERSION]&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now install the following packages:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
cmake&lt;br /&gt;
dbus-1-devel&lt;br /&gt;
libqt4-devel&lt;br /&gt;
libqca2-devel&lt;br /&gt;
libsoprano-devel&lt;br /&gt;
libqimageblitz-devel&lt;br /&gt;
strigi&lt;br /&gt;
strigi-ui&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are a lot more packages that are needed to satisfy the config-check, such as libusb-devel, bison etc., so look out for the config notifications and install accordingly. Please remember to skip any instructions that refer to kdesupport below. Start to compile with kdelibs. &lt;br /&gt;
&lt;br /&gt;
And for fully functional apidox framework you also need:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
graphviz&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CMake binary packages for openSUSE are available from the KDE:KDE4 repository as well as from the [http://software.opensuse.org/download/devel:/tools:/building/ openSUSE build service].&lt;br /&gt;
&lt;br /&gt;
=== Gentoo ===&lt;br /&gt;
&lt;br /&gt;
==== Install by hand ====&lt;br /&gt;
&lt;br /&gt;
You can use stable ebuilds just remember to sync your portage before you begin.&lt;br /&gt;
&lt;br /&gt;
Remember: All commands are executed as root.&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
We need to allow the following keyword masked ebuilds.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
echo 'dev-util/cmake' &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
echo 'dev-cpp/clucene' &amp;gt;&amp;gt; /etc/portage/package.keywords&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make sure you have set the berkdb USE flag for redland, otherwise nepomuk won't work.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
echo 'dev-libs/redland berkdb' &amp;gt;&amp;gt; /etc/portage/package.use&lt;br /&gt;
echo 'x11-libs/qt accessibility' &amp;gt;&amp;gt; /etc/portage/package.use&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These are the packages you will need to emerge, I included the update option into the emerge command so you will not re-emerge anything that you might already have installed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
emerge -avu 'sys-devel/gcc' \&lt;br /&gt;
  'dev-util/subversion' \&lt;br /&gt;
  'dev-util/pkgconfig'  \&lt;br /&gt;
  'x11-base/xorg-x11' \&lt;br /&gt;
  'virtual/glut' \&lt;br /&gt;
  'media-libs/mesa' \&lt;br /&gt;
  'media-libs/jpeg' \&lt;br /&gt;
  'media-libs/libpng' \&lt;br /&gt;
  'media-libs/giflib' \&lt;br /&gt;
  'dev-cpp/clucene' \&lt;br /&gt;
  'dev-util/cppunit' \&lt;br /&gt;
  'media-libs/liblrdf' \&lt;br /&gt;
  'dev-libs/libxml2' \&lt;br /&gt;
  'dev-libs/libxslt' \&lt;br /&gt;
  'x11-misc/shared-mime-info' \&lt;br /&gt;
  'dev-libs/boost' \&lt;br /&gt;
  'dev-util/cmake' \&lt;br /&gt;
  'dev-libs/redland' \&lt;br /&gt;
  'sys-apps/dbus' \&lt;br /&gt;
  'sys-apps/hal' \&lt;br /&gt;
  'x11-libs/qt'&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
You will also need to emerge either 'kde-base/kdesdk' or kde-base/kdesdk-scripts'.&lt;br /&gt;
&lt;br /&gt;
If you emerged DBUS, CMAKE, QT or HAL you may skip those sections respectively.&lt;br /&gt;
Good luck!&lt;br /&gt;
&lt;br /&gt;
==== Install via portage ====&lt;br /&gt;
&lt;br /&gt;
Also you can install the KDE 4 packages directly via &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
emerge -a &amp;lt;packagename&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the things you need, [http://gentoo-wiki.com/TIP_Overlays#Layman install layman] and then pull in the &amp;quot;kde&amp;quot; overlay (which contains experimental KDE ebuilds): &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
layman -a kde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
After this you need to adjust some USE-flags for KDE 4 and tell portage to use the testing KDE 4 ebuilds instead of the stable KDE 3 ones. &lt;br /&gt;
&lt;br /&gt;
That way portage will do the dependency tracking for you. &lt;br /&gt;
&lt;br /&gt;
Detailed instructions on building KDE 4 in Gentoo via portage can be found in the [http://overlays.gentoo.org/proj/kde/wiki KDE overlay wiki]. They are discussed in the forum thread [http://forums.gentoo.org/viewtopic-t-530111-postdays-0-postorder-asc-start-0.html KDE 4 monolithic ebuilds], which is continued [http://forums.gentoo.org/viewtopic-p-4359581.html#4359581 here]&lt;br /&gt;
&lt;br /&gt;
=== Mandriva ===&lt;br /&gt;
In Mandriva the build dependencies you need are installed with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
urpmi gcc-c++ cmake libxml2-devel libbzip2_1-devel \&lt;br /&gt;
libclucene0-devel liblrdf2-devel libmesagl1-devel \&lt;br /&gt;
subversion doxygen libdbus-1_3-devel libopenssl0.9.8-devel \&lt;br /&gt;
libalsa2-devel libgpgme-devel libboost1-devel libxine-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you're running 64-bit environment you should replace all packages starting with &amp;quot;lib...&amp;quot; to &amp;quot;lib64...&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
If you prefer a graphical interface, select the packages listed above in the &amp;quot;Install Software&amp;quot; tool in Mandriva Linux Control Center.&lt;br /&gt;
&lt;br /&gt;
This includes installation of CMake, DBus - you can skip steps 5 and 6.&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
Some people like to have a separate user account for KDE 4 (for instance an old bug deleted files by mistake), and the instructions below were written with that approach.&lt;br /&gt;
&lt;br /&gt;
However it is much more efficient to do everything with a single user account, see [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&lt;br /&gt;
for more details. &lt;br /&gt;
&lt;br /&gt;
You can still follow the instructions below, but don't put the environment variables in your &amp;lt;tt&amp;gt;.bashrc&amp;lt;/tt&amp;gt;, put them in a separate file that you source to switch to the KDE 4 environment.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Option 1: Command Line ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd -m kde-devel&lt;br /&gt;
passwd kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Warning|&lt;br /&gt;
The new kde-devel user will not be added automatically to all the user groups, which will result in not having sound, not being able to sudo, etc. Edit your /etc/groups file to add the kde-devel user to all the groups that you need (probably the groups that your usual username is already assigned to).&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Option 2: Using KControl ===&lt;br /&gt;
&lt;br /&gt;
Instead of using the commands above, you can also use the User module in the KDE Control Center if you already have KDE3 installed.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;[[Getting Started/Build/KDE4#Required Software|makeobj]]&amp;lt;/tt&amp;gt; command available. You will probably also want to modify the path to make sure it doesn't include your kde3 paths. Also if you want to use KDevelop to develop KDE 4 applications you may pass the ''-GKDevelop3'' flag to the ''cmake'' command (to make CMake generate KDevelop project files, it will help to avoid rebuilding in the future, see [[Getting_Started/Set_up_KDE_4_for_development#Setting_up_the_environment|this]]).  &lt;br /&gt;
To make it run, you have to open a new bash or to execute &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
source ~/.bashrc&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Switching to the New User ===&lt;br /&gt;
Switch to the user kde-devel: (don't forget the dash)&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
ssh -X kde-devel@localhost&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Note|&lt;br /&gt;
If the ssh command fails, check out the [[Getting_Started/Set_up_KDE_4_for_development#Launching_KDE_4_apps|Launching KDE 4 apps]] section of the [[Getting_Started/Set_up_KDE_4_for_development|KDE4 development guide]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== The development user's shell ==&lt;br /&gt;
&lt;br /&gt;
On some systems a new user is configured by default to use {{path|/bin/sh}}. If this is not the case on your system, you can skip this section. Using {{path|/bin/sh}} can be very inconvenient to work with and you may want to change it to {{path|/bin/bash}} or another shell.&lt;br /&gt;
On Ark Linux and Fedora, you can skip this step - {{path|/bin/sh}} is {{path|bash}}.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: As the kde-devel user ===&lt;br /&gt;
&lt;br /&gt;
If you don't have root privileges and your system supports the changing of your own shell with the &amp;lt;tt&amp;gt;chsh&amp;lt;/tt&amp;gt; application, then you could try to change your shell to {{path|/bin/bash}} by using:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
chsh -s /bin/bash kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: As the root user ===&lt;br /&gt;
&lt;br /&gt;
If your system comes with the &amp;lt;tt&amp;gt;usermod&amp;lt;/tt&amp;gt; application you can run the following command as root: &amp;lt;tt&amp;gt;usermod -s /bin/bash&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Another option is to use the &amp;lt;tt&amp;gt;vipw&amp;lt;/tt&amp;gt; application as root to safely edit your {{path|/etc/passwd}}. Locate 'kde-devel' in the the file. Change '{{path|/bin/sh}}' at the end of the line to read '{{path|/bin/bash}}', save your changes and exit.&lt;br /&gt;
&lt;br /&gt;
The new shell will be started automatically when you log in as the kde-devel user again.&lt;br /&gt;
&lt;br /&gt;
== D-Bus ==&lt;br /&gt;
QtDBus and KDE are known to work with D-Bus versions 0.62, as well as 0.92 and upwards. Versions 0.60 and 0.61 may work too but are not tested. Versions 0.90 and 0.91 are known not to work. We recommend using post-1.0 release versions (at least 0.94), so consider upgrading if you haven't done so.&lt;br /&gt;
&lt;br /&gt;
You may skip this section if you have a recent D-Bus version or if you don't want to upgrade. You probably want to skip building the bindings until/unless you know you will be building HAL (see below).&lt;br /&gt;
&lt;br /&gt;
Before running these steps in the recipe, make sure your X11 headers and libraries are available. The configure script run on line 5 of the following instructions should output:&lt;br /&gt;
 Building X11 code:        yes&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&lt;br /&gt;
{{tip|Make sure you did set up your environment correctly as described [[Getting_Started/Build/KDE4#Setting_up_the_environment|above]]. This is necessary for the &amp;lt;tt&amp;gt;cs&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;cb&amp;lt;/tt&amp;gt; functions to work.}}&lt;br /&gt;
&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]] &lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz&lt;br /&gt;
 tar -xvzf dbus-1.0.2.tar.gz&lt;br /&gt;
 cd dbus-1.0.2/&lt;br /&gt;
 ./configure --prefix=$DBUSDIR --localstatedir=/var&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 sudo dbus-uuidgen --ensure&lt;br /&gt;
&lt;br /&gt;
 cs # see above&lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.74.tar.gz&lt;br /&gt;
 tar -xvzf dbus-glib-0.74.tar.gz&lt;br /&gt;
 cd dbus-glib-0.74/&lt;br /&gt;
 ./configure --prefix=$DBUSDIR&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 cd&lt;br /&gt;
 sudo chown -R kde-devel:kde-devel *&lt;br /&gt;
&lt;br /&gt;
=== What's Happening === &lt;br /&gt;
After changing into the source directory (line 1), D-Bus source code is downloaded from freedesktop.org (line 2) and unpacked (line 3). After going into the newly created D-Bus directory (line 4), the build is set up using the supplied {{path|configure}} script (line 5). After building (line 6) and installing (line 7) D-Bus, we use the &amp;lt;tt&amp;gt;dbus-uuidgen&amp;lt;/tt&amp;gt; tool to install a machine identification file that allows the bus to start automatically when the desktop session starts (line 8).&lt;br /&gt;
&lt;br /&gt;
Note that you need write access to {{path|/var}} for the last two steps. If your system does not have the sudo command, you can use the &amp;lt;tt&amp;gt;su&amp;lt;/tt&amp;gt; command instead, e.g. &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The steps for building the glib bindings are similar to the above.&lt;br /&gt;
&lt;br /&gt;
When these two packages are done building, we must fix the file ownership because 'sudo make install' has created root owned files and directories in ~kde-devel/kde.&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Skip this if you have [http://cmake.org/ CMake] &amp;gt;=2.4.5 installed. &lt;br /&gt;
You should be able to directly use the binary packages available on the [http://www.cmake.org/HTML/Download.html CMake site]. There are also distribution specific packages available.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click Here to learn more]] &lt;br /&gt;
 wget http://www.cmake.org/files/v2.4/cmake-2.4.6.tar.gz&lt;br /&gt;
 tar -zxf cmake-2.4.6.tar.gz&lt;br /&gt;
 mkdir cmake-build&lt;br /&gt;
 cd cmake-build &lt;br /&gt;
 ../cmake-2.4.6/bootstrap&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
First, we go back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's source directory (line 1), get the CMake sources (line 2) and unpack them (line 3). We create a directory to build CMake in (line 4) and go into it (line 5). We then run the CMake bootstrap script to set up the CMake build (line 6), then make (line 7) and install it (line 8) using the root user.&lt;br /&gt;
&lt;br /&gt;
If your system does not have the &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; command, you can instead do &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
Next we need to get Qt4. KDE is guaranteed to build against any Qt 4.3. Qt 4.2 and earlier are not supported and will not work. &lt;br /&gt;
&lt;br /&gt;
If your distribution has a recent version of Qt4, that should work. Most distros backport bugfixes, and some distros, like Debian or openSUSE, even use the patches from KDE svn. In other cases, using the recipe below will give you a more stable Qt than your distro. Refer to the distribution specific sections above for more information. &lt;br /&gt;
&lt;br /&gt;
As for now Qt3 compatibility layer in Qt 4 is mandatory, so please &amp;lt;b&amp;gt;avoid&amp;lt;/b&amp;gt; using &amp;quot;-no-qt3support&amp;quot; option when building Qt4 from sources.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cd # Note: qt-copy lives in $HOME/qt-copy. See $QTDIR in [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|&amp;lt;font color=red&amp;gt;.bashrc&amp;lt;/font&amp;gt;]] &lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
 cd qt-copy&lt;br /&gt;
 ./apply_patches&lt;br /&gt;
 ./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
  -prefix $QTDIR -nomake examples -nomake demos&lt;br /&gt;
 make -j2&lt;br /&gt;
&lt;br /&gt;
 # if we don't install, we'll just clear obj files to&lt;br /&gt;
 # save disk space&lt;br /&gt;
 if [ $QTDIR = `pwd` ]; then \&lt;br /&gt;
 find . -name '*.o' -delete ; \&lt;br /&gt;
 else make install; fi;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We switch back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's home directory (line 1) and download the source code using subversion (svn) from KDE's repository (line 2). After changing into the resulting {{path|qt-copy}} directory (line 3), we run a script that manages the patches that come with &amp;lt;tt&amp;gt;qt-copy&amp;lt;/tt&amp;gt; (line 4). &lt;br /&gt;
&lt;br /&gt;
Once the patches have been applied, we then set up the build using the &amp;lt;tt&amp;gt;configure&amp;lt;/tt&amp;gt; script (line 5-6). The various command line options used are explained in the {{path|qt-copy/README.qt-copy}} file. Finally, we build the minimal requirements for KDE (line 7) and install (line 10) Qt. If install dir is the same as the current dir (line 8), then we just free some space (line 9) instead. If you want all the example and demo applications, you can either build them individually or simply do a &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; from the {{path|qt-copy}} directory. &lt;br /&gt;
&lt;br /&gt;
Note that the installation does not require root as it installs Qt locally into {{path|$QTDIR}}. Anyway, installation is only needed if {{path|$QTDIR}} differs from {{path|$HOME/qt-copy}}, which is not the case if you have exactly followed the instructions.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &amp;quot;error: X11/Xlib.h: No such file or directory&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;xorg&amp;lt;/tt&amp;gt; (the actual name may vary between operating systems, for example it is &amp;lt;tt&amp;gt;xorg-dev&amp;lt;/tt&amp;gt; on Ubuntu based systems such as Kubuntu). &lt;br /&gt;
&lt;br /&gt;
If you get an error in the configure step about missing defines, check the value of &amp;lt;tt&amp;gt;$QMAKESPEC&amp;lt;/tt&amp;gt;.  Some distributions set this to point directly to the system-installed Qt.  If &amp;lt;tt&amp;gt;unset QMAKESPEC&amp;lt;/tt&amp;gt; solves the problem, you probably want to add it to the &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt; script.&lt;br /&gt;
&lt;br /&gt;
If you get an error &amp;quot;.pch/debug-shared/QtCore&amp;quot;, this is because Qt-4.3 enables precompiled headers if your gcc supports it, but for some reason it doesn't work for you. If you use distcc, configure qt with -no-pch. If you use icecream, update to the latest icecream from svn trunk.&lt;br /&gt;
&lt;br /&gt;
Try running any Qt program, like {{program|assistant}}. '''Note:''' You may need to run &amp;lt;tt&amp;gt;xhost +local:kde-devel&amp;lt;/tt&amp;gt; as your regular kde3 user to run this application.  If it crashes in QSpanData::adjustSpanMethods, then your problem is the oxygen style. Try removing {{path|lib/kde4/plugins/styles/kstyle-oxygen.so}} and {{path|lib/kde4/plugins/styles/oxygen.so}} if they exist in the KDE install prefix.&lt;br /&gt;
&lt;br /&gt;
== HAL ==&lt;br /&gt;
&lt;br /&gt;
{{tip|You can use qdbusviewer to see if you have org.freedesktop.hal. If not, you might need a newer version of hal. If you have org.freedesktop.hal, you probably don't need to, and don't ''want'' to, roll your own HAL.}}&lt;br /&gt;
&lt;br /&gt;
If your system requires you to build a newer version of HAL, there's a decent chance you'll need to build other stuff as well, some of which may not be straight forward. Since this should only be required for older distros, instructions are on [[Getting_Started/Build/HAL| a separate page]].&lt;br /&gt;
&lt;br /&gt;
== kdesupport ==&lt;br /&gt;
&lt;br /&gt;
{{warning|Don't forget to read the [[Getting_Started/Build/KDE4#Setting_up_the_environment|Setting Up The Environment]] section first.}}&lt;br /&gt;
&lt;br /&gt;
There are several libraries that KDE applications rely on in the kdesupport module. This includes Strigi and Soprano for file metadata and search, QImageBlitz for image manipulation needed in kdebase, eigen for visual effects in applications such as Kalzium, taglib for music players and qca for some cryptographic needs. &lt;br /&gt;
&lt;br /&gt;
Strigi itself has a few dependencies as well: you will need the libraries and headers for libz, libbz2, openssl (libcrypto or libssl), libclucene (&amp;gt;=0.9.16a but watch out: version 0.9.17 does '''not''' work), and either libxml2 or libexpat.&lt;br /&gt;
&lt;br /&gt;
Please remember that if you use openSUSE, you can install the needed packages from the KDE:KDE4 buildservice repository and do not have to bother with fiddling the details below. Skip to the kdelibs section. &lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/&lt;br /&gt;
 cd kdesupport&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1). We download the sources in kdesupport using subversion (line 2), go into the new {{path|~/kde/src/kdesupport}} directory (line 3), and commence the build (line 4). This will leave us in the kdesupport build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &lt;br /&gt;
   cmakekde: command not found&lt;br /&gt;
then you have to go manually into the kdesupport directory in ~ and execute the command cmakekde. if this still doesn't work, then something is wrong with your bashrc.&lt;br /&gt;
&lt;br /&gt;
If you get &lt;br /&gt;
 CMake Error: This project requires some variables to be set,&lt;br /&gt;
 and cmake can not find them.&lt;br /&gt;
 Please set the following variables:&lt;br /&gt;
 LIBXML2_INCLUDE_DIR (ADVANCED)&lt;br /&gt;
you should install the development package for libxml2.&lt;br /&gt;
&lt;br /&gt;
If you get &lt;br /&gt;
 CMake Error: Could NOT find REDLAND&lt;br /&gt;
then you need librdf from the Redland.&lt;br /&gt;
If your distribution does not provide the librdf package, you can download the source there: [http://download.librdf.org/source/ http://download.librdf.org/source/] and build it.&lt;br /&gt;
(Gentoo users: The ebuild for librdf is named dev-libs/redland)&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
 Fetching external item into 'kdesupport/admin'&lt;br /&gt;
 Error validating server certificate for 'https://...'&lt;br /&gt;
see [http://techbase.kde.org/Getting_Started/Sources/Using_Subversion_with_KDE Using Subversion with KDE]&lt;br /&gt;
&lt;br /&gt;
If you get&lt;br /&gt;
 FILE cannot create directory: /usr/lib[64]/qt4/plugins/crypto. Maybe need administrative privileges.&lt;br /&gt;
 &lt;br /&gt;
 make: *** [install] Error 255&lt;br /&gt;
take a second look in the .bashrc file described above, are paths correct?  ($QTDIR and $PATH are used to get the QT installation path)&lt;br /&gt;
Alternatively, you may see this error if you decided to use a distribution installed version of qt4 and skipped the Qt install above.  Either install qt-copy as describe above, or &amp;quot;sudo make install&amp;quot;. If you use &amp;quot;sudo make install&amp;quot;, make sure that you change the ownership back to your user for some of the ~/kde subdirectories that were effected by using sudo (ie. &amp;quot;&amp;lt;tt&amp;gt;sudo chown -R kde-devel:kde-devel ~/kde&amp;lt;/tt&amp;gt;&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
If you get a message related to &lt;br /&gt;
   target libQtTest.so not found&lt;br /&gt;
you may need to recompile qt-copy. This time you should take out&lt;br /&gt;
   -nomake demos -nomake examples&lt;br /&gt;
from the configure command, so that Qt generates library QtTest.&lt;br /&gt;
&lt;br /&gt;
== kdelibs ==&lt;br /&gt;
&lt;br /&gt;
We can now move on to building KDE's base libraries.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
 cd   &lt;br /&gt;
 cs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 cd kdelibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 2). We download the sources for kdelibs using subversion (line 3), go into the new {{path|~/kde/src/KDE/kdelibs}} directory (line 4), and commence the build (line 5). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake $KDE_SRC/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
=== Additional KDE-specific CMake modules ===&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling kdelibs, first make sure the software in the [[Getting_Started/Build/KDE4#Software_Requirements|Required Software]] section above is installed and works. Other possible hints include:&lt;br /&gt;
* If the &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; command fails stating that CMake requires an out of source build directory, remove {{path|~/kde/src/KDE/kdelibs/CMakeCache.txt}}, and try again.&lt;br /&gt;
&lt;br /&gt;
If &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; still gives the same error then try this &lt;br /&gt;
 cd&lt;br /&gt;
 cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR \&lt;br /&gt;
 -DCMAKE_BUILD_TYPE=debugfull \&lt;br /&gt;
 -DKDE4_BUILD_TESTS=ON \&lt;br /&gt;
 ~/kde/src/KDE/kdelibs&lt;br /&gt;
 make&lt;br /&gt;
 make install&lt;br /&gt;
* If you received an error stating &amp;quot;Please create a separate build directory and run 'cmake path_to_kdelibs [options]' there.&amp;quot;, then you need to change to your build directory before running cmakekde. (e.g &amp;lt;tt&amp;gt;cs KDE/kdelibs &amp;amp;&amp;amp; cb &amp;amp;&amp;amp; cmakekde&amp;lt;/tt&amp;gt;) If the message stays, run 'svn status' in the kdelibs directory and remove all files labeled with '?'.&lt;br /&gt;
* If Qt wasn't found or the wrong version of Qt was found, make sure that the qmake from the Qt you need is the first qmake in the path.&lt;br /&gt;
* If qmake wasn't found and you are using Debian packages, /usr/bin/qmake probably points to a wrong qmake version. To fix this run as root:&lt;br /&gt;
 update-alternatives --config qmake&lt;br /&gt;
* If the problems persist, try the CMake make-option &amp;lt;tt&amp;gt;--keep-going&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* Here you need the libungif library, otherwise you will get an error message like &amp;quot;&amp;lt;tt&amp;gt;Could NOT find GIF&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
* Qt-4.3 upgrade: if you get a link error in kjsembed talking about QScriptEngine, edit CMakeCache.txt in kdelibs and remove the lines that talk about QT_QTUITOOLS_LIBRARY, then type make again (that static library has a new dependency, and the cmake code that adds it needs to run).&lt;br /&gt;
* if you get &amp;lt;code&amp;gt;CMake Error: KDE Requires Qt to be built with SSL support&lt;br /&gt;
&amp;lt;/code&amp;gt;, install openssl-devel, remove CMakeCache.txt and re-compile QT.&lt;br /&gt;
* if you get &amp;lt;code&amp;gt;kdelibs/kimgio/ico.cpp:188: undefined reference to `QImage::jumpTable()'&amp;lt;/code&amp;gt; it means you compiled QT without QT3 support(no, linking to a true QT3 install won't work)&lt;br /&gt;
* if none of the errors above match yours, you might just try a quick'n'dirty &amp;lt;code&amp;gt;make clean&amp;lt;/code&amp;gt; in kdelibs.&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs ==&lt;br /&gt;
After &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt;, but before ''kdebase'', you need to build and install ''kdepimlibs''.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
 cd kdepimlibs&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/kde/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have trouble compiling kdepimlibs:&lt;br /&gt;
* the cmakekde command may require a later version of the gpgme library.  This is available from the project's web site: http://www.gnupg.org/(en)/download/index.html - please note that the build of gpgme also requires libgpg-error, also available from the same location.  Both libraries are installed by the &amp;quot;./configure&amp;quot;, &amp;quot;make&amp;quot; and &amp;quot;sudo make install&amp;quot; sequence, with the gpgme library configured with the additional &amp;quot;--with-gpg-error-prefix&amp;quot; parameter.  You may need to overwrite your existing &amp;quot;/usr/bin/gpgme-config&amp;quot; file with the newer version for the kdepimlibs to pick up the new install.&lt;br /&gt;
&lt;br /&gt;
== kdebase ==&lt;br /&gt;
kdebase is divided into three parts:&lt;br /&gt;
* '''apps'''&lt;br /&gt;
:This contains applications like Dolphin or KWrite.&lt;br /&gt;
* '''runtime'''&lt;br /&gt;
:This contains things needed by every application at runtime, like icons. It is a required dependency for each KDE application, so you have to compile and install this.&lt;br /&gt;
* '''workspace'''&lt;br /&gt;
:This contains things specific to the KDE desktop, like Plasma or the window manager. Most stuff here depends on X11. You only need it if you want to build a full KDE desktop.&lt;br /&gt;
&lt;br /&gt;
You can build all of kdebase at once, which is described in the recipe below. If you only want to build kdebase-runtime, which is the only requirement, you can replace &amp;lt;code bash&amp;gt;cd kdebase&amp;lt;/code&amp;gt; with &amp;lt;code bash&amp;gt;cd kdebase/runtime&amp;lt;/code&amp;gt; in the recipe below.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs KDE # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
 cd kdebase&lt;br /&gt;
 cmakekde&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling kdebase:&lt;br /&gt;
* Make sure you have the &amp;lt;tt&amp;gt;libxss headers&amp;lt;/tt&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you do not have those headers)&lt;br /&gt;
* &amp;lt;tt&amp;gt;which meinproc&amp;lt;/tt&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
* if cmakekde can not find the path of kdepimlibs, edit the file {{path|$KDE_BUILD/KDE/kdebase/CMakeCache.txt}} and manually set &amp;lt;tt&amp;gt;KDEPIMLIBS_INCLUDE_DIR:PATH=$KDE_BUILD/kdepimlibs&amp;lt;/tt&amp;gt;&lt;br /&gt;
* if you get an error saying &amp;quot;Please set the following variables: X11_XTest_LIB (ADVANCED)&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;Xtst&amp;lt;/tt&amp;gt;. On some systems, this is packaged separately from &amp;lt;tt&amp;gt;xext&amp;lt;/tt&amp;gt; and called &amp;lt;tt&amp;gt;x11proto-xext-dev&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;libxtst-dev&amp;lt;/tt&amp;gt;. You may also need to remove the CMakeCache.txt file in the build dir after installing the package.&lt;br /&gt;
* the same for &amp;quot;X11_Xinerama_LIB (ADVANCED)&amp;quot; where you will need the devel package for &amp;lt;tt&amp;gt;xinerama&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* if you get an error complaining about a missing variable X11_Xrandr_LIB, you need the devel package for libxrandr (libxrandr-devel on ubuntu-systems)&lt;br /&gt;
* if you get the error &amp;quot;Please set the following variables: FONTCONFIG_INCLUDE_DIR, FONTCONFIG_LIBRARIES (ADVANCED)&amp;quot;, then you need to install  the libfontconfig headers&lt;br /&gt;
* if you get the error &amp;quot;CMake Error: This project requires some variables to be set, and cmake can not find them. Please set the following variables: KMETADATA_LIBRARIES&amp;quot;, you need to install soprano from kdesupport and to rebuild kdelibs&lt;br /&gt;
* if you get the error &amp;quot;‘XserverRegion’ does not name a type&amp;quot; make sure you have libxcomposite headers installed (&amp;lt;tt&amp;gt;libxcomposite-dev&amp;lt;/tt&amp;gt; in ubuntu)&lt;br /&gt;
* if you get the error &amp;quot;CMake Error: This project requires some variables to be set, and cmake can not find them. Please set the following variables: QT_QTOPENGL_LIBRARY (ADVANCED) &amp;quot;, try editing CMakeCache.txt and setting QT_QTOPENGL_LIBRARY:FILEPATH=/home/kde-devel/qt-copy/lib/libQtOpenGL.so&lt;br /&gt;
&lt;br /&gt;
* if you get messages as &amp;quot;KDE4_INSTALL_HANDBOOK() is deprecated. Remove it please. Now all is done in KDE4_CREATE_HANDBOOK.&amp;quot; then, either find the files containing the offending line and comment it out manually, or run the following script in ~/kde/src/KDE/kdebase: [http://www.plamadeala.com/files/macros_corrector.sh macros_corrector.sh]. It will just REMOVE the line that has &amp;quot;kde4_create_handbook&amp;quot; in it from all the found files.&lt;br /&gt;
*If you get an error (in ubuntu) concerning libxtst.so install the libxtst-dev package&lt;br /&gt;
* If you get the message &amp;quot;kdebase/workspace/kcontrol/kxkb/x11helper.cpp:131: error: ‘KGlobal’ has not been declared&amp;quot;, you might need to install libxklavier development packages.&lt;br /&gt;
* If you get &amp;quot;/home/kde-devel/kde/lib/libkio.so: undefined reference to `Strigi::AnalysisResult::AnalysisResult(std::basic_string&amp;lt;char, std::char_traits&amp;lt;char&amp;gt;, std::allocator&amp;lt;char&amp;gt; &amp;gt; const&amp;amp;, long, Strigi::IndexWriter&amp;amp;, Strigi::StreamAnalyzer&amp;amp;)'&amp;quot; you probably have an outdated version of strigi installed by your distro.&lt;br /&gt;
&lt;br /&gt;
== Running KDE 4 programs ==&lt;br /&gt;
&lt;br /&gt;
You can now run KDE 4 programs (e.g. kwrite) by typing:&lt;br /&gt;
 ssh -X kde-devel@localhost&lt;br /&gt;
 kwrite &lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
* If you get &lt;br /&gt;
 KUniqueApplication: Cannot find the D-Bus session server&lt;br /&gt;
check if you can access the display, e.g. type&lt;br /&gt;
 xclock&lt;br /&gt;
and see if a clock appears on the screen.&lt;br /&gt;
&lt;br /&gt;
* If you get something like&lt;br /&gt;
 Error: standard icon theme &amp;quot;oxygen&amp;quot; not found!&lt;br /&gt;
 &lt;br /&gt;
 ASSERT: &amp;quot;!isEmpty()&amp;quot; in file /home/kde-devel/qt-copy/include/QtCore/../../src/corelib/tools/qlist.h, line 245&lt;br /&gt;
 Aborted (core dumped)&lt;br /&gt;
You need to install kdebase - see above. It is enough to install the &amp;quot;runtime&amp;quot; directory from kdebase.&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
Although the API documentation for KDE is available online at [http://api.kde.org api.kde.org], it is sometimes useful to have it on your own disk, for example when you want to use [[Getting_Started/Set_up_KDE_4_for_development#KDevelop|KDevelop]] for browsing the documentation or when you are not able to be online all the time.&lt;br /&gt;
&lt;br /&gt;
Be aware that generating the API documentation can take several hours and takes almost half a gigabyte of diskspace.&lt;br /&gt;
The generation is handled by a script in {{path|kdelibs/doc/api}}, you need &amp;lt;tt&amp;gt;doxygen&amp;lt;/tt&amp;gt; to be able to run it. &lt;br /&gt;
&lt;br /&gt;
To build the API documentation for kdelibs, type the following:&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
 cs KDE/kdelibs # [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|'cs' is a bash function, click here to learn more]]&lt;br /&gt;
 $KDE_SRC/KDE/kdelibs/doc/api/doxygen.sh \&lt;br /&gt;
 --doxdatadir=$KDE_SRC/KDE/kdelibs/doc/common .&lt;br /&gt;
&lt;br /&gt;
Repeat for other modules as desired.&amp;lt;br&amp;gt;&lt;br /&gt;
 cd &amp;lt;module home&amp;gt;&lt;br /&gt;
 $KDE_SRC/KDE/kdelibs/doc/api/doxygen.sh \&lt;br /&gt;
 --doxdatadir=$KDE_SRC/KDE/kdelibs/doc/common .&lt;br /&gt;
&lt;br /&gt;
Another, even easier method involves downloading this [[Doxyfile]] to your local system. Then simply change directory to where you want to create the documentation and run&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
% doxygen /path/to/Doxyfile&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Then review the file {{path|doxygen.log}} to see the doxygen errors and warnings. You'll find the actual documentation in the {{path|apidocs}} subdirectory.&lt;br /&gt;
&lt;br /&gt;
== Staying up to date ==&lt;br /&gt;
&lt;br /&gt;
In order to keep the kde4 installation up to date, each of the modules installed should be updated periodically. As Monday is the day for big changes in kdelibs, Tuesday may be the best day to do this. For each module checked out, run &amp;lt;tt&amp;gt;svn up&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs kdesupport # cs is not a typo&lt;br /&gt;
svn up&lt;br /&gt;
cb # cb is not a typo&lt;br /&gt;
make -j2 VERBOSE=1 &amp;amp;&amp;amp; make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installing a subset of a module ==&lt;br /&gt;
&lt;br /&gt;
Many modules in KDE contain a large number of programs which could take a long time to download and compile. In cases where you want to work only on a particular program or programs in a module, it is possible to download and compile particular folders. In some cases, certain folders are required for any build of the module. This is determined in the CMakeLists.txt file of the module. For example the [http://websvn.kde.org/trunk/KDE/kdegames/CMakeLists.txt?view=markup kdegames CMakeLists.txt file] lists:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
add_subdirectory(libkdegames)&lt;br /&gt;
add_subdirectory(libkmahjongg)&lt;br /&gt;
&lt;br /&gt;
macro_optional_add_subdirectory(doc)&lt;br /&gt;
macro_optional_add_subdirectory(lskat)&lt;br /&gt;
macro_optional_add_subdirectory(katomic)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, the libkdegames and libkmahjongg directories are required to build any of kdegames. The cmake directory will also usually be required. All the other directories (doc, katomic etc) are optional. They will be built if present on your machine. In this example, we build kmahjongg and kbattleship:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn co -N kdegames # The -N switch performs a non-recursive checkout&lt;br /&gt;
cd kdegames&lt;br /&gt;
svn up libkdegames # Get required directories&lt;br /&gt;
svn up libkmahjongg&lt;br /&gt;
svn up cmake&lt;br /&gt;
svn up kbattleship # Get optional directories&lt;br /&gt;
svn up kmahjongg&lt;br /&gt;
cmakekde &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== General troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
What can happen over time, after some &amp;lt;tt&amp;gt;svn up&amp;lt;/tt&amp;gt; commands, is that some of the tools used in the KDE build chain change their output format. For example, &amp;lt;tt&amp;gt;kcfg&amp;lt;/tt&amp;gt; files are read by &amp;lt;tt&amp;gt;kconfig_compiler&amp;lt;/tt&amp;gt; to produce configuration dialogs. CMake cannot detect those changes, and the compilation might fail. A workaround is to always force a re-generation of all such files:&lt;br /&gt;
 find $KDE_SRC/KDE/kdebase -name &amp;quot;*.kcfg&amp;quot; | xargs touch&lt;br /&gt;
The same applies to &amp;lt;tt&amp;gt;ui&amp;lt;/tt&amp;gt; files as produced by Qt designer.&lt;br /&gt;
&lt;br /&gt;
=== Locked sessions ===&lt;br /&gt;
When installing KDE 4 as a user, one will not be able to unlock a locked session. To work around this issue you can either:&lt;br /&gt;
 su&lt;br /&gt;
 chown root.root $KDEDIR/lib/kde4/libexec/kcheckpass&lt;br /&gt;
or&lt;br /&gt;
 chmod 755 $KDEDIR/lib/kde4/libexec/kcheckpass&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development|Set up KDE 4 for development]] tutorial for how to start KDE 4 applications and how to use KDevelop to work on them.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4</id>
		<title>Talk:Installing third party softwares in terminal/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4"/>
				<updated>2007-12-27T14:27:17Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Notes: ~/install */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== This article is fat ====&lt;br /&gt;
&lt;br /&gt;
When I first wrote this article, it was lean and mean and simple to understand. And it was good for all distributions. Now I have the impression of a fat pig when I read this article. I pledge for removing the usual sources of error, e.g. the many subdirectories. Why do we need a directory KDE, for example ?&lt;br /&gt;
If a tutorial is not simple, it is not done.&lt;br /&gt;
&lt;br /&gt;
--[[User:Tstaerk|Tstaerk]] 14:23, 9 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:+1. A cleanup would be nice, especially before the official 4.0.0 release! Volunteers needed who do this. --[[User:Dhaumann|Dhaumann]] 22:52, 9 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:This tutorial is fine by me. Okay, that's not for newbies, but someone who wants to compile KDE4 RC1 needs to know how to follow this tutorial at least. --[[User:Chackal_sjc|Chackal_sjc]] 06:56, 27 November 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== This article is full of errors ====&lt;br /&gt;
&lt;br /&gt;
For example it *is* nessecary to install qt-copy, even if you keep it in the source directory (which leads to 394583069845 error messages on the console during the install). And kdelibs won't build unless something unknown is done with strigi - if it is installed into KDEDIR, it isn't just found.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
the heading says pre-requirments are to read &amp;quot;Anonymous SVN Quickstart Guide&amp;quot; first.   but the things it does are mostly done in this guide(but a little differently).  for example the &amp;quot;Anonymous SVN Quickstart Guide&amp;quot; has you just svn a bunch of stuff.... but that all ended up in the wrong place cause in this guide the svn'd stuff needed to go to &amp;quot;kde-devl&amp;quot;-user's dir not the normal user dir..&lt;br /&gt;
&lt;br /&gt;
:This tutorial clearly states: &amp;quot;The rest of this tutorial assumes you are running as the kde-devel user.&amp;quot; -[[User:TMG|TMG]] 14:16, 25 June 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== This article is complicated ====&lt;br /&gt;
when I wrote this article, it was lean and simple. It has been improved somewhere, but on most places worsened. An example is the directory structure (to get to qt-copy: cd &amp;amp;&amp;amp; cd qt-copy; to get to kdelibs: cs &amp;amp;&amp;amp; cd kdelibs; to get to kdepim: cs &amp;amp;&amp;amp; cd KDE &amp;amp;&amp;amp; cd kdepim - no one understands this!!!).&lt;br /&gt;
Another example is cs and cb which is quite unnecessary as my initial article shows. But of course, with the complexity as the article has NOW, it IS necessary.&lt;br /&gt;
&lt;br /&gt;
Why do you spoil a simple article so that even I no longer find my own subdirs ?&lt;br /&gt;
--­­­­[[User:Tstaerk|Tstaerk]] 10:25, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
: Where do you see &amp;quot;cs &amp;amp;&amp;amp; cd KDE &amp;amp;&amp;amp; cd kdepim&amp;quot;? Because I don't see that anywhere. In any case it would just be &amp;quot;cs kdepim&amp;quot;. Perhaps that's the bit need explaining a bit better? --[[User:Aseigo|Aseigo]] 02:48, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:To whom are you talking to? ;) There are many contributors and as it's a wiki an article probably &amp;quot;degenerates&amp;quot; automatically if noone has an eye on it. The article certainly has valuable information and simply needs a cleanup. In other words: Fix it! :) --[[User:Dhaumann|Dhaumann]] 12:20, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
::IMHO all of this cs/cb/cmakekde and such is only confusing, users just do copy&amp;amp;paste with no really knowledge of what's going on when they type those commands. This way troubleshooting is quite difficult, and they learn nothing about the '''real''' compiling way. The concept of source/build dirs is barely noted. The ''old'' http://developer.kde.org/build/trunk.html has some more commands to type, but it was quite more understandable and clear about the '''real''' steps to do. --[[user:Pino|pino]] 12:54, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
::: Yes, this article could go back to being more verbose. I suppose what is missing is an explanation of ''why'' the shortcuts are used. They are there for a reason. I also don't get the differentiation between real and not real steps; unless we now consider using the shell for what it was designed for as not real. --[[User:Aseigo|Aseigo]] 02:48, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:::: What's wrong in explicitely telling:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co .../kdelibs&lt;br /&gt;
mkdir build-kdelibs&lt;br /&gt;
cd build-kdelibs&lt;br /&gt;
cmake &amp;lt;options&amp;gt; ../kdelibs&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:::: After all, we did that with the &amp;lt;tt&amp;gt;./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt; sequence in KDE 3 times, and that worked quite fine. I still fail why we have to make our things more complicated. Moreover, these macros force fixed paths -- [[user:Pino|pino]] 23:43, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:I am also for removing cb and cs, somebody should just do it. They are indeed confusing and sometimes don't work as expected (that is why cd $KDE_SRC is needed in one place). cmakekde on the other hand could stay IMHO. -[[User:TMG|TMG]] 14:16, 25 June 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== Q: What is cs and cb? ====&lt;br /&gt;
&lt;br /&gt;
A: '''This is not a typo'''. Read the [http://techbase.kde.org/index.php?title=Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc  article about setting up your .bashrc].  Both '''cs''' and '''cb''' are bash functions, used to change to the KDE source directory and KDE build directory respectively.&lt;br /&gt;
&lt;br /&gt;
==== Q: Are there build instructions for other OS? ====&lt;br /&gt;
&lt;br /&gt;
A: Actually '''yes''', for [[Getting Started/Build/KDE4/Mac OS X|Mac OS X]]. There also is [http://www.kdelibs.com kdelibs.com] (see also [[User_talk:Jstaniek#KDElibs.com_and_developernew.kde.org_coexistence|here]]) which will be merged into this wiki in the future.&lt;br /&gt;
&lt;br /&gt;
==== Q: Isn't the install prefix, make and make install missing for modules like kdelibs and kdebase? ====&lt;br /&gt;
A: No. The shell function ''cmakekde'' handles this, have a look at the file [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.bashrc]].&lt;br /&gt;
&lt;br /&gt;
==== Q: I changed the first command of the &amp;quot;Set up QT - Recipe&amp;quot; from cd to cs because I think this was a typo. Am I right?? ====&lt;br /&gt;
A: Right --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
:: no, it was perfectly intentional. see the [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|bashrc in the productivity with KDE4 scripts tutorial]]. it has QTDIR set to ~/qt-copy. this makes sense, actually, since building Qt is done rather differently from the rest of KDE and one may not get Qt from KDE's svn in any case. so yes, it is supposed to be cd, not cs.&lt;br /&gt;
&lt;br /&gt;
::: *blush* ;) i should read more carefully. --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
==== Notes: ~/install ====&lt;br /&gt;
&lt;br /&gt;
When installing KDE4, I strongly recommend installing all tools (like dbus and cmake) and kde packages into the same place, e.g. ~/install. Qt is the only exception.&lt;br /&gt;
&lt;br /&gt;
The reason for this is because if you install some packages to ~/kde and some to /usr/local and maybe one in /usr then cmake will generate errors like:&lt;br /&gt;
&lt;br /&gt;
-- It is impossible to order the include directories.&lt;br /&gt;
&lt;br /&gt;
This is not a fatal error, so you will still be able to compile, but you will possibly be using the wrong versions of libraries and this will product problems that are very hard to diagnose.&lt;br /&gt;
&lt;br /&gt;
You may not experience any problems when installed like I advise not to, however I have and you might too in some typical situations.&lt;br /&gt;
&lt;br /&gt;
==== Install CMake modules local ====&lt;br /&gt;
&lt;br /&gt;
The CMake modules should be installed local into ~/install/cmake/modules or similar.&lt;br /&gt;
When following the current instructions [[ Getting_Started/Build/KDE4#Install_additional_CMake_modules|6.1: Install additional CMake modules]],  it's impossible to do a non-root installation, because &amp;quot;kdelibs/cmake/modules/cmake_install.cmake&amp;quot; wants to install the modules to &amp;quot;/cmake/modules&amp;quot;. (I didn't install CMake local, because my system already provided CMake &amp;gt; 2.4.3).&lt;br /&gt;
&lt;br /&gt;
I've already tried to do this, fiddling around with CMAKE_MODULE_PATH and DATA_INSTALL_DIR but couldn't get it working.&lt;br /&gt;
&lt;br /&gt;
Does anybody know how to do this properly?&lt;br /&gt;
&lt;br /&gt;
--[[User:Eliasp|Eliasp]] 15:44, 4 January 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Fixes needed ====&lt;br /&gt;
* qt-copy: Should we pass the -debug flag?  Doesn't Qt install debug information separately by default anyways?  Or is that just in the snapshot? --[[User:Mpyne|Mpyne]]&lt;br /&gt;
&lt;br /&gt;
: according to ./configure --help, the default is -release in snapshot. --[[User:Aseigo|Aseigo]] 04:33, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
* In the part of the tutorial that describes how to create a new users, shoudn't to have an edit /etc/sudoers to add permitions for kde-devel call sudo? --[[User:SilveiraNeto|SilveiraNeto]] 03:01, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
: no. why would you want them to have sudo access?&lt;br /&gt;
&lt;br /&gt;
==== libungif/giflib ====&lt;br /&gt;
Since the patents expired, why not use giflib?&lt;br /&gt;
&lt;br /&gt;
==== Old gcc and -pch flag ====&lt;br /&gt;
In Qt part I had problems with error like this: [http://www.qtforum.org/thread.php?threadid=19998 QtForum thread]. I had GCC 3.3.X installed. Using -pch flag (as in recipe) get me errors. Someone friendly gave me tip on #kde-devel not to use this flag, although I didn't test it. Instead I've just updated gcc and g++ from debian repositories. Newer version works fine as &amp;quot;Precompiled headers are supported in GCC (3.4 and newer)&amp;quot; [http://en.wikipedia.org/wiki/Precompiled_header Wikipedia pch].&lt;br /&gt;
&lt;br /&gt;
==== Build status ====&lt;br /&gt;
&lt;br /&gt;
You might want to include the [http://developer.kde.org/~dirk/dashboard/ dashboard link] to show which modules currently build and which don't. --[[User:141.35.8.106|141.35.8.106]] 13:28, 20 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
== Extra optional software ==&lt;br /&gt;
&lt;br /&gt;
- openldap&lt;br /&gt;
- cyrus&lt;br /&gt;
&lt;br /&gt;
If there was a line at the top like:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install libaaa-dev libbbb-dev ...-dev ...&lt;br /&gt;
&lt;br /&gt;
This would be very useful and save hours. Is this something we should do?&lt;br /&gt;
&lt;br /&gt;
== su - kde4 didn't set the variables ==&lt;br /&gt;
&lt;br /&gt;
after running 'su - kde4' and 'export' i saw that no variables in .bashrc were set, instead the old one (of the system) where set. I tried 'su kde4' and it worked fine. Why is that?&lt;br /&gt;
&lt;br /&gt;
I'm running gentoo 2006.1 amd64&lt;br /&gt;
&lt;br /&gt;
== Qt Flags ==&lt;br /&gt;
&lt;br /&gt;
Are &amp;quot;-pch&amp;quot; and &amp;quot;-qdbus&amp;quot; really needed? The configure script shows that they're enabled by default. --[[User:McEnroe|McEnroe]] 16:49, 19 April 2007 (CEST)&lt;br /&gt;
:Fixed. Also got rid of openssl for the same reason [[User:Logixoul|Logixoul]] 18:03, 5 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Amount of space needed? ==&lt;br /&gt;
&lt;br /&gt;
It would be nice to know how much space (roughly, in GB) you need for a setup to build and run the basic things and packages. --[[User:Liquidat|Liquidat]] 03:08, 7 June 2007 (CEST)&lt;br /&gt;
: 4.5 GB --[[User:Logixoul|Logixoul]] 18:12, 5 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Install error? ==&lt;br /&gt;
&lt;br /&gt;
With the kdesupport package I have an install error:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
CMake Error: Error in cmake code at&lt;br /&gt;
/media/local/kde-devel/kde/build/kdesupport/qca/plugins/qca-logger/cmake_install                                                                            .cmake:35:&lt;br /&gt;
FILE cannot create directory: /usr/lib/qt4/plugins/crypto. Maybe need administrative privileges.&lt;br /&gt;
Current CMake stack: /media/local/kde-devel/kde/build/kdesupport/cmake_install.c                                                                            make;/media/local/kde-devel/kde/build/kdesupport/qca/cmake_install.cmake;/media/                                                                            local/kde-devel/kde/build/kdesupport/qca/plugins/cmake_install.cmake;/media/loca                                                                            l/kde-devel/kde/build/kdesupport/qca/plugins/qca-logger/cmake_install.cmake&lt;br /&gt;
make: *** [install] Error 255&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Why is it trying to install that system wide?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Have you installed local copy of qt4 as described in this tutorial? I had the same error while trying to skip installation of local qt4 copy and use system-wide installed one. The error is gone with local copy of qt4.&lt;br /&gt;
&lt;br /&gt;
::I checked back, and the problem is that the script tries to install &amp;quot;libqca-logger.so&amp;quot; to $QTDIR - any idea how to change that?&lt;br /&gt;
&lt;br /&gt;
:::Did you set $QTDIR to the correct value? Make sure you use the .bashrc so that all environment variables are correct. -[[User:TMG|TMG]] 14:25, 25 June 2007 (CEST)&lt;br /&gt;
::::The entire point is that $QTDIR has to be set to /usr/lib/qt4/ - because I use the system wide installed copy of Qt 4.3!&lt;br /&gt;
::::So the problem is not that $QTDIR is set wrong but that the script tries to install something to $QTDIR. --[[User:141.35.185.149|141.35.185.149]] 23:38, 3 July 2007 (CEST)&lt;br /&gt;
:::::Well, then you probably need to install with sudo to get the file installed. I guess it needs to be in the Qt directory because otherwise, Qt doesn't find the files. -[[User:TMG|TMG]] 17:31, 4 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Wrong line numbers (and explanation) in the &amp;quot;What's Happening&amp;quot; section for Qt part. ==&lt;br /&gt;
&lt;br /&gt;
Line numbers:&lt;br /&gt;
----&lt;br /&gt;
Once the patches have been applied, we then set up the build using the configure script (line 5-7). Finally, we build the minimal requirements for KDE (line 8)...&lt;br /&gt;
----&lt;br /&gt;
It should be 5-6 for configure and 7 for make.&lt;br /&gt;
&lt;br /&gt;
Explanation is wrong because there is no make install command. And this directory will be used directly. But in the article: &amp;quot;...we build the minimal requirements for KDE (line 8) and install (line 9-10) Qt&amp;quot;.&lt;br /&gt;
But in lines 9-10:&lt;br /&gt;
----&lt;br /&gt;
# if we don't install, we'll just clear obj files to&lt;br /&gt;
# save disk space&lt;br /&gt;
----&lt;br /&gt;
Best regards, powerfox.&lt;br /&gt;
&lt;br /&gt;
== Wrong directories? ==&lt;br /&gt;
&lt;br /&gt;
Why does the recipe for kdesupport only say &amp;quot;cs&amp;quot; before getting the source and building while the &amp;quot;cmakekdeall&amp;quot; function in the example .bashrc says &amp;quot;cs KDE/kdesupport &amp;amp;&amp;amp; svn up &amp;amp;&amp;amp; cmakekde&amp;quot;?&lt;br /&gt;
&lt;br /&gt;
It should either use the KDE subfolder or it shouldn't but now I'm confused as to which of the two is right.&lt;br /&gt;
&lt;br /&gt;
== Problem with required soprano version (Kubuntu Gutsy Gibbon) ==&lt;br /&gt;
&lt;br /&gt;
(sorry for grammar errors if they occur)&lt;br /&gt;
So, &lt;br /&gt;
&lt;br /&gt;
I,m using Kubuntu Gutsy Gibbon and I had problems with soprano library at installing kdelibs.&lt;br /&gt;
&lt;br /&gt;
cmakekde requires to install kdelibs the version of soprano library, which does not exist in ubuntu repositories. The needed version you can find e.g. &lt;br /&gt;
here: http://ubuntu2.cica.es/ubuntu/ubuntu/pool/universe/s/soprano/&lt;br /&gt;
&lt;br /&gt;
From this website you have to download libsoprano-dev and libsoprano4 having the same suffix (e.g. ubuntu1~gutsy1_all.deb if you are using Kubuntu Gutsy Gibbon).  &lt;br /&gt;
&lt;br /&gt;
Go to directory where you downloaded packages and install each package using dpkg ( I have forgotten the order, so try and when something goes wrong, dpkg shows an information and proposes a solution).&lt;br /&gt;
&lt;br /&gt;
After this remove ~/kde/build/KDE/kdelibs/CMakeCache.txt and try again to install kdelibs.&lt;br /&gt;
&lt;br /&gt;
Good luck :)&lt;br /&gt;
&lt;br /&gt;
* It was damned hard to find, but libsoprano-dev in Gutsy is 1.96.0, and kdelibs requires &amp;gt;=1.97.1. The article says &amp;quot;in this case you need to download and build the relevant part of kdesupport&amp;quot;, but as long as the package is installed, cmakekde prefers the files in /usr/include to those under ~/kde/include. Only after removing the package, I was able to move forward.&lt;br /&gt;
* I think the real fix should be to make cmakekde prefer the local versions of include files and libraries, but until then, we should at least fix the procedure for Gutsy - please remove libsoprano-dev from the list of packages to install.&lt;br /&gt;
* Thanks, Shai. 19:53, 28 November 2007 (CET)&lt;br /&gt;
* kdelibs requires Soprano &amp;gt;=1.99 --&amp;gt; Build kdesupport and remove package libsoprano-dev and libsoprano4 : make all folks - chatmoa - 11Dec2007&lt;br /&gt;
&lt;br /&gt;
== Possible errors about required packages in openSUSE? ==&lt;br /&gt;
&lt;br /&gt;
I've been trying to set up a KDE4 development environment today on a openSUSE 10.3 system and encountered the following (possible) errors in this article:&lt;br /&gt;
&lt;br /&gt;
Missing packages:&lt;br /&gt;
&lt;br /&gt;
kdevelop3 - David Faure's cmakekde bash function uses Kdevelop3 as makefile generator. Without the kdevelop3 package cmake fails to start on my install.&lt;br /&gt;
&lt;br /&gt;
strigi-devel - Building kdelibs fails if strigi-devel is not installed&lt;br /&gt;
&lt;br /&gt;
Questionable packages:&lt;br /&gt;
&lt;br /&gt;
Following a gut feeling I'd like to ask why the following packages are required for setting up a KDE4 development environment:&lt;br /&gt;
&lt;br /&gt;
strigi &lt;br /&gt;
strigi-ui&lt;br /&gt;
kdesdk3&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4</id>
		<title>Talk:Installing third party softwares in terminal/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4"/>
				<updated>2007-12-27T14:25:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Q: Isn't the install prefix, make and make install missing for modules like kdelibs and kdebase? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== This article is fat ====&lt;br /&gt;
&lt;br /&gt;
When I first wrote this article, it was lean and mean and simple to understand. And it was good for all distributions. Now I have the impression of a fat pig when I read this article. I pledge for removing the usual sources of error, e.g. the many subdirectories. Why do we need a directory KDE, for example ?&lt;br /&gt;
If a tutorial is not simple, it is not done.&lt;br /&gt;
&lt;br /&gt;
--[[User:Tstaerk|Tstaerk]] 14:23, 9 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:+1. A cleanup would be nice, especially before the official 4.0.0 release! Volunteers needed who do this. --[[User:Dhaumann|Dhaumann]] 22:52, 9 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:This tutorial is fine by me. Okay, that's not for newbies, but someone who wants to compile KDE4 RC1 needs to know how to follow this tutorial at least. --[[User:Chackal_sjc|Chackal_sjc]] 06:56, 27 November 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== This article is full of errors ====&lt;br /&gt;
&lt;br /&gt;
For example it *is* nessecary to install qt-copy, even if you keep it in the source directory (which leads to 394583069845 error messages on the console during the install). And kdelibs won't build unless something unknown is done with strigi - if it is installed into KDEDIR, it isn't just found.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
the heading says pre-requirments are to read &amp;quot;Anonymous SVN Quickstart Guide&amp;quot; first.   but the things it does are mostly done in this guide(but a little differently).  for example the &amp;quot;Anonymous SVN Quickstart Guide&amp;quot; has you just svn a bunch of stuff.... but that all ended up in the wrong place cause in this guide the svn'd stuff needed to go to &amp;quot;kde-devl&amp;quot;-user's dir not the normal user dir..&lt;br /&gt;
&lt;br /&gt;
:This tutorial clearly states: &amp;quot;The rest of this tutorial assumes you are running as the kde-devel user.&amp;quot; -[[User:TMG|TMG]] 14:16, 25 June 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== This article is complicated ====&lt;br /&gt;
when I wrote this article, it was lean and simple. It has been improved somewhere, but on most places worsened. An example is the directory structure (to get to qt-copy: cd &amp;amp;&amp;amp; cd qt-copy; to get to kdelibs: cs &amp;amp;&amp;amp; cd kdelibs; to get to kdepim: cs &amp;amp;&amp;amp; cd KDE &amp;amp;&amp;amp; cd kdepim - no one understands this!!!).&lt;br /&gt;
Another example is cs and cb which is quite unnecessary as my initial article shows. But of course, with the complexity as the article has NOW, it IS necessary.&lt;br /&gt;
&lt;br /&gt;
Why do you spoil a simple article so that even I no longer find my own subdirs ?&lt;br /&gt;
--­­­­[[User:Tstaerk|Tstaerk]] 10:25, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
: Where do you see &amp;quot;cs &amp;amp;&amp;amp; cd KDE &amp;amp;&amp;amp; cd kdepim&amp;quot;? Because I don't see that anywhere. In any case it would just be &amp;quot;cs kdepim&amp;quot;. Perhaps that's the bit need explaining a bit better? --[[User:Aseigo|Aseigo]] 02:48, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:To whom are you talking to? ;) There are many contributors and as it's a wiki an article probably &amp;quot;degenerates&amp;quot; automatically if noone has an eye on it. The article certainly has valuable information and simply needs a cleanup. In other words: Fix it! :) --[[User:Dhaumann|Dhaumann]] 12:20, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
::IMHO all of this cs/cb/cmakekde and such is only confusing, users just do copy&amp;amp;paste with no really knowledge of what's going on when they type those commands. This way troubleshooting is quite difficult, and they learn nothing about the '''real''' compiling way. The concept of source/build dirs is barely noted. The ''old'' http://developer.kde.org/build/trunk.html has some more commands to type, but it was quite more understandable and clear about the '''real''' steps to do. --[[user:Pino|pino]] 12:54, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
::: Yes, this article could go back to being more verbose. I suppose what is missing is an explanation of ''why'' the shortcuts are used. They are there for a reason. I also don't get the differentiation between real and not real steps; unless we now consider using the shell for what it was designed for as not real. --[[User:Aseigo|Aseigo]] 02:48, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:::: What's wrong in explicitely telling:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co .../kdelibs&lt;br /&gt;
mkdir build-kdelibs&lt;br /&gt;
cd build-kdelibs&lt;br /&gt;
cmake &amp;lt;options&amp;gt; ../kdelibs&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:::: After all, we did that with the &amp;lt;tt&amp;gt;./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt; sequence in KDE 3 times, and that worked quite fine. I still fail why we have to make our things more complicated. Moreover, these macros force fixed paths -- [[user:Pino|pino]] 23:43, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:I am also for removing cb and cs, somebody should just do it. They are indeed confusing and sometimes don't work as expected (that is why cd $KDE_SRC is needed in one place). cmakekde on the other hand could stay IMHO. -[[User:TMG|TMG]] 14:16, 25 June 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== Q: What is cs and cb? ====&lt;br /&gt;
&lt;br /&gt;
A: '''This is not a typo'''. Read the [http://techbase.kde.org/index.php?title=Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc  article about setting up your .bashrc].  Both '''cs''' and '''cb''' are bash functions, used to change to the KDE source directory and KDE build directory respectively.&lt;br /&gt;
&lt;br /&gt;
==== Q: Are there build instructions for other OS? ====&lt;br /&gt;
&lt;br /&gt;
A: Actually '''yes''', for [[Getting Started/Build/KDE4/Mac OS X|Mac OS X]]. There also is [http://www.kdelibs.com kdelibs.com] (see also [[User_talk:Jstaniek#KDElibs.com_and_developernew.kde.org_coexistence|here]]) which will be merged into this wiki in the future.&lt;br /&gt;
&lt;br /&gt;
==== Q: Isn't the install prefix, make and make install missing for modules like kdelibs and kdebase? ====&lt;br /&gt;
A: No. The shell function ''cmakekde'' handles this, have a look at the file [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.bashrc]].&lt;br /&gt;
&lt;br /&gt;
==== Q: I changed the first command of the &amp;quot;Set up QT - Recipe&amp;quot; from cd to cs because I think this was a typo. Am I right?? ====&lt;br /&gt;
A: Right --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
:: no, it was perfectly intentional. see the [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|bashrc in the productivity with KDE4 scripts tutorial]]. it has QTDIR set to ~/qt-copy. this makes sense, actually, since building Qt is done rather differently from the rest of KDE and one may not get Qt from KDE's svn in any case. so yes, it is supposed to be cd, not cs.&lt;br /&gt;
&lt;br /&gt;
::: *blush* ;) i should read more carefully. --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
==== Notes: ~/install ====&lt;br /&gt;
&lt;br /&gt;
When installing KDE4, I strongly recommend installing all tools (like dbus and cmake) and kde packages into the same place, e.g. ~/install. Qt is the only exception.&lt;br /&gt;
&lt;br /&gt;
The reason for this is because if you install some packages to ~/kde and some to /usr/local and maybe one in /usr then cmake will generate errors like:&lt;br /&gt;
&lt;br /&gt;
-- It is impossible to order the include directories.&lt;br /&gt;
&lt;br /&gt;
This is not a fatal error, so you will still be able to compile, but you will possibly be using the wrong versions of libraries and this will product problems that are very hard to diagnose.&lt;br /&gt;
&lt;br /&gt;
You may not experience any problems when installed like I advise not to, however I have and you might too in some typical situations.&lt;br /&gt;
&lt;br /&gt;
Please see:&lt;br /&gt;
&lt;br /&gt;
http://developer.kde.org/build/trunk.html&lt;br /&gt;
&lt;br /&gt;
==== Install CMake modules local ====&lt;br /&gt;
&lt;br /&gt;
The CMake modules should be installed local into ~/install/cmake/modules or similar.&lt;br /&gt;
When following the current instructions [[ Getting_Started/Build/KDE4#Install_additional_CMake_modules|6.1: Install additional CMake modules]],  it's impossible to do a non-root installation, because &amp;quot;kdelibs/cmake/modules/cmake_install.cmake&amp;quot; wants to install the modules to &amp;quot;/cmake/modules&amp;quot;. (I didn't install CMake local, because my system already provided CMake &amp;gt; 2.4.3).&lt;br /&gt;
&lt;br /&gt;
I've already tried to do this, fiddling around with CMAKE_MODULE_PATH and DATA_INSTALL_DIR but couldn't get it working.&lt;br /&gt;
&lt;br /&gt;
Does anybody know how to do this properly?&lt;br /&gt;
&lt;br /&gt;
--[[User:Eliasp|Eliasp]] 15:44, 4 January 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Fixes needed ====&lt;br /&gt;
* qt-copy: Should we pass the -debug flag?  Doesn't Qt install debug information separately by default anyways?  Or is that just in the snapshot? --[[User:Mpyne|Mpyne]]&lt;br /&gt;
&lt;br /&gt;
: according to ./configure --help, the default is -release in snapshot. --[[User:Aseigo|Aseigo]] 04:33, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
* In the part of the tutorial that describes how to create a new users, shoudn't to have an edit /etc/sudoers to add permitions for kde-devel call sudo? --[[User:SilveiraNeto|SilveiraNeto]] 03:01, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
: no. why would you want them to have sudo access?&lt;br /&gt;
&lt;br /&gt;
==== libungif/giflib ====&lt;br /&gt;
Since the patents expired, why not use giflib?&lt;br /&gt;
&lt;br /&gt;
==== Old gcc and -pch flag ====&lt;br /&gt;
In Qt part I had problems with error like this: [http://www.qtforum.org/thread.php?threadid=19998 QtForum thread]. I had GCC 3.3.X installed. Using -pch flag (as in recipe) get me errors. Someone friendly gave me tip on #kde-devel not to use this flag, although I didn't test it. Instead I've just updated gcc and g++ from debian repositories. Newer version works fine as &amp;quot;Precompiled headers are supported in GCC (3.4 and newer)&amp;quot; [http://en.wikipedia.org/wiki/Precompiled_header Wikipedia pch].&lt;br /&gt;
&lt;br /&gt;
==== Build status ====&lt;br /&gt;
&lt;br /&gt;
You might want to include the [http://developer.kde.org/~dirk/dashboard/ dashboard link] to show which modules currently build and which don't. --[[User:141.35.8.106|141.35.8.106]] 13:28, 20 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
== Extra optional software ==&lt;br /&gt;
&lt;br /&gt;
- openldap&lt;br /&gt;
- cyrus&lt;br /&gt;
&lt;br /&gt;
If there was a line at the top like:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install libaaa-dev libbbb-dev ...-dev ...&lt;br /&gt;
&lt;br /&gt;
This would be very useful and save hours. Is this something we should do?&lt;br /&gt;
&lt;br /&gt;
== su - kde4 didn't set the variables ==&lt;br /&gt;
&lt;br /&gt;
after running 'su - kde4' and 'export' i saw that no variables in .bashrc were set, instead the old one (of the system) where set. I tried 'su kde4' and it worked fine. Why is that?&lt;br /&gt;
&lt;br /&gt;
I'm running gentoo 2006.1 amd64&lt;br /&gt;
&lt;br /&gt;
== Qt Flags ==&lt;br /&gt;
&lt;br /&gt;
Are &amp;quot;-pch&amp;quot; and &amp;quot;-qdbus&amp;quot; really needed? The configure script shows that they're enabled by default. --[[User:McEnroe|McEnroe]] 16:49, 19 April 2007 (CEST)&lt;br /&gt;
:Fixed. Also got rid of openssl for the same reason [[User:Logixoul|Logixoul]] 18:03, 5 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Amount of space needed? ==&lt;br /&gt;
&lt;br /&gt;
It would be nice to know how much space (roughly, in GB) you need for a setup to build and run the basic things and packages. --[[User:Liquidat|Liquidat]] 03:08, 7 June 2007 (CEST)&lt;br /&gt;
: 4.5 GB --[[User:Logixoul|Logixoul]] 18:12, 5 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Install error? ==&lt;br /&gt;
&lt;br /&gt;
With the kdesupport package I have an install error:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
CMake Error: Error in cmake code at&lt;br /&gt;
/media/local/kde-devel/kde/build/kdesupport/qca/plugins/qca-logger/cmake_install                                                                            .cmake:35:&lt;br /&gt;
FILE cannot create directory: /usr/lib/qt4/plugins/crypto. Maybe need administrative privileges.&lt;br /&gt;
Current CMake stack: /media/local/kde-devel/kde/build/kdesupport/cmake_install.c                                                                            make;/media/local/kde-devel/kde/build/kdesupport/qca/cmake_install.cmake;/media/                                                                            local/kde-devel/kde/build/kdesupport/qca/plugins/cmake_install.cmake;/media/loca                                                                            l/kde-devel/kde/build/kdesupport/qca/plugins/qca-logger/cmake_install.cmake&lt;br /&gt;
make: *** [install] Error 255&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Why is it trying to install that system wide?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Have you installed local copy of qt4 as described in this tutorial? I had the same error while trying to skip installation of local qt4 copy and use system-wide installed one. The error is gone with local copy of qt4.&lt;br /&gt;
&lt;br /&gt;
::I checked back, and the problem is that the script tries to install &amp;quot;libqca-logger.so&amp;quot; to $QTDIR - any idea how to change that?&lt;br /&gt;
&lt;br /&gt;
:::Did you set $QTDIR to the correct value? Make sure you use the .bashrc so that all environment variables are correct. -[[User:TMG|TMG]] 14:25, 25 June 2007 (CEST)&lt;br /&gt;
::::The entire point is that $QTDIR has to be set to /usr/lib/qt4/ - because I use the system wide installed copy of Qt 4.3!&lt;br /&gt;
::::So the problem is not that $QTDIR is set wrong but that the script tries to install something to $QTDIR. --[[User:141.35.185.149|141.35.185.149]] 23:38, 3 July 2007 (CEST)&lt;br /&gt;
:::::Well, then you probably need to install with sudo to get the file installed. I guess it needs to be in the Qt directory because otherwise, Qt doesn't find the files. -[[User:TMG|TMG]] 17:31, 4 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Wrong line numbers (and explanation) in the &amp;quot;What's Happening&amp;quot; section for Qt part. ==&lt;br /&gt;
&lt;br /&gt;
Line numbers:&lt;br /&gt;
----&lt;br /&gt;
Once the patches have been applied, we then set up the build using the configure script (line 5-7). Finally, we build the minimal requirements for KDE (line 8)...&lt;br /&gt;
----&lt;br /&gt;
It should be 5-6 for configure and 7 for make.&lt;br /&gt;
&lt;br /&gt;
Explanation is wrong because there is no make install command. And this directory will be used directly. But in the article: &amp;quot;...we build the minimal requirements for KDE (line 8) and install (line 9-10) Qt&amp;quot;.&lt;br /&gt;
But in lines 9-10:&lt;br /&gt;
----&lt;br /&gt;
# if we don't install, we'll just clear obj files to&lt;br /&gt;
# save disk space&lt;br /&gt;
----&lt;br /&gt;
Best regards, powerfox.&lt;br /&gt;
&lt;br /&gt;
== Wrong directories? ==&lt;br /&gt;
&lt;br /&gt;
Why does the recipe for kdesupport only say &amp;quot;cs&amp;quot; before getting the source and building while the &amp;quot;cmakekdeall&amp;quot; function in the example .bashrc says &amp;quot;cs KDE/kdesupport &amp;amp;&amp;amp; svn up &amp;amp;&amp;amp; cmakekde&amp;quot;?&lt;br /&gt;
&lt;br /&gt;
It should either use the KDE subfolder or it shouldn't but now I'm confused as to which of the two is right.&lt;br /&gt;
&lt;br /&gt;
== Problem with required soprano version (Kubuntu Gutsy Gibbon) ==&lt;br /&gt;
&lt;br /&gt;
(sorry for grammar errors if they occur)&lt;br /&gt;
So, &lt;br /&gt;
&lt;br /&gt;
I,m using Kubuntu Gutsy Gibbon and I had problems with soprano library at installing kdelibs.&lt;br /&gt;
&lt;br /&gt;
cmakekde requires to install kdelibs the version of soprano library, which does not exist in ubuntu repositories. The needed version you can find e.g. &lt;br /&gt;
here: http://ubuntu2.cica.es/ubuntu/ubuntu/pool/universe/s/soprano/&lt;br /&gt;
&lt;br /&gt;
From this website you have to download libsoprano-dev and libsoprano4 having the same suffix (e.g. ubuntu1~gutsy1_all.deb if you are using Kubuntu Gutsy Gibbon).  &lt;br /&gt;
&lt;br /&gt;
Go to directory where you downloaded packages and install each package using dpkg ( I have forgotten the order, so try and when something goes wrong, dpkg shows an information and proposes a solution).&lt;br /&gt;
&lt;br /&gt;
After this remove ~/kde/build/KDE/kdelibs/CMakeCache.txt and try again to install kdelibs.&lt;br /&gt;
&lt;br /&gt;
Good luck :)&lt;br /&gt;
&lt;br /&gt;
* It was damned hard to find, but libsoprano-dev in Gutsy is 1.96.0, and kdelibs requires &amp;gt;=1.97.1. The article says &amp;quot;in this case you need to download and build the relevant part of kdesupport&amp;quot;, but as long as the package is installed, cmakekde prefers the files in /usr/include to those under ~/kde/include. Only after removing the package, I was able to move forward.&lt;br /&gt;
* I think the real fix should be to make cmakekde prefer the local versions of include files and libraries, but until then, we should at least fix the procedure for Gutsy - please remove libsoprano-dev from the list of packages to install.&lt;br /&gt;
* Thanks, Shai. 19:53, 28 November 2007 (CET)&lt;br /&gt;
* kdelibs requires Soprano &amp;gt;=1.99 --&amp;gt; Build kdesupport and remove package libsoprano-dev and libsoprano4 : make all folks - chatmoa - 11Dec2007&lt;br /&gt;
&lt;br /&gt;
== Possible errors about required packages in openSUSE? ==&lt;br /&gt;
&lt;br /&gt;
I've been trying to set up a KDE4 development environment today on a openSUSE 10.3 system and encountered the following (possible) errors in this article:&lt;br /&gt;
&lt;br /&gt;
Missing packages:&lt;br /&gt;
&lt;br /&gt;
kdevelop3 - David Faure's cmakekde bash function uses Kdevelop3 as makefile generator. Without the kdevelop3 package cmake fails to start on my install.&lt;br /&gt;
&lt;br /&gt;
strigi-devel - Building kdelibs fails if strigi-devel is not installed&lt;br /&gt;
&lt;br /&gt;
Questionable packages:&lt;br /&gt;
&lt;br /&gt;
Following a gut feeling I'd like to ask why the following packages are required for setting up a KDE4 development environment:&lt;br /&gt;
&lt;br /&gt;
strigi &lt;br /&gt;
strigi-ui&lt;br /&gt;
kdesdk3&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4</id>
		<title>Talk:Installing third party softwares in terminal/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4"/>
				<updated>2007-12-27T14:20:11Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Q: What is cs and cb? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== This article is fat ====&lt;br /&gt;
&lt;br /&gt;
When I first wrote this article, it was lean and mean and simple to understand. And it was good for all distributions. Now I have the impression of a fat pig when I read this article. I pledge for removing the usual sources of error, e.g. the many subdirectories. Why do we need a directory KDE, for example ?&lt;br /&gt;
If a tutorial is not simple, it is not done.&lt;br /&gt;
&lt;br /&gt;
--[[User:Tstaerk|Tstaerk]] 14:23, 9 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:+1. A cleanup would be nice, especially before the official 4.0.0 release! Volunteers needed who do this. --[[User:Dhaumann|Dhaumann]] 22:52, 9 September 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:This tutorial is fine by me. Okay, that's not for newbies, but someone who wants to compile KDE4 RC1 needs to know how to follow this tutorial at least. --[[User:Chackal_sjc|Chackal_sjc]] 06:56, 27 November 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== This article is full of errors ====&lt;br /&gt;
&lt;br /&gt;
For example it *is* nessecary to install qt-copy, even if you keep it in the source directory (which leads to 394583069845 error messages on the console during the install). And kdelibs won't build unless something unknown is done with strigi - if it is installed into KDEDIR, it isn't just found.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
the heading says pre-requirments are to read &amp;quot;Anonymous SVN Quickstart Guide&amp;quot; first.   but the things it does are mostly done in this guide(but a little differently).  for example the &amp;quot;Anonymous SVN Quickstart Guide&amp;quot; has you just svn a bunch of stuff.... but that all ended up in the wrong place cause in this guide the svn'd stuff needed to go to &amp;quot;kde-devl&amp;quot;-user's dir not the normal user dir..&lt;br /&gt;
&lt;br /&gt;
:This tutorial clearly states: &amp;quot;The rest of this tutorial assumes you are running as the kde-devel user.&amp;quot; -[[User:TMG|TMG]] 14:16, 25 June 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== This article is complicated ====&lt;br /&gt;
when I wrote this article, it was lean and simple. It has been improved somewhere, but on most places worsened. An example is the directory structure (to get to qt-copy: cd &amp;amp;&amp;amp; cd qt-copy; to get to kdelibs: cs &amp;amp;&amp;amp; cd kdelibs; to get to kdepim: cs &amp;amp;&amp;amp; cd KDE &amp;amp;&amp;amp; cd kdepim - no one understands this!!!).&lt;br /&gt;
Another example is cs and cb which is quite unnecessary as my initial article shows. But of course, with the complexity as the article has NOW, it IS necessary.&lt;br /&gt;
&lt;br /&gt;
Why do you spoil a simple article so that even I no longer find my own subdirs ?&lt;br /&gt;
--­­­­[[User:Tstaerk|Tstaerk]] 10:25, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
: Where do you see &amp;quot;cs &amp;amp;&amp;amp; cd KDE &amp;amp;&amp;amp; cd kdepim&amp;quot;? Because I don't see that anywhere. In any case it would just be &amp;quot;cs kdepim&amp;quot;. Perhaps that's the bit need explaining a bit better? --[[User:Aseigo|Aseigo]] 02:48, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:To whom are you talking to? ;) There are many contributors and as it's a wiki an article probably &amp;quot;degenerates&amp;quot; automatically if noone has an eye on it. The article certainly has valuable information and simply needs a cleanup. In other words: Fix it! :) --[[User:Dhaumann|Dhaumann]] 12:20, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
::IMHO all of this cs/cb/cmakekde and such is only confusing, users just do copy&amp;amp;paste with no really knowledge of what's going on when they type those commands. This way troubleshooting is quite difficult, and they learn nothing about the '''real''' compiling way. The concept of source/build dirs is barely noted. The ''old'' http://developer.kde.org/build/trunk.html has some more commands to type, but it was quite more understandable and clear about the '''real''' steps to do. --[[user:Pino|pino]] 12:54, 28 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
::: Yes, this article could go back to being more verbose. I suppose what is missing is an explanation of ''why'' the shortcuts are used. They are there for a reason. I also don't get the differentiation between real and not real steps; unless we now consider using the shell for what it was designed for as not real. --[[User:Aseigo|Aseigo]] 02:48, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:::: What's wrong in explicitely telling:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co .../kdelibs&lt;br /&gt;
mkdir build-kdelibs&lt;br /&gt;
cd build-kdelibs&lt;br /&gt;
cmake &amp;lt;options&amp;gt; ../kdelibs&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
:::: After all, we did that with the &amp;lt;tt&amp;gt;./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&amp;lt;/tt&amp;gt; sequence in KDE 3 times, and that worked quite fine. I still fail why we have to make our things more complicated. Moreover, these macros force fixed paths -- [[user:Pino|pino]] 23:43, 29 May 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
:I am also for removing cb and cs, somebody should just do it. They are indeed confusing and sometimes don't work as expected (that is why cd $KDE_SRC is needed in one place). cmakekde on the other hand could stay IMHO. -[[User:TMG|TMG]] 14:16, 25 June 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== Q: What is cs and cb? ====&lt;br /&gt;
&lt;br /&gt;
A: '''This is not a typo'''. Read the [http://techbase.kde.org/index.php?title=Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc  article about setting up your .bashrc].  Both '''cs''' and '''cb''' are bash functions, used to change to the KDE source directory and KDE build directory respectively.&lt;br /&gt;
&lt;br /&gt;
==== Q: Are there build instructions for other OS? ====&lt;br /&gt;
&lt;br /&gt;
A: Actually '''yes''', for [[Getting Started/Build/KDE4/Mac OS X|Mac OS X]]. There also is [http://www.kdelibs.com kdelibs.com] (see also [[User_talk:Jstaniek#KDElibs.com_and_developernew.kde.org_coexistence|here]]) which will be merged into this wiki in the future.&lt;br /&gt;
&lt;br /&gt;
==== Q: Isn't the install prefix, make and make install missing for modules like kdelibs and kdebase? ====&lt;br /&gt;
A: No. The shell function ''cmakekde'' handels this, have a look at the file [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.bashrc]].&lt;br /&gt;
&lt;br /&gt;
==== Q: I changed the first command of the &amp;quot;Set up QT - Recipe&amp;quot; from cd to cs because I think this was a typo. Am I right?? ====&lt;br /&gt;
A: Right --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
:: no, it was perfectly intentional. see the [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|bashrc in the productivity with KDE4 scripts tutorial]]. it has QTDIR set to ~/qt-copy. this makes sense, actually, since building Qt is done rather differently from the rest of KDE and one may not get Qt from KDE's svn in any case. so yes, it is supposed to be cd, not cs.&lt;br /&gt;
&lt;br /&gt;
::: *blush* ;) i should read more carefully. --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
==== Notes: ~/install ====&lt;br /&gt;
&lt;br /&gt;
When installing KDE4, I strongly recommend installing all tools (like dbus and cmake) and kde packages into the same place, e.g. ~/install. Qt is the only exception.&lt;br /&gt;
&lt;br /&gt;
The reason for this is because if you install some packages to ~/kde and some to /usr/local and maybe one in /usr then cmake will generate errors like:&lt;br /&gt;
&lt;br /&gt;
-- It is impossible to order the include directories.&lt;br /&gt;
&lt;br /&gt;
This is not a fatal error, so you will still be able to compile, but you will possibly be using the wrong versions of libraries and this will product problems that are very hard to diagnose.&lt;br /&gt;
&lt;br /&gt;
You may not experience any problems when installed like I advise not to, however I have and you might too in some typical situations.&lt;br /&gt;
&lt;br /&gt;
Please see:&lt;br /&gt;
&lt;br /&gt;
http://developer.kde.org/build/trunk.html&lt;br /&gt;
&lt;br /&gt;
==== Install CMake modules local ====&lt;br /&gt;
&lt;br /&gt;
The CMake modules should be installed local into ~/install/cmake/modules or similar.&lt;br /&gt;
When following the current instructions [[ Getting_Started/Build/KDE4#Install_additional_CMake_modules|6.1: Install additional CMake modules]],  it's impossible to do a non-root installation, because &amp;quot;kdelibs/cmake/modules/cmake_install.cmake&amp;quot; wants to install the modules to &amp;quot;/cmake/modules&amp;quot;. (I didn't install CMake local, because my system already provided CMake &amp;gt; 2.4.3).&lt;br /&gt;
&lt;br /&gt;
I've already tried to do this, fiddling around with CMAKE_MODULE_PATH and DATA_INSTALL_DIR but couldn't get it working.&lt;br /&gt;
&lt;br /&gt;
Does anybody know how to do this properly?&lt;br /&gt;
&lt;br /&gt;
--[[User:Eliasp|Eliasp]] 15:44, 4 January 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Fixes needed ====&lt;br /&gt;
* qt-copy: Should we pass the -debug flag?  Doesn't Qt install debug information separately by default anyways?  Or is that just in the snapshot? --[[User:Mpyne|Mpyne]]&lt;br /&gt;
&lt;br /&gt;
: according to ./configure --help, the default is -release in snapshot. --[[User:Aseigo|Aseigo]] 04:33, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
* In the part of the tutorial that describes how to create a new users, shoudn't to have an edit /etc/sudoers to add permitions for kde-devel call sudo? --[[User:SilveiraNeto|SilveiraNeto]] 03:01, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
: no. why would you want them to have sudo access?&lt;br /&gt;
&lt;br /&gt;
==== libungif/giflib ====&lt;br /&gt;
Since the patents expired, why not use giflib?&lt;br /&gt;
&lt;br /&gt;
==== Old gcc and -pch flag ====&lt;br /&gt;
In Qt part I had problems with error like this: [http://www.qtforum.org/thread.php?threadid=19998 QtForum thread]. I had GCC 3.3.X installed. Using -pch flag (as in recipe) get me errors. Someone friendly gave me tip on #kde-devel not to use this flag, although I didn't test it. Instead I've just updated gcc and g++ from debian repositories. Newer version works fine as &amp;quot;Precompiled headers are supported in GCC (3.4 and newer)&amp;quot; [http://en.wikipedia.org/wiki/Precompiled_header Wikipedia pch].&lt;br /&gt;
&lt;br /&gt;
==== Build status ====&lt;br /&gt;
&lt;br /&gt;
You might want to include the [http://developer.kde.org/~dirk/dashboard/ dashboard link] to show which modules currently build and which don't. --[[User:141.35.8.106|141.35.8.106]] 13:28, 20 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
== Extra optional software ==&lt;br /&gt;
&lt;br /&gt;
- openldap&lt;br /&gt;
- cyrus&lt;br /&gt;
&lt;br /&gt;
If there was a line at the top like:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install libaaa-dev libbbb-dev ...-dev ...&lt;br /&gt;
&lt;br /&gt;
This would be very useful and save hours. Is this something we should do?&lt;br /&gt;
&lt;br /&gt;
== su - kde4 didn't set the variables ==&lt;br /&gt;
&lt;br /&gt;
after running 'su - kde4' and 'export' i saw that no variables in .bashrc were set, instead the old one (of the system) where set. I tried 'su kde4' and it worked fine. Why is that?&lt;br /&gt;
&lt;br /&gt;
I'm running gentoo 2006.1 amd64&lt;br /&gt;
&lt;br /&gt;
== Qt Flags ==&lt;br /&gt;
&lt;br /&gt;
Are &amp;quot;-pch&amp;quot; and &amp;quot;-qdbus&amp;quot; really needed? The configure script shows that they're enabled by default. --[[User:McEnroe|McEnroe]] 16:49, 19 April 2007 (CEST)&lt;br /&gt;
:Fixed. Also got rid of openssl for the same reason [[User:Logixoul|Logixoul]] 18:03, 5 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Amount of space needed? ==&lt;br /&gt;
&lt;br /&gt;
It would be nice to know how much space (roughly, in GB) you need for a setup to build and run the basic things and packages. --[[User:Liquidat|Liquidat]] 03:08, 7 June 2007 (CEST)&lt;br /&gt;
: 4.5 GB --[[User:Logixoul|Logixoul]] 18:12, 5 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Install error? ==&lt;br /&gt;
&lt;br /&gt;
With the kdesupport package I have an install error:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
CMake Error: Error in cmake code at&lt;br /&gt;
/media/local/kde-devel/kde/build/kdesupport/qca/plugins/qca-logger/cmake_install                                                                            .cmake:35:&lt;br /&gt;
FILE cannot create directory: /usr/lib/qt4/plugins/crypto. Maybe need administrative privileges.&lt;br /&gt;
Current CMake stack: /media/local/kde-devel/kde/build/kdesupport/cmake_install.c                                                                            make;/media/local/kde-devel/kde/build/kdesupport/qca/cmake_install.cmake;/media/                                                                            local/kde-devel/kde/build/kdesupport/qca/plugins/cmake_install.cmake;/media/loca                                                                            l/kde-devel/kde/build/kdesupport/qca/plugins/qca-logger/cmake_install.cmake&lt;br /&gt;
make: *** [install] Error 255&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Why is it trying to install that system wide?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Have you installed local copy of qt4 as described in this tutorial? I had the same error while trying to skip installation of local qt4 copy and use system-wide installed one. The error is gone with local copy of qt4.&lt;br /&gt;
&lt;br /&gt;
::I checked back, and the problem is that the script tries to install &amp;quot;libqca-logger.so&amp;quot; to $QTDIR - any idea how to change that?&lt;br /&gt;
&lt;br /&gt;
:::Did you set $QTDIR to the correct value? Make sure you use the .bashrc so that all environment variables are correct. -[[User:TMG|TMG]] 14:25, 25 June 2007 (CEST)&lt;br /&gt;
::::The entire point is that $QTDIR has to be set to /usr/lib/qt4/ - because I use the system wide installed copy of Qt 4.3!&lt;br /&gt;
::::So the problem is not that $QTDIR is set wrong but that the script tries to install something to $QTDIR. --[[User:141.35.185.149|141.35.185.149]] 23:38, 3 July 2007 (CEST)&lt;br /&gt;
:::::Well, then you probably need to install with sudo to get the file installed. I guess it needs to be in the Qt directory because otherwise, Qt doesn't find the files. -[[User:TMG|TMG]] 17:31, 4 July 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Wrong line numbers (and explanation) in the &amp;quot;What's Happening&amp;quot; section for Qt part. ==&lt;br /&gt;
&lt;br /&gt;
Line numbers:&lt;br /&gt;
----&lt;br /&gt;
Once the patches have been applied, we then set up the build using the configure script (line 5-7). Finally, we build the minimal requirements for KDE (line 8)...&lt;br /&gt;
----&lt;br /&gt;
It should be 5-6 for configure and 7 for make.&lt;br /&gt;
&lt;br /&gt;
Explanation is wrong because there is no make install command. And this directory will be used directly. But in the article: &amp;quot;...we build the minimal requirements for KDE (line 8) and install (line 9-10) Qt&amp;quot;.&lt;br /&gt;
But in lines 9-10:&lt;br /&gt;
----&lt;br /&gt;
# if we don't install, we'll just clear obj files to&lt;br /&gt;
# save disk space&lt;br /&gt;
----&lt;br /&gt;
Best regards, powerfox.&lt;br /&gt;
&lt;br /&gt;
== Wrong directories? ==&lt;br /&gt;
&lt;br /&gt;
Why does the recipe for kdesupport only say &amp;quot;cs&amp;quot; before getting the source and building while the &amp;quot;cmakekdeall&amp;quot; function in the example .bashrc says &amp;quot;cs KDE/kdesupport &amp;amp;&amp;amp; svn up &amp;amp;&amp;amp; cmakekde&amp;quot;?&lt;br /&gt;
&lt;br /&gt;
It should either use the KDE subfolder or it shouldn't but now I'm confused as to which of the two is right.&lt;br /&gt;
&lt;br /&gt;
== Problem with required soprano version (Kubuntu Gutsy Gibbon) ==&lt;br /&gt;
&lt;br /&gt;
(sorry for grammar errors if they occur)&lt;br /&gt;
So, &lt;br /&gt;
&lt;br /&gt;
I,m using Kubuntu Gutsy Gibbon and I had problems with soprano library at installing kdelibs.&lt;br /&gt;
&lt;br /&gt;
cmakekde requires to install kdelibs the version of soprano library, which does not exist in ubuntu repositories. The needed version you can find e.g. &lt;br /&gt;
here: http://ubuntu2.cica.es/ubuntu/ubuntu/pool/universe/s/soprano/&lt;br /&gt;
&lt;br /&gt;
From this website you have to download libsoprano-dev and libsoprano4 having the same suffix (e.g. ubuntu1~gutsy1_all.deb if you are using Kubuntu Gutsy Gibbon).  &lt;br /&gt;
&lt;br /&gt;
Go to directory where you downloaded packages and install each package using dpkg ( I have forgotten the order, so try and when something goes wrong, dpkg shows an information and proposes a solution).&lt;br /&gt;
&lt;br /&gt;
After this remove ~/kde/build/KDE/kdelibs/CMakeCache.txt and try again to install kdelibs.&lt;br /&gt;
&lt;br /&gt;
Good luck :)&lt;br /&gt;
&lt;br /&gt;
* It was damned hard to find, but libsoprano-dev in Gutsy is 1.96.0, and kdelibs requires &amp;gt;=1.97.1. The article says &amp;quot;in this case you need to download and build the relevant part of kdesupport&amp;quot;, but as long as the package is installed, cmakekde prefers the files in /usr/include to those under ~/kde/include. Only after removing the package, I was able to move forward.&lt;br /&gt;
* I think the real fix should be to make cmakekde prefer the local versions of include files and libraries, but until then, we should at least fix the procedure for Gutsy - please remove libsoprano-dev from the list of packages to install.&lt;br /&gt;
* Thanks, Shai. 19:53, 28 November 2007 (CET)&lt;br /&gt;
* kdelibs requires Soprano &amp;gt;=1.99 --&amp;gt; Build kdesupport and remove package libsoprano-dev and libsoprano4 : make all folks - chatmoa - 11Dec2007&lt;br /&gt;
&lt;br /&gt;
== Possible errors about required packages in openSUSE? ==&lt;br /&gt;
&lt;br /&gt;
I've been trying to set up a KDE4 development environment today on a openSUSE 10.3 system and encountered the following (possible) errors in this article:&lt;br /&gt;
&lt;br /&gt;
Missing packages:&lt;br /&gt;
&lt;br /&gt;
kdevelop3 - David Faure's cmakekde bash function uses Kdevelop3 as makefile generator. Without the kdevelop3 package cmake fails to start on my install.&lt;br /&gt;
&lt;br /&gt;
strigi-devel - Building kdelibs fails if strigi-devel is not installed&lt;br /&gt;
&lt;br /&gt;
Questionable packages:&lt;br /&gt;
&lt;br /&gt;
Following a gut feeling I'd like to ask why the following packages are required for setting up a KDE4 development environment:&lt;br /&gt;
&lt;br /&gt;
strigi &lt;br /&gt;
strigi-ui&lt;br /&gt;
kdesdk3&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2007-03-31T22:57:45Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Success! */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Starting a KDE4 Environment and Applications]]|&lt;br /&gt;
&lt;br /&gt;
reading=[http://kdesvn-build.kde.org/ kdesvn-build: The KDE From Subversion Build Tool]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows one way to get KDE from trunk running on Linux/BSD systems. Throughout the tutorial the bash shell is used. If you are interested in building KDE on other systems such as Solaris, MacOS or Microsoft Windows, please visit the [[../|Build]] page and see the links at the bottom for the respective operating systems.&lt;br /&gt;
&lt;br /&gt;
{{note|Expect a higher risk of build failure on Mondays when critical changes are implemented. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Required Software ==&lt;br /&gt;
&lt;br /&gt;
The following must be installed first before you can successfully complete this tutorial:&lt;br /&gt;
* gcc and g++ from the gcc project, preferably version 4.1 or higher&lt;br /&gt;
* svn, the subversion revision control client&lt;br /&gt;
* pkg-config&lt;br /&gt;
* development libraries and headers for X11 and OpenGL&lt;br /&gt;
* development libraries and headers for libjpeg, libpng, libungif, libclucene, libxml2 and libxslt&lt;br /&gt;
* the makeobj script. You can install it as part of a kdesdk-scripts (debian) or similar package, or just download it itself from [http://websvn.kde.org/trunk/KDE/kdesdk/scripts/makeobj?revision=600932&amp;amp;view=markup WebSVN]&lt;br /&gt;
* the shared-mime-info package, which is the freedesktop MIME standard KDE is using now&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You may also want to have the following installed:&lt;br /&gt;
* bash&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
Some people like to have a separate user account for kde (for instance an old bug deleted files by mistake), and the instructions below were written with that approach.&lt;br /&gt;
&lt;br /&gt;
However it is much more efficient to do everything with a single user account, see http://techbase.kde.org/Getting_Started/Increased_Productivity_in_KDE4_with_Scripts&lt;br /&gt;
for more details. You can still follow the instructions below, but don't put the environment variables in your .bashrc, put them in a separate file that you source to switch to the kde4 environment.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: Command Line ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd -m kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
or:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd kde-devel&lt;br /&gt;
mkdir /home/kde-devel&lt;br /&gt;
passwd kde-devel&lt;br /&gt;
chown kde-devel:kde-devel /home/kde-devel 2&amp;gt;/dev/null || \&lt;br /&gt;
chown kde-devel:users /home/kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: Using KControl ===&lt;br /&gt;
&lt;br /&gt;
Instead of using the commands above, you can also use the User module in the KDE Control Center if you already have KDE3 installed.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;makeobj&amp;lt;/tt&amp;gt; command available, this command comes with the KDE SDK scripts.&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Switching to the New User ===&lt;br /&gt;
Switch to the user kde-devel: (don't forget the dash)&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
su - kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The rest of this tutorial assumes you are running as the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user.&lt;br /&gt;
&lt;br /&gt;
== The development user's shell ==&lt;br /&gt;
&lt;br /&gt;
On some systems a new user is configured by default to use {{path|/bin/sh}}. If this is not the case on your system, you can skip this section. Using {{path|/bin/sh}} can be very inconvenient to work with and you may want to change it to {{path|/bin/bash}} or another shell.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: As the kde-devel user ===&lt;br /&gt;
&lt;br /&gt;
If you don't have root privileges and your system supports the changing of your own shell with the &amp;lt;tt&amp;gt;chsh&amp;lt;/tt&amp;gt; application, then you could try to change your shell to /bin/bash by using:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
chsh -s /bin/bash kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: As the root user ===&lt;br /&gt;
&lt;br /&gt;
If your system comes with the &amp;lt;tt&amp;gt;usermod&amp;lt;/tt&amp;gt; application you can run the following command as root: &amp;lt;tt&amp;gt;usermod -s /bin/bash&amp;lt;/tt&amp;gt;.&lt;br /&gt;
s&lt;br /&gt;
Another option is to use the &amp;lt;tt&amp;gt;vipw&amp;lt;/tt&amp;gt; application as root to safely edit your {{path|/etc/passwd}}. Locate 'kde-devel' in the the file. Change '{{path|/bin/sh}}' at the end of the line to read '{{path|/bin/bash}}', save your changes and exit.&lt;br /&gt;
&lt;br /&gt;
The new shell will be started automatically when you log in as the kde-devel user again.&lt;br /&gt;
&lt;br /&gt;
== D-Bus ==&lt;br /&gt;
QtDBus and KDE are known to work with D-Bus versions 0.62, as well as 0.92 and upwards. Versions 0.60 and 0.61 may work too but are not tested. Versions 0.90 and 0.91 are known not to work. We recommend using post-1.0 release versions (at least 0.94), so consider upgrading if you haven't done so.&lt;br /&gt;
&lt;br /&gt;
You may skip this section if you have a recent D-Bus version or if you don't want to upgrade.&lt;br /&gt;
&lt;br /&gt;
Before running these steps in the recipe, make sure your X11 headers and libraries are available. The configure script run on line 5 should output:&lt;br /&gt;
 Building X11 code:        yes&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&lt;br /&gt;
{{tip|Check [[Getting Started/Increased Productivity in KDE4 with Scripts]] for some aliases that help with KDE development. These include aliases to switch from the build into the source directory (cs) and back (cb).}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz&lt;br /&gt;
tar -xvzf dbus-1.0.2.tar.gz&lt;br /&gt;
cd dbus-1.0.2/&lt;br /&gt;
./configure --prefix=$DBUSDIR --localstatedir=$KDEDIR/var&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
dbus-uuidgen --ensure&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening === &lt;br /&gt;
After changing into the source directory (line 1), D-Bus source code is downloaded from freedesktop.org (line 2) and unpacked (line 3). After going into the newly created D-Bus directory (line 3), the build is set up using the supplied {{path|configure}} script (line 5). After building (line 6) and installing (line 7) D-Bus, we use the &amp;lt;tt&amp;gt;dbus-uuidgen&amp;lt;/tt&amp;gt; tool to install a machine identification file that allows the bus to start automatically when the desktop session starts (line 8).&lt;br /&gt;
&lt;br /&gt;
Note that you need write access to {{path|/var}} for the last two steps. If your system does not have the sudo command, you can use the &amp;lt;tt&amp;gt;su&amp;lt;/tt&amp;gt; command instead, e.g. &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Skip this if you have [http://cmake.org/ CMake] &amp;gt;=2.4.5 installed. &lt;br /&gt;
You should be able to directly use the binary packages available on the [http://www.cmake.org/HTML/Download.html CMake site]. There are also distribution specific packages available.&lt;br /&gt;
CMake binary packages for openSUSE are available from [http://software.opensuse.org/download/devel:/tools:/building/ openSUSE build service].&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
wget http://www.cmake.org/files/v2.4/cmake-2.4.6.tar.gz&lt;br /&gt;
tar zxf cmake-2.4.6.tar.gz&lt;br /&gt;
mkdir cmake-build&lt;br /&gt;
cd cmake-build&lt;br /&gt;
../cmake-2.4.6/bootstrap&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
First, we go back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's source directory (line 1), get the CMake sources (line 2) and unpack them (line 3). We create a directory to build CMake in (line 4) and go into it (line 5). We then run the CMake boostrap script to set up the CMake build (line 6), then make (line 7) and install it (line 8) using the root user.&lt;br /&gt;
&lt;br /&gt;
If your system does not have the &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; command, you can instead do &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
Next we need to get the Qt4 that is in KDE's source repository. KDE is guaranteed to build against any Qt 4.3. That is still an unreleased version, so your distribution probably doesn't have packages for it. You should use the copy in the KDE Subversion servers.&lt;br /&gt;
&lt;br /&gt;
KDE is no longer supported on Qt 4.2 and earlier versions.&lt;br /&gt;
&lt;br /&gt;
Hint: This part may take some time depending on what kind of hardware your computer is running.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
cd qt-copy&lt;br /&gt;
./apply_patches&lt;br /&gt;
./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
 -prefix $QTDIR -qdbus -pch -nomake examples \&lt;br /&gt;
 -nomake demos&lt;br /&gt;
make sub-src sub-tools&lt;br /&gt;
# make install: only if QTDIR is not the current directory!&lt;br /&gt;
make install   &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We switch back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's home directory (line 1) and download the source code using subversion (svn) from KDE's repository (line 2). After changing into the resulting {{path|qt-copy}} directory (line 3), we run a script that manages the patches that come with &amp;lt;tt&amp;gt;qt-copy&amp;lt;/tt&amp;gt; (line 4). &lt;br /&gt;
&lt;br /&gt;
Once the patches have been applied, we then set up the build using the &amp;lt;tt&amp;gt;configure&amp;lt;/tt&amp;gt; script (line 5-7). The various command line options used are explained in the {{path|qt-copy/README.qt-copy}} file. Finally, we build the minimal requirements for KDE (line 8) and install (line 9-10) Qt. If you want all the example and demo applications, you can either build them individually or simply do a &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; from the {{path|qt-copy}} directory. Note that the installation does not require root as it installs it locally into {{path|qt-copy}} itself.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &amp;quot;error: X11/Xlib.h: No such file or directory&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;xorg&amp;lt;/tt&amp;gt; (the actual name may vary between operating systems, for example it is &amp;lt;tt&amp;gt;xorg-dev&amp;lt;/tt&amp;gt; on Ubuntu based systems such as Kubuntu).&lt;br /&gt;
&lt;br /&gt;
If you get an error in the configure step about missing defines, check the value of &amp;lt;tt&amp;gt;$QMAKESPEC&amp;lt;/tt&amp;gt;.  Some distributions set this to point directly to the system-installed Qt.  If &amp;lt;tt&amp;gt;unset QMAKESPEC&amp;lt;/tt&amp;gt; solves the problem, you probably want to add it to the &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt; script.&lt;br /&gt;
&lt;br /&gt;
If you get an error &amp;quot;.pch/debug-shared/QtCore&amp;quot;, this is because Qt-4.3 enables precompiled headers if your gcc supports it, but for some reason it doesn't work for you. If you use distcc, configure qt with -no-pch. If you use icecream, update to the latest icecream from svn trunk.&lt;br /&gt;
&lt;br /&gt;
Try running any Qt program, like {{program|assistant}}. If it crashes in QSpanData::adjustSpanMethods, then your problem is the oxygen style. Try removing {{path|/lib/kde4/plugins/styles/kstyle-oxygen.so}} and {{path|/lib/kde4/plugins/styles/oxygen.so}} if they exist.&lt;br /&gt;
&lt;br /&gt;
== Strigi ==&lt;br /&gt;
&lt;br /&gt;
{{warning|If you have jumped to this section without reading section 3.3 Setting Up The Environment '''the recipes provided will not work'''. The recipes are not in error; &amp;lt;tt&amp;gt;cs&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;cb&amp;lt;/tt&amp;gt; are not typos. You '''must''' follow the instructions in section 3.3 for this tutorial to work for you.}}&lt;br /&gt;
&lt;br /&gt;
The code for getting at file metadata now relies on Strigi. To install Strigi you need the libraries and headers for libz, libbz2, openssl (libcrypto or libssl), libclucene (&amp;gt;=0.9.16), and either libxml2 or libexpat.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi&lt;br /&gt;
cd strigi&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1). We download the sources for strigi using subversion (line 2), go into the new ~/src/strigi directory (line 3), and commence the build (line 4). This will leave us in the strigi build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
== kdelibs ==&lt;br /&gt;
&lt;br /&gt;
With Qt4 and Strigi built, we can now move on to building KDE's base libraries. If you use the aforementioned [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|.bashrc]] this is where those new functions come in handy. &lt;br /&gt;
&lt;br /&gt;
Hint: This part may take some time depending on what kind of hardware your computer is running.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd $KDE_SRC&lt;br /&gt;
mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
cd kdelibs&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If this command fails stating that CMake requires an out of source build directory, remove ~/src/KDE/kdelibs/CMakeCache.txt, and try again.}}&lt;br /&gt;
&lt;br /&gt;
{{tip|If &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; still gives the same error then try this &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR \&lt;br /&gt;
-DCMAKE_BUILD_TYPE=debugfull DKDE4_BUILD_TESTS=ON \&lt;br /&gt;
~/src/KDE/kdelibs&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 2). We download the sources for kdelibs using subversion (line 3), go into the new {{path|~/src/KDE/kdelibs}} directory (line 4), and commence the build (line 5). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake ~/src/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
=== Additional KDE-specific CMake modules ===&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling kdelibs, first make sure the software in the &amp;quot;Required Software&amp;quot; section above is installed and works. Other possible hints include:&lt;br /&gt;
* If you received an error stating &amp;quot;Please create a separate build directory and run 'cmake path_to_kdelibs [options]' there.&amp;quot; then you need to change to your build directory before running cmakekde. (e.g &amp;lt;tt&amp;gt;cs KDE/kdelibs &amp;amp;&amp;amp; cb &amp;amp;&amp;amp; cmakekde&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* If Qt wasn't found or the wrong version of Qt was found, make sure that the qmake from the Qt you need is the first qmake in the path.&lt;br /&gt;
* If the problems persist, try the CMake make-option &amp;lt;tt&amp;gt;--keep-going&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* Here you need the libungif library, otherwise you will get an error message like &amp;quot;&amp;lt;tt&amp;gt;Could NOT find GIF&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
* Qt-4.3 upgrade: if you get a link error in kjsembed talking about QScriptEngine, edit CMakeCache.txt in kdelibs and remove the lines that talk about QT_QTUITOOLS_LIBRARY, then type make again (that static library has a new dependency, and the cmake code that adds it, needs to run).&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs ==&lt;br /&gt;
After &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt;, but before ''kdebase'', you need to build and install ''kdepimlibs''.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
cd kdepimlibs&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
== kdebase ==&lt;br /&gt;
You may need kdebase for some kioslaves.&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
cd kdebase&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling kdebase:&lt;br /&gt;
* Make sure you have the &amp;lt;tt&amp;gt;libxss headers&amp;lt;/tt&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers)&lt;br /&gt;
* &amp;lt;tt&amp;gt;which meinproc&amp;lt;/tt&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
* if cmakekde cannot find the path of kdepimlibs, edit the file /home/kde-devel/kdebase-build/CMakeCache.txt and manually set KDEPIMLIBS_INCLUDE_DIR:PATH=/home/kde-devel/kdepimlibs-build&lt;br /&gt;
* if you get an error saying &amp;quot;Please set the following variables: X11_XTest_LIB (ADVANCED)&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;Xtst&amp;lt;/tt&amp;gt;. On some systems, this is packaged separately from &amp;lt;tt&amp;gt;xext&amp;lt;/tt&amp;gt; and called &amp;lt;tt&amp;gt;x11proto-xext-dev&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;libxtst-dev&amp;lt;/tt&amp;gt;. You may also need to remove the CMakeCache.txt file in the build dir after installing the package.&lt;br /&gt;
* the same for &amp;quot;X11_Xinerama_LIB (ADVANCED)&amp;quot; where you will need the devel package for &amp;lt;tt&amp;gt;xinerama&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* if you get the error &amp;quot;Please set the following variables: FONTCONFIG_INCLUDE_DIR, FONTCONFIG_LIBRARIES (ADVANCED)&amp;quot;, then you need to install libfontconfig&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
Although the API documentation for KDE is available online at [http://api.kde.org api.kde.org], it is sometimes useful to have it on your own disk, for example when you want to use KDevelop for browsing the documentation or when you are not able to be online all the time.&lt;br /&gt;
&lt;br /&gt;
Be aware that generating the API documentation can take several hours and takes almost half a gigabyte of diskspace.&lt;br /&gt;
The generation is handled by a script in kdelibs/doc/api, you need ''doxygen'' to be able to run it. &lt;br /&gt;
&lt;br /&gt;
To build the API documentation for kdelibs, type the following:&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
mkdir apidox&lt;br /&gt;
cd apidox&lt;br /&gt;
../kdelibs/doc/api/doxygen.sh ../kdelibs/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development#Nested_KDE_4_session|Starting a KDE4 Environment and Applications]] tutorial for how to start working on your new KDE4 installation.&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/File:Solitary.png</id>
		<title>File:Solitary.png</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/File:Solitary.png"/>
				<updated>2007-03-31T20:42:31Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: Solitary KDE4&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Solitary KDE4&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/File:Snapshot1.png</id>
		<title>File:Snapshot1.png</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/File:Snapshot1.png"/>
				<updated>2007-03-31T20:26:16Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: Nested KDE 4 session&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Nested KDE 4 session&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Projects</id>
		<title>Projects</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Projects"/>
				<updated>2007-03-31T18:51:11Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| style=&amp;quot;margin: 1em 2.5% 0 2.5%; padding: 0 5px;&amp;quot; cellpadding=&amp;quot;5&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Klogo-official-crystal.svg|noframe|left|40px]] ||&lt;br /&gt;
;[http://www.kde.org/getinvolved Get Involved with KDE]&lt;br /&gt;
:General information for getting involved with KDE projects. Includes a mentor directory for many projects.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Action_book.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/Edu|KDE Education Project]] &lt;br /&gt;
:Developing educational software for KDE.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Klogo-official-crystal.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/Games|KDE Games Project]] &lt;br /&gt;
:Developing desktop's games for KDE.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Action_kontact_mail.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/kdepim|KDE PIM Project]]&lt;br /&gt;
:KDE Personal Information Management.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Klogo-official-crystal.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/kde.org|kde.org]] &lt;br /&gt;
:Information around the *.kde.org websites.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Action_fileprint.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/KDEPrint|KDEPrint]]&lt;br /&gt;
:Printing related information for KDE.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Action_pencil.svg|noframe|left|40px]] ||&lt;br /&gt;
;[http://wiki.koffice.org KOffice.org]&lt;br /&gt;
:Developing an Office suite based on KDE.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:logo_oxygen.png|noframe|left|40px]] ||&lt;br /&gt;
;[[/Oxygen|The Oxygen Project]] &lt;br /&gt;
:Artwork for KDE4.&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Action_world.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/Partners|Partner Program]]&lt;br /&gt;
:KDE partner program targetting ISVs.&lt;br /&gt;
|-&lt;br /&gt;
| ||&lt;br /&gt;
;[[/Plasma|Plasma]]&lt;br /&gt;
:Plasma project. A new way to desktop. (Yes, it's now a verb)&lt;br /&gt;
|-&lt;br /&gt;
| ||&lt;br /&gt;
;[[/KNS2|KNewStuff2]]&lt;br /&gt;
:The new cool version of the most famous way to get fresh stuff directly into your desktop&lt;br /&gt;
|-&lt;br /&gt;
| ||&lt;br /&gt;
;[[/Summer_of_Code|Summer of Code Projects]]&lt;br /&gt;
:Information on Summer of Code projects and prospects related to KDE&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:Kopete.svg|noframe|left|40px]] ||&lt;br /&gt;
;[[/Kopete|Kopete]]&lt;br /&gt;
:Kopete, the KDE Instant Messaging program.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4</id>
		<title>Talk:Installing third party softwares in terminal/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4"/>
				<updated>2007-03-30T04:01:21Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: Extra optional software&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== Q: What is cs and cb? ====&lt;br /&gt;
&lt;br /&gt;
A: '''This is not a typo'''. Read the article about setting up your .bashrc.  Both '''cs''' and '''cb''' are bash functions, used to change to the KDE source directory and KDE build directory respectively.&lt;br /&gt;
&lt;br /&gt;
==== Q: Are there build instructions for other OS? ====&lt;br /&gt;
&lt;br /&gt;
A: Actually yes, for [[Getting Started/Build/KDE4/Mac OS X|Mac OS X]]. There also is [http://www.kdelibs.com kdelibs.com] (see also [[User_talk:Jstaniek#KDElibs.com_and_developernew.kde.org_coexistence|here]]) which will be merged into this wiki in the future.&lt;br /&gt;
&lt;br /&gt;
==== Q: Isn't the install prefix, make and make install missing for modules like kdelibs and kdebase? ====&lt;br /&gt;
A: No. The shell function ''cmakekde'' handels this, have a look at the file [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.bashrc]].&lt;br /&gt;
&lt;br /&gt;
==== Q: How can I generate API Documentation for other modules? ====&lt;br /&gt;
A: Try the following code, replacing &amp;lt;modulename&amp;gt; with your desired module:&lt;br /&gt;
 cs&lt;br /&gt;
 mkdir -p apidox&lt;br /&gt;
 cs apidox&lt;br /&gt;
 ../kdelibs/doc/api/doxygen.sh ../&amp;lt;modulename&amp;gt;/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I tried that and got the following:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
kdedev@PC1:~/src/KDE/apidox$ ../kdelibs/doc/api/doxygen.sh ../kdepimlibs/&lt;br /&gt;
*** doxygen.sh&lt;br /&gt;
* $DOXDATA does not name a directory ( or is unset ), tried &amp;quot;/media/kdedev/home/src/KDE/kdepimlibs/doc/common&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
What is wrong here? -[[User:TMG|TMG]] 23:55, 28 March 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
==== Q: I changed the first command of the &amp;quot;Set up QT - Recipe&amp;quot; from cd to cs because I think this was a typo. Am I right?? ====&lt;br /&gt;
A: Right --[[User:Dhaumann|Dhaumann]]&lt;br /&gt;
&lt;br /&gt;
:: no, it was perfectly intentional. see the [[/Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc bashrc in the productivity with KDE4 scripts tutorial]]. it has QTDIR set to ~/qt-copy. this makes sense, actually, since building Qt is done rather differently from the rest of KDE and one may not get Qt from KDE's svn in any case. so yes, it is supposed to be cd, not cs.&lt;br /&gt;
&lt;br /&gt;
::: *blush* ;) i should read more carefully. --[[User:Dhaumann|Dhaumann]] &lt;br /&gt;
&lt;br /&gt;
==== Notes: ~/install ====&lt;br /&gt;
&lt;br /&gt;
When installing KDE4, I strongly recommend installing all tools (like dbus and cmake) and kde packages into the same place, e.g. ~/install. Qt is the only exception.&lt;br /&gt;
&lt;br /&gt;
The reason for this is because if you install some packages to ~/kde and some to /usr/local and maybe one in /usr then cmake will generate errors like:&lt;br /&gt;
&lt;br /&gt;
-- It is impossible to order the include directories.&lt;br /&gt;
&lt;br /&gt;
This is not a fatal error, so you will still be able to compile, but you will possibly be using the wrong versions of libraries and this will product problems that are very hard to diagnose.&lt;br /&gt;
&lt;br /&gt;
You may not experience any problems when installed like I advise not to, however I have and you might too in some typical situations.&lt;br /&gt;
&lt;br /&gt;
Please see:&lt;br /&gt;
&lt;br /&gt;
http://developer.kde.org/build/trunk.html&lt;br /&gt;
&lt;br /&gt;
==== Install CMake modules local ====&lt;br /&gt;
&lt;br /&gt;
The CMake modules should be installed local into ~/install/cmake/modules or similar.&lt;br /&gt;
When following the current instructions [[ Getting_Started/Build/KDE4#Install_additional_CMake_modules|6.1: Install additional CMake modules]],  it's impossible to do a non-root installation, because &amp;quot;kdelibs/cmake/modules/cmake_install.cmake&amp;quot; wants to install the modules to &amp;quot;/cmake/modules&amp;quot;. (I didn't install CMake local, because my system already provided CMake &amp;gt; 2.4.3).&lt;br /&gt;
&lt;br /&gt;
I've already tried to do this, fiddling around with CMAKE_MODULE_PATH and DATA_INSTALL_DIR but couldn't get it working.&lt;br /&gt;
&lt;br /&gt;
Does anybody know how to do this properly?&lt;br /&gt;
&lt;br /&gt;
--[[User:Eliasp|Eliasp]] 15:44, 4 January 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Fixes needed ====&lt;br /&gt;
* qt-copy: Should we pass the -debug flag?  Doesn't Qt install debug information separately by default anyways?  Or is that just in the snapshot? --[[User:Mpyne|Mpyne]]&lt;br /&gt;
&lt;br /&gt;
: according to ./configure --help, the default is -release in snapshot. --[[User:Aseigo|Aseigo]] 04:33, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
* In the part of the tutorial that describes how to create a new users, shoudn't to have an edit /etc/sudoers to add permitions for kde-devel call sudo? --[[User:SilveiraNeto|SilveiraNeto]] 03:01, 14 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
: no. why would you want them to have sudo access?&lt;br /&gt;
&lt;br /&gt;
==== libungif/giflib ====&lt;br /&gt;
Since the patents expired, why not use giflib?&lt;br /&gt;
&lt;br /&gt;
==== Old gcc and -pch flag ====&lt;br /&gt;
In Qt part I had problems with error like this: [http://www.qtforum.org/thread.php?threadid=19998 QtForum thread]. I had GCC 3.3.X installed. Using -pch flag (as in recipe) get me errors. Someone friendly gave me tip on #kde-devel not to use this flag, although I didn't test it. Instead I've just updated gcc and g++ from debian repositories. Newer version works fine as &amp;quot;Precompiled headers are supported in GCC (3.4 and newer)&amp;quot; [http://en.wikipedia.org/wiki/Precompiled_header Wikipedia pch].&lt;br /&gt;
&lt;br /&gt;
==== Build status ====&lt;br /&gt;
&lt;br /&gt;
You might want to include the [http://developer.kde.org/~dirk/dashboard/ dashboard link] to show which modules currently build and which don't. --[[User:141.35.8.106|141.35.8.106]] 13:28, 20 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
== Extra optional software ==&lt;br /&gt;
&lt;br /&gt;
- openldap&lt;br /&gt;
- cyrus&lt;br /&gt;
&lt;br /&gt;
If there was a line at the top like:&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install libaaa-dev libbbb-dev ...-dev ...&lt;br /&gt;
&lt;br /&gt;
This would be very useful and save hours. Is this something we should do?&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2007-03-29T14:46:58Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Strigi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Starting a KDE4 Environment and Applications]]|&lt;br /&gt;
&lt;br /&gt;
reading=[http://kdesvn-build.kde.org/ kdesvn-build: The KDE From Subversion Build Tool]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows one way to get KDE from trunk running on Linux/BSD systems. Throughout the tutorial the bash shell is used. If you are interested in building KDE on other systems such as Solaris, MacOS or Microsoft Windows, please visit the [[../|Build]] page and see the links at the bottom for the respective operating systems.&lt;br /&gt;
&lt;br /&gt;
{{note|Expect a higher risk of build failure Monday when critical changes are implemented. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Required Software ==&lt;br /&gt;
&lt;br /&gt;
The following must be installed first before you can successfully complete this tutorial:&lt;br /&gt;
* gcc and g++ from the gcc project, preferably version 4.1 or higher&lt;br /&gt;
* svn, the subversion revision control client&lt;br /&gt;
* pkg-config&lt;br /&gt;
* development libraries and headers for X11 and OpenGL&lt;br /&gt;
* development libraries and headers for libjpeg, libpng, libungif, libxml2 and libxslt&lt;br /&gt;
* the makeobj script. You can install it as part of a kdesdk-scripts (debian) or similar package, or just download it itself from [http://websvn.kde.org/trunk/KDE/kdesdk/scripts/makeobj?revision=600932&amp;amp;view=markup WebSVN]&lt;br /&gt;
* the shared-mime-info package, which is the freedesktop MIME standard KDE is using now&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You may also want to have the following installed:&lt;br /&gt;
* bash&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
Some people like to have a separate user account for kde (for instance an old bug deleted files by mistake), and the instructions below were written with that approach.&lt;br /&gt;
&lt;br /&gt;
However it is much more efficient to do everything with a single user account, see http://techbase.kde.org/Getting_Started/Increased_Productivity_in_KDE4_with_Scripts&lt;br /&gt;
for more details. You can still follow the instructions below, but don't put the environment variables in your .bashrc, put them in a separate file that you source to switch to the kde4 environment.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: Command Line ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd -m kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
or:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd kde-devel&lt;br /&gt;
mkdir /home/kde-devel&lt;br /&gt;
passwd kde-devel&lt;br /&gt;
chown kde-devel:kde-devel /home/kde-devel 2&amp;gt;/dev/null || \&lt;br /&gt;
chown kde-devel:users /home/kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: Using KControl ===&lt;br /&gt;
&lt;br /&gt;
Instead of using the commands above, you can also use the User module in the KDE Control Center if you already have KDE3 installed.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;makeobj&amp;lt;/tt&amp;gt; command available, this command comes with the KDE SDK scripts.&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Switching to the New User ===&lt;br /&gt;
Switch to the user kde-devel: (don't forget the dash)&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
su - kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The rest of this tutorial assumes you are running as the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user.&lt;br /&gt;
&lt;br /&gt;
== The development user's shell ==&lt;br /&gt;
&lt;br /&gt;
On some systems a new user is configured by default to use {{path|/bin/sh}}. If this is not the case on your system, you can skip this section. Using {{path|/bin/sh}} can be very inconvenient to work with and you may want to change it to {{path|/bin/bash}} or another shell.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: As the kde-devel user ===&lt;br /&gt;
&lt;br /&gt;
If you don't have root privileges and your system supports the changing of your own shell with the &amp;lt;tt&amp;gt;chsh&amp;lt;/tt&amp;gt; application, then you could try to change your shell to /bin/bash by using:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
chsh -s /bin/bash kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: As the root user ===&lt;br /&gt;
&lt;br /&gt;
If your system comes with the &amp;lt;tt&amp;gt;usermod&amp;lt;/tt&amp;gt; application you can run the following command as root: &amp;lt;tt&amp;gt;usermod -s /bin/bash&amp;lt;/tt&amp;gt;.&lt;br /&gt;
s&lt;br /&gt;
Another option is to use the &amp;lt;tt&amp;gt;vipw&amp;lt;/tt&amp;gt; application as root to safely edit your {{path|/etc/passwd}}. Locate 'kde-devel' in the the file. Change '{{path|/bin/sh}}' at the end of the line to read '{{path|/bin/bash}}', save your changes and exit.&lt;br /&gt;
&lt;br /&gt;
The new shell will be started automatically when you log in as the kde-devel user again.&lt;br /&gt;
&lt;br /&gt;
== D-Bus ==&lt;br /&gt;
QtDBus and KDE are known to work with D-Bus versions 0.62, as well as 0.92 and upwards. Versions 0.60 and 0.61 may work too but are not tested. Versions 0.90 and 0.91 are known not to work. We recommend using post-1.0 release versions (at least 0.94), so consider upgrading if you haven't done so.&lt;br /&gt;
&lt;br /&gt;
You may skip this section if you have a recent D-Bus version or if you don't want to upgrade.&lt;br /&gt;
&lt;br /&gt;
Before running these steps in the recipe, make sure your X11 headers and libraries are available. The configure script run on line 5 should output:&lt;br /&gt;
 Building X11 code:        yes&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&lt;br /&gt;
{{tip|Check [[Getting Started/Increased Productivity in KDE4 with Scripts]] for some aliases that help with KDE development. These include aliases to switch from the build into the source directory (cs) and back (cb).}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz&lt;br /&gt;
tar -xvzf dbus-1.0.2.tar.gz&lt;br /&gt;
cd dbus-1.0.2/&lt;br /&gt;
./configure --prefix=$DBUSDIR --localstatedir=$KDEDIR/var&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
dbus-uuidgen --ensure&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening === &lt;br /&gt;
After changing into the source directory (line 1), D-Bus source code is downloaded from freedesktop.org (line 2) and unpacked (line 3). After going into the newly created D-Bus directory (line 3), the build is set up using the supplied {{path|configure}} script (line 5). After building (line 6) and installing (line 7) D-Bus, we use the &amp;lt;tt&amp;gt;dbus-uuidgen&amp;lt;/tt&amp;gt; tool to install a machine identification file that allows the bus to start automatically when the desktop session starts (line 8).&lt;br /&gt;
&lt;br /&gt;
Note that you need write access to {{path|/var}} for the last two steps. If your system does not have the sudo command, you can use the &amp;lt;tt&amp;gt;su&amp;lt;/tt&amp;gt; command instead, e.g. &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Skip this if you have [http://cmake.org/ CMake] &amp;gt;=2.4.5 installed. &lt;br /&gt;
You should be able to directly use the binary packages available on the [http://www.cmake.org/HTML/Download.html CMake site]. There are also distribution specific packages available.&lt;br /&gt;
CMake binary packages for openSUSE are available from [http://software.opensuse.org/download/devel:/tools:/building/ openSUSE build service].&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
wget http://www.cmake.org/files/v2.4/cmake-2.4.6.tar.gz&lt;br /&gt;
tar zxf cmake-2.4.6.tar.gz&lt;br /&gt;
mkdir cmake-build&lt;br /&gt;
cd cmake-build&lt;br /&gt;
../cmake-2.4.6/bootstrap&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
First, we go back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's source directory (line 1), get the CMake sources (line 2) and unpack them (line 3). We create a directory to build CMake in (line 4) and go into it (line 5). We then run the CMake boostrap script to set up the CMake build (line 6), then make (line 7) and install it (line 8) using the root user.&lt;br /&gt;
&lt;br /&gt;
If your system does not have the &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; command, you can instead do &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
Next we need to get the Qt4 that is in KDE's source repository. KDE is guaranteed to build against any Qt 4.3. That is still an unreleased version, so your distribution probably doesn't have packages for it. You should use the copy in the KDE Subversion servers.&lt;br /&gt;
&lt;br /&gt;
KDE is no longer supported on Qt 4.2 and earlier versions.&lt;br /&gt;
&lt;br /&gt;
Hint: This part may take some time depending on what kind of hardware your computer is running.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
cd qt-copy&lt;br /&gt;
./apply_patches&lt;br /&gt;
./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
 -prefix $QTDIR -qdbus -pch -nomake examples \&lt;br /&gt;
 -nomake demos&lt;br /&gt;
make sub-src sub-tools&lt;br /&gt;
# make install: only if QTDIR is not the current directory!&lt;br /&gt;
make install   &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We switch back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's home directory (line 1) and download the source code using subversion (svn) from KDE's repository (line 2). After changing into the resulting {{path|qt-copy}} directory (line 3), we run a script that manages the patches that come with &amp;lt;tt&amp;gt;qt-copy&amp;lt;/tt&amp;gt; (line 4). &lt;br /&gt;
&lt;br /&gt;
Once the patches have been applied, we then set up the build using the &amp;lt;tt&amp;gt;configure&amp;lt;/tt&amp;gt; script (line 5-6). The various command line options used are explained in the {{path|qt-copy/README.qt-copy}} file. Finally, we build the minimal requirements for KDE (line 7) and install (line 8) Qt. If you want all the example and demo applications, you can either build them individually or simply do a &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; from the {{path|qt-copy}} directory. Note that the installation does not require root as it installs it locally into {{path|qt-copy}} itself.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &amp;quot;error: X11/Xlib.h: No such file or directory&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;xorg&amp;lt;/tt&amp;gt; (the actual name may vary between operating systems, for example it is &amp;lt;tt&amp;gt;xorg-dev&amp;lt;/tt&amp;gt; on Ubuntu based systems such as Kubuntu).&lt;br /&gt;
&lt;br /&gt;
If you get an error in the configure step about missing defines, check the value of &amp;lt;tt&amp;gt;$QMAKESPEC&amp;lt;/tt&amp;gt;.  Some distributions set this to point directly to the system-installed Qt.  If &amp;lt;tt&amp;gt;unset QMAKESPEC&amp;lt;/tt&amp;gt; solves the problem, you probably want to add it to the &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt; script.&lt;br /&gt;
&lt;br /&gt;
If you get an error &amp;quot;.pch/debug-shared/QtCore&amp;quot;, this is because Qt-4.3 enables precompiled headers if your gcc supports it, but for some reason it doesn't work for you. If you use distcc, configure qt with -no-pch. If you use icecream, update to the latest icecream from svn trunk.&lt;br /&gt;
&lt;br /&gt;
Try running any Qt program, like {{program|assistant}}. If it crashes in QSpanData::adjustSpanMethods, then your problem is the oxygen style. Try removing {{path|/lib/kde4/plugins/styles/kstyle-oxygen.so}} and {{path|/lib/kde4/plugins/styles/oxygen.so}} if they exist.&lt;br /&gt;
&lt;br /&gt;
== Strigi ==&lt;br /&gt;
&lt;br /&gt;
{{warning|If you have jumped to this section without reading section 3.3 Setting Up The Environment '''the recipes provided will not work'''. The recipes are not in error; &amp;lt;tt&amp;gt;cs&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;cb&amp;lt;/tt&amp;gt; are not typos. You '''must''' follow the instructions in section 3.3 for this tutorial to work for you.}}&lt;br /&gt;
&lt;br /&gt;
The code for getting at file metadata now relies on Strigi. To install Strigi you need the libraries and headers for libz, libbz2, openssl (libcrypto or libssl), libclucene (&amp;gt;=0.9.16), and either libxml2 or libexpat.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi&lt;br /&gt;
cd strigi&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1). We download the sources for strigi using subversion (line 2), go into the new ~/src/strigi directory (line 3), and commence the build (line 4). This will leave us in the strigi build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
== kdelibs ==&lt;br /&gt;
&lt;br /&gt;
With Qt4 and Strigi built, we can now move on to building KDE's base libraries. If you use the aforementioned [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|.bashrc]] this is where those new functions come in handy. &lt;br /&gt;
&lt;br /&gt;
Hint: This part may take some time depending on what kind of hardware your computer is running.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd $KDE_SRC&lt;br /&gt;
mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
cd kdelibs&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If this command fails stating that CMake requires an out of source build directory, remove ~/src/KDE/kdelibs/CMakeCache.txt, and try again.}}&lt;br /&gt;
&lt;br /&gt;
{{tip|If &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; still gives the same error then try this &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR \&lt;br /&gt;
-DCMAKE_BUILD_TYPE=debugfull DKDE4_BUILD_TESTS=ON \&lt;br /&gt;
~/src/KDE/kdelibs&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 2). We download the sources for kdelibs using subversion (line 3), go into the new {{path|~/src/KDE/kdelibs}} directory (line 4), and commence the build (line 5). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake ~/src/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
=== Additional KDE-specific CMake modules ===&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling kdelibs, first make sure the software in the &amp;quot;Required Software&amp;quot; section above is installed and works. Other possible hints include:&lt;br /&gt;
* If you received an error stating &amp;quot;Please create a separate build directory and run 'cmake path_to_kdelibs [options]' there.&amp;quot; then you need to change to your build directory before running cmakekde. (e.g &amp;lt;tt&amp;gt;cs KDE/kdelibs &amp;amp;&amp;amp; cb &amp;amp;&amp;amp; cmakekde&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* If Qt wasn't found or the wrong version of Qt was found, make sure that the qmake from the Qt you need is the first qmake in the path.&lt;br /&gt;
* If the problems persist, try the CMake make-option &amp;lt;tt&amp;gt;--keep-going&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* Here you need the libungif library, otherwise you will get an error message like &amp;quot;&amp;lt;tt&amp;gt;Could NOT find GIF&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
* Qt-4.3 upgrade: if you get a link error in kjsembed talking about QScriptEngine, edit CMakeCache.txt in kdelibs and remove the lines that talk about QT_QTUITOOLS_LIBRARY, then type make again (that static library has a new dependency, and the cmake code that adds it, needs to run).&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs ==&lt;br /&gt;
After &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt;, but before ''kdebase'', you need to build and install ''kdepimlibs''.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
cd kdepimlibs&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
== kdebase ==&lt;br /&gt;
You may need kdebase for some kioslaves.&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
cd kdebase&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling kdebase:&lt;br /&gt;
* Make sure you have the &amp;lt;tt&amp;gt;libxss headers&amp;lt;/tt&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers)&lt;br /&gt;
* &amp;lt;tt&amp;gt;which meinproc&amp;lt;/tt&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
* if cmakekde cannot find the path of kdepimlibs, edit the file /home/kde-devel/kdebase-build/CMakeCache.txt and manually set KDEPIMLIBS_INCLUDE_DIR:PATH=/home/kde-devel/kdepimlibs-build&lt;br /&gt;
* if you get an error saying &amp;quot;Please set the following variables: X11_XTest_LIB (ADVANCED)&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;Xtst&amp;lt;/tt&amp;gt;. On some systems, this is packaged separately from &amp;lt;tt&amp;gt;xext&amp;lt;/tt&amp;gt; and called &amp;lt;tt&amp;gt;x11proto-xext-dev&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;libxtst-dev&amp;lt;/tt&amp;gt;. You may also need to remove the CMakeCache.txt file in the build dir after installing the package.&lt;br /&gt;
* the same for &amp;quot;X11_Xinerama_LIB (ADVANCED)&amp;quot; where you will need the devel package for &amp;lt;tt&amp;gt;xinerama&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* if you get the error &amp;quot;Please set the following variables: FONTCONFIG_INCLUDE_DIR, FONTCONFIG_LIBRARIES (ADVANCED)&amp;quot;, then you need to install libfontconfig&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
Although the API documentation for KDE is available online at [http://api.kde.org api.kde.org], it is sometimes useful to have it on your own disk, for example when you want to use KDevelop for browsing the documentation or when you are not able to be online all the time.&lt;br /&gt;
&lt;br /&gt;
Be aware that generating the API documentation can take several hours and takes almost half a gigabyte of diskspace.&lt;br /&gt;
The generation is handled by a script in kdelibs/doc/api, you need ''doxygen'' to be able to run it. &lt;br /&gt;
&lt;br /&gt;
To build the API documentation for kdelibs, type the following:&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
mkdir apidox&lt;br /&gt;
cd apidox&lt;br /&gt;
../kdelibs/doc/api/doxygen.sh ../kdelibs/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development|Starting a KDE4 Environment and Applications]] tutorial for how to start working on your new KDE4 installation.&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2007-03-29T00:00:41Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: update command chsh to be consistent&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TutorialBrowser|&lt;br /&gt;
&lt;br /&gt;
series=Getting Started|&lt;br /&gt;
&lt;br /&gt;
name=Building KDE4 From Source|&lt;br /&gt;
&lt;br /&gt;
pre=[[../../Sources/Anonymous_SVN|Anonymous SVN Quickstart Guide]]|&lt;br /&gt;
&lt;br /&gt;
next=[[../../Set_up_KDE_4_for_development|Starting a KDE4 Environment and Applications]]|&lt;br /&gt;
&lt;br /&gt;
reading=[http://kdesvn-build.kde.org/ kdesvn-build: The KDE From Subversion Build Tool]&amp;lt;br&amp;gt;[[../../Increased_Productivity_in_KDE4_with_Scripts|Increased Productivity in KDE4 with Scripts]]&amp;lt;br&amp;gt;[[Development/Tutorials/CMake |Introduction to CMake]]&amp;lt;br&amp;gt;[[../KDE4/FreeBSD|FreeBSD notes]]&amp;lt;br&amp;gt;[[../KDE4/Mac OS X|Instructions for Mac OS X]]|&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
This tutorial shows one way to get KDE from trunk running on Linux/BSD systems. Throughout the tutorial the bash shell is used. If you are interested in building KDE on other systems such as Solaris, MacOS or Microsoft Windows, please visit the [[../|Build]] page and see the links at the bottom for the respective operating systems.&lt;br /&gt;
&lt;br /&gt;
{{note|Expect a higher risk of build failure Monday when critical changes are implemented. [http://developer.kde.org/~dirk/dashboard/ Dashboard] reports unexpected breakages. You are encouraged to fix failing modules.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Required Software ==&lt;br /&gt;
&lt;br /&gt;
The following must be installed first before you can successfully complete this tutorial:&lt;br /&gt;
* gcc and g++ from the gcc project, preferably version 4.1 or higher&lt;br /&gt;
* svn, the subversion revision control client&lt;br /&gt;
* pkg-config&lt;br /&gt;
* development libraries and headers for X11 and OpenGL&lt;br /&gt;
* development libraries and headers for libjpeg, libpng, libungif, libxml2 and libxslt&lt;br /&gt;
* the makeobj script. You can install it as part of a kdesdk-scripts (debian) or similar package, or just download it itself from [http://websvn.kde.org/trunk/KDE/kdesdk/scripts/makeobj?revision=600932&amp;amp;view=markup WebSVN]&lt;br /&gt;
* the shared-mime-info package, which is the freedesktop MIME standard KDE is using now&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You may also want to have the following installed:&lt;br /&gt;
* bash&lt;br /&gt;
&lt;br /&gt;
== Create a user account for KDE4 development ==&lt;br /&gt;
&lt;br /&gt;
=== Option 1: Command Line ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd -m kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
or:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
useradd kde-devel&lt;br /&gt;
mkdir /home/kde-devel&lt;br /&gt;
passwd kde-devel&lt;br /&gt;
chown kde-devel:kde-devel /home/kde-devel 2&amp;gt;/dev/null || \&lt;br /&gt;
chown kde-devel:users /home/kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: Using KControl ===&lt;br /&gt;
&lt;br /&gt;
Instead of using the commands above, you can also use the User module in the KDE Control Center if you already have KDE3 installed.&lt;br /&gt;
&lt;br /&gt;
=== Setting up the environment ===&lt;br /&gt;
&lt;br /&gt;
Copy the {{path|~/.bashrc}} from your normal user account to the new kde-devel account. Next, copy and paste the contents of the [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|example .bashrc]] into {{path|~kde-devel/.bashrc}}. Be sure to comment out the line &amp;lt;tt&amp;gt;alias make=makeobj&amp;lt;/tt&amp;gt; if you do not have the &amp;lt;tt&amp;gt;makeobj&amp;lt;/tt&amp;gt; command available, this command comes with the KDE SDK scripts.&lt;br /&gt;
&lt;br /&gt;
This will provide access to commands such as &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; that are used in this tutorial as well as ensure that the proper paths are in place for Qt, KDE and CMake binaries.&lt;br /&gt;
&lt;br /&gt;
For more information, please read the [[Getting Started/Increased Productivity in KDE4 with Scripts]] tutorial.&lt;br /&gt;
&lt;br /&gt;
=== Switching to the New User ===&lt;br /&gt;
Switch to the user kde-devel: (don't forget the dash)&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
su - kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The rest of this tutorial assumes you are running as the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user.&lt;br /&gt;
&lt;br /&gt;
== The development user's shell ==&lt;br /&gt;
&lt;br /&gt;
On some systems a new user is configured by default to use {{path|/bin/sh}}. If this is not the case on your system, you can skip this section. Using {{path|/bin/sh}} can be very inconvenient to work with and you may want to change it to {{path|/bin/bash}} or another shell.&lt;br /&gt;
&lt;br /&gt;
=== Option 1: As the kde-devel user ===&lt;br /&gt;
&lt;br /&gt;
If you don't have root privileges and your system supports the changing of your own shell with the &amp;lt;tt&amp;gt;chsh&amp;lt;/tt&amp;gt; application, then you could try to change your shell to /bin/bash by using:&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
chsh -s /bin/bash kde-devel&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Option 2: As the root user ===&lt;br /&gt;
&lt;br /&gt;
If your system comes with the &amp;lt;tt&amp;gt;usermod&amp;lt;/tt&amp;gt; application you can run the following command as root: &amp;lt;tt&amp;gt;usermod -s /bin/bash&amp;lt;/tt&amp;gt;.&lt;br /&gt;
s&lt;br /&gt;
Another option is to use the &amp;lt;tt&amp;gt;vipw&amp;lt;/tt&amp;gt; application as root to safely edit your {{path|/etc/passwd}}. Locate 'kde-devel' in the the file. Change '{{path|/bin/sh}}' at the end of the line to read '{{path|/bin/bash}}', save your changes and exit.&lt;br /&gt;
&lt;br /&gt;
The new shell will be started automatically when you log in as the kde-devel user again.&lt;br /&gt;
&lt;br /&gt;
== D-Bus ==&lt;br /&gt;
QtDBus and KDE are known to work with D-Bus versions 0.62, as well as 0.92 and upwards. Versions 0.60 and 0.61 may work too but are not tested. Versions 0.90 and 0.91 are known not to work. We recommend using post-1.0 release versions (at least 0.94), so consider upgrading if you haven't done so.&lt;br /&gt;
&lt;br /&gt;
You may skip this section if you have a recent D-Bus version or if you don't want to upgrade.&lt;br /&gt;
&lt;br /&gt;
Before running these steps in the recipe, make sure your X11 headers and libraries are available. The configure script run on line 5 should output:&lt;br /&gt;
 Building X11 code:        yes&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&lt;br /&gt;
{{tip|Check [[Getting Started/Increased Productivity in KDE4 with Scripts]] for some aliases that help with KDE development. These include aliases to switch from the build into the source directory (cs) and back (cb).}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
wget http://dbus.freedesktop.org/releases/dbus/dbus-1.0.2.tar.gz&lt;br /&gt;
tar -xvzf dbus-1.0.2.tar.gz&lt;br /&gt;
cd dbus-1.0.2/&lt;br /&gt;
./configure --prefix=$DBUSDIR --localstatedir=$KDEDIR/var&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
dbus-uuidgen --ensure&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening === &lt;br /&gt;
After changing into the source directory (line 1), D-Bus source code is downloaded from freedesktop.org (line 2) and unpacked (line 3). After going into the newly created D-Bus directory (line 3), the build is set up using the supplied {{path|configure}} script (line 5). After building (line 6) and installing (line 7) D-Bus, we use the &amp;lt;tt&amp;gt;dbus-uuidgen&amp;lt;/tt&amp;gt; tool to install a machine identification file that allows the bus to start automatically when the desktop session starts (line 8).&lt;br /&gt;
&lt;br /&gt;
Note that you need write access to {{path|/var}} for the last two steps. If your system does not have the sudo command, you can use the &amp;lt;tt&amp;gt;su&amp;lt;/tt&amp;gt; command instead, e.g. &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CMake ==&lt;br /&gt;
Skip this if you have [http://cmake.org/ CMake] &amp;gt;=2.4.5 installed. &lt;br /&gt;
You should be able to directly use the binary packages available on the [http://www.cmake.org/HTML/Download.html CMake site]. There are also distribution specific packages available.&lt;br /&gt;
CMake binary packages for openSUSE are available from [http://software.opensuse.org/download/devel:/tools:/building/ openSUSE build service].&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
wget http://www.cmake.org/files/v2.4/cmake-2.4.6.tar.gz&lt;br /&gt;
tar zxf cmake-2.4.6.tar.gz&lt;br /&gt;
mkdir cmake-build&lt;br /&gt;
cd cmake-build&lt;br /&gt;
../cmake-2.4.6/bootstrap&lt;br /&gt;
make&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
First, we go back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's source directory (line 1), get the CMake sources (line 2) and unpack them (line 3). We create a directory to build CMake in (line 4) and go into it (line 5). We then run the CMake boostrap script to set up the CMake build (line 6), then make (line 7) and install it (line 8) using the root user.&lt;br /&gt;
&lt;br /&gt;
If your system does not have the &amp;lt;tt&amp;gt;sudo&amp;lt;/tt&amp;gt; command, you can instead do &amp;lt;tt&amp;gt;su -c &amp;quot;make install&amp;quot;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Qt ==&lt;br /&gt;
Next we need to get the Qt4 that is in KDE's source repository. KDE is guaranteed to build against any Qt 4.3. That is still an unreleased version, so your distribution probably doesn't have packages for it. You should use the copy in the KDE Subversion servers.&lt;br /&gt;
&lt;br /&gt;
KDE is no longer supported on Qt 4.2 and earlier versions.&lt;br /&gt;
&lt;br /&gt;
Hint: This part may take some time depending on what kind of hardware your computer is running.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
cd qt-copy&lt;br /&gt;
./apply_patches&lt;br /&gt;
./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
 -prefix $QTDIR -qdbus -pch -nomake examples \&lt;br /&gt;
 -nomake demos&lt;br /&gt;
make sub-src sub-tools&lt;br /&gt;
# make install: only if QTDIR is not the current directory!&lt;br /&gt;
make install   &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We switch back to the &amp;lt;tt&amp;gt;kde-devel&amp;lt;/tt&amp;gt; user's home directory (line 1) and download the source code using subversion (svn) from KDE's repository (line 2). After changing into the resulting {{path|qt-copy}} directory (line 3), we run a script that manages the patches that come with &amp;lt;tt&amp;gt;qt-copy&amp;lt;/tt&amp;gt; (line 4). &lt;br /&gt;
&lt;br /&gt;
Once the patches have been applied, we then set up the build using the &amp;lt;tt&amp;gt;configure&amp;lt;/tt&amp;gt; script (line 5-6). The various command line options used are explained in the {{path|qt-copy/README.qt-copy}} file. Finally, we build the minimal requirements for KDE (line 7) and install (line 8) Qt. If you want all the example and demo applications, you can either build them individually or simply do a &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; from the {{path|qt-copy}} directory. Note that the installation does not require root as it installs it locally into {{path|qt-copy}} itself.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you get &amp;quot;error: X11/Xlib.h: No such file or directory&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;xorg&amp;lt;/tt&amp;gt; (the actual name may vary between operating systems, for example it is &amp;lt;tt&amp;gt;xorg-dev&amp;lt;/tt&amp;gt; on Ubuntu based systems such as Kubuntu).&lt;br /&gt;
&lt;br /&gt;
If you get an error in the configure step about missing defines, check the value of &amp;lt;tt&amp;gt;$QMAKESPEC&amp;lt;/tt&amp;gt;.  Some distributions set this to point directly to the system-installed Qt.  If &amp;lt;tt&amp;gt;unset QMAKESPEC&amp;lt;/tt&amp;gt; solves the problem, you probably want to add it to the &amp;lt;tt&amp;gt;~/.bashrc&amp;lt;/tt&amp;gt; script.&lt;br /&gt;
&lt;br /&gt;
If you get an error &amp;quot;.pch/debug-shared/QtCore&amp;quot;, this is because Qt-4.3 enables precompiled headers if your gcc supports it, but for some reason it doesn't work for you. If you use distcc, configure qt with -no-pch. If you use icecream, update to the latest icecream from svn trunk.&lt;br /&gt;
&lt;br /&gt;
Try running any Qt program, like {{program|assistant}}. If it crashes in QSpanData::adjustSpanMethods, then your problem is the oxygen style. Try removing {{path|/lib/kde4/plugins/styles/kstyle-oxygen.so}} and {{path|/lib/kde4/plugins/styles/oxygen.so}} if they exist.&lt;br /&gt;
&lt;br /&gt;
== Strigi ==&lt;br /&gt;
&lt;br /&gt;
{{warning|If you have jumped to this section without reading section 3.3 Setting Up The Environment '''the recipes provided will not work'''. The recipes are not in error; &amp;lt;tt&amp;gt;cs&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;cb&amp;lt;/tt&amp;gt; are not typos. You '''must''' follow the instructions in section 3.3 for this tutorial to work for you.}}&lt;br /&gt;
&lt;br /&gt;
The code for getting at file metadata now relies on Strigi. To install Strigi you need the libraries and headers for libz, libbz2, openssl (libcrypto), libclucene (&amp;gt;=0.9.16), and either libxml2 or libexpat.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi&lt;br /&gt;
cd strigi&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1). We download the sources for strigi using subversion (line 2), go into the new ~/src/strigi directory (line 3), and commence the build (line 4). This will leave us in the strigi build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
== kdelibs ==&lt;br /&gt;
&lt;br /&gt;
With Qt4 and Strigi built, we can now move on to building KDE's base libraries. If you use the aforementioned [[Getting Started/Increased Productivity in KDE4 with Scripts/.bashrc|.bashrc]] this is where those new functions come in handy. &lt;br /&gt;
&lt;br /&gt;
Hint: This part may take some time depending on what kind of hardware your computer is running.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd $KDE_SRC&lt;br /&gt;
mkdir KDE &amp;amp;&amp;amp; cd KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
cd kdelibs&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{tip|If this command fails stating that CMake requires an out of source build directory, remove ~/src/KDE/kdelibs/CMakeCache.txt, and try again.}}&lt;br /&gt;
&lt;br /&gt;
{{tip|If &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt; still gives the same error then try this &lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cd&lt;br /&gt;
cmake -DCMAKE_INSTALL_PREFIX=$KDEDIR \&lt;br /&gt;
-DCMAKE_BUILD_TYPE=debugfull DKDE4_BUILD_TESTS=ON \&lt;br /&gt;
~/src/KDE/kdelibs&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/code&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We change to the base source directory (line 1) then make and go into the KDE directory (line 2). We download the sources for kdelibs using subversion (line 3), go into the new {{path|~/src/KDE/kdelibs}} directory (line 4), and commence the build (line 5). This will leave us in the &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
{{tip|There might be missing dependencies on your system! They are easily overlooked in the output of &amp;lt;tt&amp;gt;cmakekde&amp;lt;/tt&amp;gt;.&lt;br /&gt;
You might want to do a &amp;lt;tt&amp;gt;cmake ~/src/KDE/MODULE_NAME&amp;lt;/tt&amp;gt; prior to compiling any kde modules (like kdelibs, kdepimlibs etc.)}}&lt;br /&gt;
&lt;br /&gt;
=== Additional KDE-specific CMake modules ===&lt;br /&gt;
There are additional CMake modules in {{path|kdelibs/cmake/modules/}} that are necessary for building KDE4 applications. These will be installed for you when  kdelibs itself is installed.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling kdelibs, first make sure the software in the &amp;quot;Required Software&amp;quot; section above is installed and works. Other possible hints include:&lt;br /&gt;
* If you received an error stating &amp;quot;Please create a separate build directory and run 'cmake path_to_kdelibs [options]' there.&amp;quot; then you need to change to your build directory before running cmakekde. (e.g &amp;lt;tt&amp;gt;cs KDE/kdelibs &amp;amp;&amp;amp; cb &amp;amp;&amp;amp; cmakekde&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* If Qt wasn't found or the wrong version of Qt was found, make sure that the qmake from the Qt you need is the first qmake in the path.&lt;br /&gt;
* If the problems persist, try the CMake make-option &amp;lt;tt&amp;gt;--keep-going&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* Here you need the libungif library, otherwise you will get an error message like &amp;quot;&amp;lt;tt&amp;gt;Could NOT find GIF&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
* Qt-4.3 upgrade: if you get a link error in kjsembed talking about QScriptEngine, edit CMakeCache.txt in kdelibs and remove the lines that talk about QT_QTUITOOLS_LIBRARY, then type make again (that static library has a new dependency, and the cmake code that adds it, needs to run).&lt;br /&gt;
&lt;br /&gt;
== kdepimlibs ==&lt;br /&gt;
After &amp;lt;tt&amp;gt;kdelibs&amp;lt;/tt&amp;gt;, but before ''kdebase'', you need to build and install ''kdepimlibs''.&lt;br /&gt;
&lt;br /&gt;
=== The Recipe ===&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
cd kdepimlibs&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What's Happening ===&lt;br /&gt;
We go into the KDE source directory (line 1), download the source code for kdepimlibs using subversion (line 2) and then go into the new {{path|~/src/KDE/kdepimlibs}} directory (line 3). We then commence the build (line 4). This will leave us in the &amp;lt;tt&amp;gt;kdepimlibs&amp;lt;/tt&amp;gt; build directory after the build is completed.&lt;br /&gt;
&lt;br /&gt;
== kdebase ==&lt;br /&gt;
You may need kdebase for some kioslaves.&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
svn checkout svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
cd kdebase&lt;br /&gt;
cmakekde&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling kdebase:&lt;br /&gt;
* Make sure you have the &amp;lt;tt&amp;gt;libxss headers&amp;lt;/tt&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers)&lt;br /&gt;
* &amp;lt;tt&amp;gt;which meinproc&amp;lt;/tt&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
* if cmakekde cannot find the path of kdepimlibs, edit the file /home/kde-devel/kdebase-build/CMakeCache.txt and manually set KDEPIMLIBS_INCLUDE_DIR:PATH=/home/kde-devel/kdepimlibs-build&lt;br /&gt;
* if you get an error saying &amp;quot;Please set the following variables: X11_XTest_LIB (ADVANCED)&amp;quot;, install the devel package of &amp;lt;tt&amp;gt;Xtst&amp;lt;/tt&amp;gt;. On some systems, this is packaged separately from &amp;lt;tt&amp;gt;xext&amp;lt;/tt&amp;gt; and called &amp;lt;tt&amp;gt;x11proto-xext-dev&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;libxtst-dev&amp;lt;/tt&amp;gt;. You may also need to remove the CMakeCache.txt file in the build dir after installing the package.&lt;br /&gt;
* the same for &amp;quot;X11_Xinerama_LIB (ADVANCED)&amp;quot; where you will need the devel package for &amp;lt;tt&amp;gt;xinerama&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* if you get the error &amp;quot;Please set the following variables: FONTCONFIG_INCLUDE_DIR, FONTCONFIG_LIBRARIES (ADVANCED)&amp;quot;, then you need to install libfontconfig&lt;br /&gt;
&lt;br /&gt;
== Generating local API documentation ==&lt;br /&gt;
Although the API documentation for KDE is available online at [http://api.kde.org api.kde.org], it is sometimes useful to have it on your own disk, for example when you want to use KDevelop for browsing the documentation or when you are not able to be online all the time.&lt;br /&gt;
&lt;br /&gt;
Be aware that generating the API documentation can take several hours and takes almost half a gigabyte of diskspace.&lt;br /&gt;
The generation is handled by a script in kdelibs/doc/api, you need ''doxygen'' to be able to run it. &lt;br /&gt;
&lt;br /&gt;
To build the API documentation for kdelibs, type the following:&lt;br /&gt;
&amp;lt;!--'cs' and 'cb' are NOT typos!--&amp;gt;&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
cs KDE&lt;br /&gt;
mkdir apidox&lt;br /&gt;
cd apidox&lt;br /&gt;
../kdelibs/doc/api/doxygen.sh ../kdelibs/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Success! ==&lt;br /&gt;
&lt;br /&gt;
You are now ready to start building other svn modules in the same fashion as you built kdebase, running and testing KDE4 or writing your own patches and applications.&lt;br /&gt;
&lt;br /&gt;
See the [[Getting Started/Set up KDE 4 for development|Starting a KDE4 Environment and Applications]] tutorial for how to start working on your new KDE4 installation.&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2006-11-04T18:10:24Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This article shows how to download, build, install and start KDE 4 from subversion. It consolidates howtos from various sites, e.g.&lt;br /&gt;
http://developer.kde.org/build/compile_cvs.html.&lt;br /&gt;
This topic shows one way that works. It does not intend to explain the obvious background behind it.&lt;br /&gt;
&lt;br /&gt;
You may be interested in: http://kdesvn-build.kde.org/&lt;br /&gt;
&lt;br /&gt;
To reduce complexity, we use the bash-shell (standard) throughout the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Become the user kde-devel ==&lt;br /&gt;
 useradd kde-devel&lt;br /&gt;
 mkdir /home/kde-devel&lt;br /&gt;
 passwd kde-devel&lt;br /&gt;
 chown kde-devel:kde-devel /home/kde-devel 2&amp;gt;/dev/null || \&lt;br /&gt;
 chown kde-devel:users /home/kde-devel&lt;br /&gt;
&lt;br /&gt;
Switch to the user kde-devel: (the dash also changes to the new home directory)&lt;br /&gt;
 su - kde-devel&lt;br /&gt;
&lt;br /&gt;
== Set Environment Variables ==&lt;br /&gt;
You have to add some environment variables - add these lines to {{path|~/.bashrc}}.&lt;br /&gt;
 export YACC='byacc -d'&lt;br /&gt;
 export QTDIR=$HOME/qt-unstable&lt;br /&gt;
 export KDEDIR=$HOME/kde&lt;br /&gt;
 export KDEDIRS=$KDEDIR&lt;br /&gt;
 export DBUSDIR=$KDEDIR&lt;br /&gt;
 export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig:$PKG_CONFIG_PATH&lt;br /&gt;
 export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH&lt;br /&gt;
 export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH&lt;br /&gt;
 ## Uncomment if dbus doesn't work&lt;br /&gt;
 #alias dbusstart=&amp;quot;eval `PATH=$DBUSDIR/bin \&lt;br /&gt;
 #$DBUSDIR/bin/dbus-launch --auto-syntax`&amp;quot;&lt;br /&gt;
 function cmakekde { cmake -DCMAKE_INSTALL_PREFIX=$HOME/kde \&lt;br /&gt;
 -DCMAKE_BUILD_TYPE=debugfull $@ &amp;amp;&amp;amp; make VERBOSE=1 &amp;amp;&amp;amp; make install; }&lt;br /&gt;
&lt;br /&gt;
== Check out the software ==&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 wget http://www.cmake.org/files/v2.4/cmake-2.4.3.tar.gz&lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus/dbus-0.94.tar.gz&lt;br /&gt;
&lt;br /&gt;
== Build D-Bus ==&lt;br /&gt;
 tar xvfz dbus-0.94.tar.gz&lt;br /&gt;
 cd dbus-0.94/&lt;br /&gt;
 ./configure --disable-qt --disable-qt3 --prefix=$DBUSDIR \&lt;br /&gt;
 --localstatedir=/var &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
== Build Qt ==&lt;br /&gt;
 cd ~/qt-copy &amp;amp;&amp;amp; \&lt;br /&gt;
 ./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
 -prefix $QTDIR -qdbus &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
== Build and Install CMake ==&lt;br /&gt;
&lt;br /&gt;
The default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;, make sure {{path|/usr/local/bin}} is in your &amp;lt;code&amp;gt;$PATH&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 tar zxf cmake-2.4.3.tar.gz&lt;br /&gt;
 mkdir cmake-build&lt;br /&gt;
 cd cmake-build&lt;br /&gt;
 ../cmake-2.4.3/bootstrap&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
== Build kdelibs ==&lt;br /&gt;
 cd ~/&lt;br /&gt;
 mkdir kdelibs-build&lt;br /&gt;
 cd kdelibs-build&lt;br /&gt;
 cmakekde ../kdelibs&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling this, first make sure the following commands can be executed: aclocal, autoconf, autoheader, gcc, g++, pkg-config.&lt;br /&gt;
&lt;br /&gt;
; Note: If you get &amp;quot;Could NOT find GIF&amp;quot;, install the devel package of &amp;lt;code&amp;gt;libungif&amp;lt;/code&amp;gt; (the actual name may vary on distribution).&lt;br /&gt;
&lt;br /&gt;
If the problems persist, try the make-option &amp;lt;code&amp;gt;--keep-going&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build kdepimlibs ==&lt;br /&gt;
Before ''kdebase'' you need to install ''kdepimlibs''&lt;br /&gt;
&lt;br /&gt;
 cd&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
 mkdir kdepimlibs-build&lt;br /&gt;
 cd kdepimlibs-build&lt;br /&gt;
 cmakekde ../kdepimlibs&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
To compile against kdelibs (not the snapshot) add&lt;br /&gt;
 set(KDE4_IGNORE_DONTPORT TRUE)&lt;br /&gt;
to the {{path|CMakeLists.txt}} before &amp;lt;code&amp;gt;find_package(KDE4 REQUIRED)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build kdebase ==&lt;br /&gt;
You may need kdebase for some kioslaves.&lt;br /&gt;
 cd&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
 mkdir kdebase-build&lt;br /&gt;
 cd kdebase-build&lt;br /&gt;
 cmakekde ../kdebase&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling this:&lt;br /&gt;
* Make sure you have the &amp;lt;code&amp;gt;libxss headers&amp;lt;/code&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers)&lt;br /&gt;
* &amp;lt;code&amp;gt;which meinproc&amp;lt;/code&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
&lt;br /&gt;
== Start KDE 4 Programs ==&lt;br /&gt;
To start the desktop environment itself, do:&lt;br /&gt;
 X :1 &amp;amp; export DISPLAY=:1&lt;br /&gt;
 startkde&lt;br /&gt;
Maybe you are logged in as your normal user (not kde-devel), want to stay in your current environment (KDE 3.5, gnome, whatever) and start a KDE 4 program. To start only kwrite from KDE 4, do:&lt;br /&gt;
 ssh -X kde-devel@localhost&lt;br /&gt;
 kwrite&lt;br /&gt;
&lt;br /&gt;
== Additional notes: ==&lt;br /&gt;
http://wiki.kde.org/tiki-index.php?page=KDECMakeIntro&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/KDE4</id>
		<title>Getting Started/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/KDE4"/>
				<updated>2006-10-31T07:30:40Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This article shows how to download, build, install and start KDE 4 from subversion. It consolidates howtos from various sites, e.g.&lt;br /&gt;
http://developer.kde.org/build/compile_cvs.html.&lt;br /&gt;
This topic shows one way that works. It does not intend to explain the obvious background behind it.&lt;br /&gt;
&lt;br /&gt;
You may be interested in: http://kdesvn-build.kde.org/&lt;br /&gt;
&lt;br /&gt;
To reduce complexity, we use the bash-shell (standard) throughout the tutorial.&lt;br /&gt;
&lt;br /&gt;
== Become the user kde-devel ==&lt;br /&gt;
 useradd kde-devel&lt;br /&gt;
 mkdir /home/kde-devel&lt;br /&gt;
 passwd kde-devel&lt;br /&gt;
 chown kde-devel:kde-devel /home/kde-devel 2&amp;gt;/dev/null || \&lt;br /&gt;
 chown kde-devel:users /home/kde-devel&lt;br /&gt;
&lt;br /&gt;
Switch to the user kde-devel: (the dash also changes to the new home directory)&lt;br /&gt;
 su - kde-devel&lt;br /&gt;
&lt;br /&gt;
== Set Environment Variables ==&lt;br /&gt;
You have to add some environment variables - add these lines to {{path|~/.bashrc}}.&lt;br /&gt;
 export YACC='byacc -d'&lt;br /&gt;
 export QTDIR=$HOME/qt-unstable&lt;br /&gt;
 export KDEDIR=$HOME/kde&lt;br /&gt;
 export KDEDIRS=$KDEDIR&lt;br /&gt;
 export DBUSDIR=$KDEDIR&lt;br /&gt;
 export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig:$PKG_CONFIG_PATH&lt;br /&gt;
 export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH&lt;br /&gt;
 export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH&lt;br /&gt;
 alias dbusstart=&amp;quot;eval `PATH=$DBUSDIR/bin \&lt;br /&gt;
 $DBUSDIR/bin/dbus-launch --auto-syntax`&amp;quot;&lt;br /&gt;
 function cmakekde { cmake -DCMAKE_INSTALL_PREFIX=$HOME/kde \&lt;br /&gt;
 -DCMAKE_BUILD_TYPE=debugfull $@ &amp;amp;&amp;amp; make VERBOSE=1 &amp;amp;&amp;amp; make install; }&lt;br /&gt;
&lt;br /&gt;
== Check out the software ==&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/qt-copy&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs&lt;br /&gt;
 wget http://www.cmake.org/files/v2.4/cmake-2.4.3.tar.gz&lt;br /&gt;
 wget http://dbus.freedesktop.org/releases/dbus-0.91.tar.gz&lt;br /&gt;
&lt;br /&gt;
== Build D-Bus ==&lt;br /&gt;
 tar xvfz dbus-0.91.tar.gz&lt;br /&gt;
 cd dbus-0.91/&lt;br /&gt;
 ./configure --disable-qt --disable-qt3 --prefix=$DBUSDIR \&lt;br /&gt;
 --localstatedir=/var &amp;amp;&amp;amp; make &amp;amp;&amp;amp; su -c &amp;quot;make install&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''Make sure the dbus session is running'''. Otherwise some parts of the build will fail, e.g. &amp;lt;code&amp;gt;kxml_compiler&amp;lt;/code&amp;gt; based file processing in kdepim:&lt;br /&gt;
 dbusstart&lt;br /&gt;
&lt;br /&gt;
== Build Qt ==&lt;br /&gt;
 cd ~/qt-copy &amp;amp;&amp;amp; \&lt;br /&gt;
 ./configure -qt-gif -no-exceptions -debug -fast \&lt;br /&gt;
 -prefix $QTDIR -qdbus &amp;amp;&amp;amp; make &amp;amp;&amp;amp; make install&lt;br /&gt;
&lt;br /&gt;
== Build and Install CMake ==&lt;br /&gt;
&lt;br /&gt;
The default prefix is &amp;lt;code&amp;gt;/usr/local&amp;lt;/code&amp;gt;, make sure {{path|/usr/local/bin}} is in your &amp;lt;code&amp;gt;$PATH&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
 tar zxf cmake-2.4.3.tar.gz&lt;br /&gt;
 mkdir cmake-build&lt;br /&gt;
 cd cmake-build&lt;br /&gt;
 ../cmake-2.4.3/bootstrap&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
== Build kdelibs ==&lt;br /&gt;
 cd ~/&lt;br /&gt;
 mkdir kdelibs-build&lt;br /&gt;
 cd kdelibs-build&lt;br /&gt;
 cmakekde ../kdelibs&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have problems compiling this, first make sure the following commands can be executed: aclocal, autoconf, autoheader, gcc, g++, pkg-config.&lt;br /&gt;
&lt;br /&gt;
; Note: If you get &amp;quot;Could NOT find GIF&amp;quot;, install the devel package of &amp;lt;code&amp;gt;libungif&amp;lt;/code&amp;gt; (the actual name may vary on distribution).&lt;br /&gt;
&lt;br /&gt;
If the problems persist, try the make-option &amp;lt;code&amp;gt;--keep-going&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build kdepimlibs ==&lt;br /&gt;
Before ''kdebase'' you need to install ''kdepimlibs''&lt;br /&gt;
&lt;br /&gt;
 cd&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepimlibs&lt;br /&gt;
 mkdir kdepimlibs-build&lt;br /&gt;
 cd kdepimlibs-build&lt;br /&gt;
 cmakekde ../kdepimlibs&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
To compile against kdelibs (not the snapshot) add&lt;br /&gt;
 set(KDE4_IGNORE_DONTPORT TRUE)&lt;br /&gt;
to the {{path|CMakeLists.txt}} before &amp;lt;code&amp;gt;find_package(KDE4 REQUIRED)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build kdebase ==&lt;br /&gt;
You may need kdebase for some kioslaves.&lt;br /&gt;
 cd&lt;br /&gt;
 svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdebase&lt;br /&gt;
 mkdir kdebase-build&lt;br /&gt;
 cd kdebase-build&lt;br /&gt;
 cmakekde ../kdebase&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you have troubles compiling this:&lt;br /&gt;
* Make sure you have the &amp;lt;code&amp;gt;libxss headers&amp;lt;/code&amp;gt; installed. (Usually you got undefined references on xscreensaver objects if you haven't those headers)&lt;br /&gt;
* &amp;lt;code&amp;gt;which meinproc&amp;lt;/code&amp;gt; has to deliver {{path|/home/kde-devel/kde/bin/meinproc}}&lt;br /&gt;
&lt;br /&gt;
== Start KDE 4 Programs ==&lt;br /&gt;
To start the desktop environment itself, do:&lt;br /&gt;
 X :1 &amp;amp; export DISPLAY=:1&lt;br /&gt;
 startkde&lt;br /&gt;
Maybe you are logged in as your normal user (not kde-devel), want to stay in your current environment (KDE 3.5, gnome, whatever) and start a KDE 4 program. To start only kwrite from KDE 4, do:&lt;br /&gt;
 ssh -X kde-devel@localhost&lt;br /&gt;
 kwrite&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;br /&gt;
[[Category:KDE4]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started</id>
		<title>Getting Started</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started"/>
				<updated>2006-10-02T04:45:58Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the Compile KDE portal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; border: 1px solid #1e90ff; padding: 0 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; margin-top:0.8em; margin-left:0.8em&amp;quot;&amp;gt;[[Image:Action_down.svg|left|32px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
== Getting the Source ==&lt;br /&gt;
&lt;br /&gt;
KDE's source code is available in several ways:&lt;br /&gt;
* [[/Sources/Anonymous SVN|Anonymous SVN]]&lt;br /&gt;
* [http://websvn.kde.org/ Browse Code Online]&lt;br /&gt;
* [ftp://ftp.kde.org/pub/kde/unstable/snapshots/ Daily Snapshots]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; border: 1px solid #1e90ff; padding: 0 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; margin-top:0.8em; margin-left:0.8em&amp;quot;&amp;gt;[[Image:Action_build.png|left|32px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build KDE ==&lt;br /&gt;
&lt;br /&gt;
There are different KDE branches. For production use, a stable version of KDE is recommended.&lt;br /&gt;
* [[/Build/Stable Version|Stable version (branch)]]&lt;br /&gt;
* [[/Build/Unstable Version|Unstable version (trunk)]]&lt;br /&gt;
* [[/Build|Other versions and FAQ]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started</id>
		<title>Getting Started</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started"/>
				<updated>2006-10-02T04:43:25Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Getting the Source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the Compile KDE portal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; border: 1px solid #1e90ff; padding: 0 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; margin-top:0.8em; margin-left:0.8em&amp;quot;&amp;gt;[[Image:Action_down.svg|left|32px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
== Getting the Source ==&lt;br /&gt;
&lt;br /&gt;
KDE's source code is available in several ways:&lt;br /&gt;
* [[/Sources/Anonymous SVN|Anonymous SVN]]&lt;br /&gt;
* [http://websvn.kde.org/ Browse Code Online]&lt;br /&gt;
* [ftp://ftp.kde.org/pub/kde/unstable/snapshots/ Daily Snapshots]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; border: 1px solid #1e90ff; padding: 0 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Build KDE ==&lt;br /&gt;
&lt;br /&gt;
There are different KDE branches. For production use, a stable version of KDE is recommended.&lt;br /&gt;
* [[/Build/Stable Version|Stable version (branch)]]&lt;br /&gt;
* [[/Build/Unstable Version|Unstable version (trunk)]]&lt;br /&gt;
* [[/Build|Other versions and FAQ]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started</id>
		<title>Getting Started</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started"/>
				<updated>2006-10-02T04:42:14Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: /* Build KDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the Compile KDE portal.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; border: 1px solid #1e90ff; padding: 0 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; margin-top:0.8em; margin-left:0.8em&amp;quot;&amp;gt;[[Image:Action_down.svg|left|32px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
== Getting the Source ==&lt;br /&gt;
&lt;br /&gt;
KDE's source code is available over several ways:&lt;br /&gt;
* [[/Sources/Anonymous SVN|Anonymous SVN]]&lt;br /&gt;
* [http://websvn.kde.org/ Browse Code Online]&lt;br /&gt;
* [ftp://ftp.kde.org/pub/kde/unstable/snapshots/ Daily Snapshots]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0; border: 1px solid #1e90ff; padding: 0 1em 1em 1em; background-color:#F8F8FF; align:right;&amp;quot;&amp;gt;&lt;br /&gt;
== Build KDE ==&lt;br /&gt;
&lt;br /&gt;
There are different KDE branches. For production use, a stable version of KDE is recommended.&lt;br /&gt;
* [[/Build/Stable Version|Stable version (branch)]]&lt;br /&gt;
* [[/Build/Unstable Version|Unstable version (trunk)]]&lt;br /&gt;
* [[/Build|Other versions and FAQ]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4</id>
		<title>Talk:Installing third party softwares in terminal/Build/KDE4</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Talk:Installing_third_party_softwares_in_terminal/Build/KDE4"/>
				<updated>2006-09-15T19:47:21Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: ~/install&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
== ~/install ==&lt;br /&gt;
&lt;br /&gt;
When installing KDE4, I strongly recommend installing all tools (like dbus and cmake) and kde packages into the same place, e.g. ~/install. Qt is the only exception.&lt;br /&gt;
&lt;br /&gt;
The reason for this is because if you install some packages to ~/kde and some to /usr/local and maybe one in /usr then cmake will generate errors like:&lt;br /&gt;
&lt;br /&gt;
-- It is impossible to order the include directories.&lt;br /&gt;
&lt;br /&gt;
This is not a fatal error, so you will still be able to compile, but you will possibly be using the wrong versions of libraries and this will product problems that are very hard to diagnose.&lt;br /&gt;
&lt;br /&gt;
You may not experience any problems when installed like I advise not to, however I have and you might too in some typical situations.&lt;br /&gt;
&lt;br /&gt;
Please see:&lt;br /&gt;
&lt;br /&gt;
http://developer.kde.org/build/trunk.html&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic</id>
		<title>Getting Started/Build/Historic</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic"/>
				<updated>2006-09-15T18:29:08Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page is accurate as of 2006-08-07 for building older KDE stable versions. Other pages containing similar information are being consolidated to here.&lt;br /&gt;
Please help me find any similar pages so I can consolidate them. This page is being actively updated, contact Will Entriken (kde.org AT phor DOTT net) with any questions or hints.&lt;br /&gt;
&lt;br /&gt;
== Old Stable Versions of KDE ==&lt;br /&gt;
'''Note''': I don't know why you'd want to install older versions. Nonetheless, you've come to this page for that very reason. Please let me know what your motivation is so I can edit this page accordingly.&lt;br /&gt;
&lt;br /&gt;
; [[Build/Compile KDE 3.4|Compiling KDE 3.4.x]]&lt;br /&gt;
: Instructions for installing KDE 3.4.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[Build/Compile KDE 3.3|Compiling KDE 3.3.x]]&lt;br /&gt;
: Instructions for installing KDE 3.3.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[Build/Compile KDE 3.2|Compiling KDE 3.2.x]]&lt;br /&gt;
: Instructions for installing KDE 3.2.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[Build/Compile KDE 3.1|Compiling KDE 3.1.x]]&lt;br /&gt;
: Instructions for installing KDE 3.1.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[Build/Compile KDE 3.0|Compiling KDE 3.0.x]]&lt;br /&gt;
: Instructions for installing KDE 3.0.x from source code.&lt;br /&gt;
&lt;br /&gt;
; [[Build/Compile KDE 2.2.2|Compiling KDE 2.2.2]]&lt;br /&gt;
: Instructions for installing KDE 2.2.2 from source code.&lt;br /&gt;
&lt;br /&gt;
[[Category:Build KDE]]&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	<entry>
		<id>http://techbase.kde.org/Getting_Started/Build/Historic/KDE_3.5</id>
		<title>Getting Started/Build/Historic/KDE 3.5</title>
		<link rel="alternate" type="text/html" href="http://techbase.kde.org/Getting_Started/Build/Historic/KDE_3.5"/>
				<updated>2006-08-22T14:27:19Z</updated>
		
		<summary type="html">&lt;p&gt;Fulldecent: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Status===&lt;br /&gt;
This page is accurate as of 2006-08-08 for building KDE stable 3.5.4. Other pages contain similar information are are being consolidated to here. Similar pages include:&lt;br /&gt;
* [http://quality.kde.org/develop/cvsguide/buildstep.php]&lt;br /&gt;
&lt;br /&gt;
===KDE Stable===&lt;br /&gt;
The current version of KDE stable is 3.5.4. You will want to build KDE stable if you are a maintainer for an OS distribution. Otherwise, you may want to install KDE stable using the tools provided by your OS distribution or vendor.&lt;br /&gt;
&lt;br /&gt;
The current recommended way to install KDE stable is Konstruct, a build system which helps you to install KDE releases and applications on your system. It downloads defined source tarballs, checks their integrity, decompresses, patches, configures, builds and installs them. A complete KDE installation should be as easy as &amp;quot;cd meta/kde;make install&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
By default &amp;quot;Konstruct&amp;quot; installs to your home directory which means you don't have to possess root privileges or risk to damage your system or affect another KDE.&lt;br /&gt;
&lt;br /&gt;
Currently it gives a complete KDE 3.5.4 installation. Optionally you can install additional applications like KOffice 1.5.2 or KDevelop 3.3.4. &lt;br /&gt;
&lt;br /&gt;
===Compiling Yourself===&lt;br /&gt;
&lt;br /&gt;
The following instructions describe how to build KDE 3.5.x yourself, e.g. without using Konstruct or kdesvn-build.&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
To compile KDE you need:&lt;br /&gt;
&lt;br /&gt;
    * Qt 3.3.2 or newer&lt;br /&gt;
    * a C++ compiler which supports exceptions, preferably a recent gcc 3.x release. gcc 2.95.x is still working.&lt;br /&gt;
    * bunzip2 to decompress .bz2 files. You can find it here. Get libbz2 while you're at it, it enables reading of .tar.bz2 files in konqueror, and one day, will give access to .bz2 files to all KDE applications.&lt;br /&gt;
    * If you want SSL support (for instance for secure web sites in konqueror), make sure you install openssl, version 0.9.6 or later (versions 0.9.5x are not supported).&lt;br /&gt;
    * For a better regular-expressions support in Javascript, install libpcre.&lt;br /&gt;
    * For the KDE help system, you'll need to install libxml2, version 2.3.13 or newer.&lt;br /&gt;
    * There are additional modules that are compiled if the required library is present, but they aren't critical to run KDE. For instance, libldap for the LDAP kioslave, and cdparanoia for the audiocd kioslave. A more detailed list of requirements is available in the KDE 3.5 Requirements List&lt;br /&gt;
&lt;br /&gt;
==Download==&lt;br /&gt;
In order to run KDE applications, you need the Qt, arts, and kdelibs packages. For a simple desktop (with a window manager, panel, etc), you will also need kdebase. The other packages contain many other applications by topic: networking, graphics, multimedia, games, utilities, toys, software development, etc.&lt;br /&gt;
&lt;br /&gt;
You can find the Qt library (version 3.3.6) at ftp://ftp.trolltech.com/qt/source/&lt;br /&gt;
&lt;br /&gt;
KDE 3.5.x is available from ftp://download.kde.org/pub/kde/stable/&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
Unlike most compiled software, Qt is compiled in the place where it will stay instead of using a 'make install'. Please read the INSTALL instructions in the Qt package. You need to set the QTDIR and KDEDIR to the locations where Qt and KDE will be installed, respectively. Also, append $QTDIR/bin and $KDEDIR/bin to your $PATH and $LD_LIBRARY_PATH. Alternatively, instead of using $LD_LIBRARY_PATH, you may add your Qt and KDE library paths to /etc/ld.so.conf, but don't forget to run ldconfig as root after installing Qt and kdelibs, otherwise configure scripts will fail to find the newly installed libraries!&lt;br /&gt;
&lt;br /&gt;
If your distribution sets $XDG_DATA_DIRS and/or $XDG_CONFIG_DIRS you will want to update them to include the correct $KDEDIR/share/ resp. $KDEDIR/etc/xdg/&lt;br /&gt;
&lt;br /&gt;
    bunzip2 qt-x11-3.3.6.tar.bz2&lt;br /&gt;
    tar xvf qt-x11-3.3.6.tar&lt;br /&gt;
    cd qt-x11-3.3.6&lt;br /&gt;
    less INSTALL&lt;br /&gt;
    (Set up QTDIR, KDEDIR, PATH, LD_LIBRARY_PATH, XDG_DATA_DIRS and XDG_CONFIG_DIRS)&lt;br /&gt;
    cd $QTDIR&lt;br /&gt;
    ./configure -system-zlib -qt-gif -system-libpng \&lt;br /&gt;
    -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \&lt;br /&gt;
    -no-xinerama -no-g++-exceptions&lt;br /&gt;
    make&lt;br /&gt;
&lt;br /&gt;
Note that -thread is required (KDE will not run or even compile if you omit it), that -no-xinerama is only if you're not using xinerama, and -no-g++-exceptions is strongly recommended if you're using gcc.&lt;br /&gt;
&lt;br /&gt;
Make sure to compile and install first arts, and afterwards kdelibs before any other packages. Also, if you want to use kdeaddons, it should be compiled last as it requires kdebase, kdemultimedia, etc.&lt;br /&gt;
&lt;br /&gt;
For each KDE package:&lt;br /&gt;
&lt;br /&gt;
    bunzip2 &amp;lt;package&amp;gt;.tar.bz2&lt;br /&gt;
    tar xvf &amp;lt;package&amp;gt;.tar&lt;br /&gt;
    cd &amp;lt;package&amp;gt;&lt;br /&gt;
    ./configure&lt;br /&gt;
    make&lt;br /&gt;
    make install&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&lt;br /&gt;
    * If compiling on a system where GNU make is not the default make (that is, most systems other than Linux), please run 'gmake &amp;amp;&amp;amp; gmake install' instead of 'make &amp;amp;&amp;amp; make install'.&lt;br /&gt;
    * All packages mentioned here have to be compiled with the same compiler!&lt;br /&gt;
    * See the [http://www.kde.org/info/3.5.4.php|KDE 3.5 Info Page] for some common encountered problems when running KDE 3.5.&lt;/div&gt;</summary>
		<author><name>Fulldecent</name></author>	</entry>

	</feed>