Difference between revisions of "Schedules/KDE4/4.0 Requirements"

Jump to: navigation, search
m (fluff up the intro a little)
(Replaced content with "{{Moved To Community}}")
Line 1: Line 1:
KDE 4.0 Compilation Requirements -- intended to be a comprehensive list of all external software needed to build a full-featured KDE 4.0.
+
{{Moved To Community}}
 
+
= Compilers =
+
<em>Compiler Requirements.</em> KDE is designed to be portable and hence to compile with a large variety of GNU/Linux, UNIX, Windows and MacOS compilers.
+
However, KDE is advancing very rapidly and the ability of native compilers on various systems to compile KDE depends on users of those systems [http://bugs.kde.org reporting] compile problems to the responsible developers.
+
 
+
In addition, the C++ implementation in [http://gcc.gnu.org gcc], the most popular KDE compiler, has been advancing rapidly, and has also recently undergone a major redesign. As a result, KDE will not compile properly with older versions of gcc or their newest unreleased version.
+
 
+
{|border=1 cellpadding="5" cellspacing="0" align="center"
+
|+ Compiler support table
+
|-
+
! Compiler !! Version !! Status !! Comment
+
|-
+
! rowspan=7 | gcc
+
|style="background:red"| 3.2 and older
+
|style="background:red"| Not supported
+
|
+
|-
+
|style="background:green"| 3.3
+
|style="background:green"| Supported
+
|
+
|-
+
|style="background:green"| 3.4
+
|style="background:green"| Supported
+
|
+
|-
+
|style="background:green"| 4.0
+
|style="background:green"| Supported
+
| 4.0.0 is not supported
+
|-
+
|style="background:green"| 4.1
+
|style="background:green"| Supported
+
|
+
|-
+
|style="background:green"| 4.2
+
|style="background:green"| Supported
+
|
+
|-
+
|style="background:yellow"| 4.3
+
|style="background:yellow"| Experimental
+
| May or may not work, but patches are accepted
+
|-
+
! rowspan=5 | Microsoft VisualStudio
+
|style="background:red"| 6.0
+
|style="background:red"|Not supported
+
|-
+
|style="background:red"| .NET 2002
+
|style="background:red"| Not supported
+
|
+
|-
+
|style="background:green"| .NET 2003
+
|style="background:green"| Supported
+
|
+
|-
+
|style="background:green"| .NET 2005
+
|style="background:green"| Supported
+
| Including the Express version
+
|-
+
|style="background:green"| .NET 2008
+
|style="background:green"| Supported
+
| No reports yet of success, but there shouldn't be problems
+
|-
+
! rowspan=3 | SunStudio
+
|style="background:yellow"| 11
+
|style="background:yellow"| Unknown
+
|
+
|-
+
|style="background:green"| 12
+
|style="background:green"| Ongoing
+
| Support is being worked on
+
|}
+
 
+
= Software Requirements, by Function =
+
== Basic ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://www.trolltech.com Qt >= 4.3.3]
+
|style="background:red"| Required
+
|| Qt is the C++ cross-platform GUI toolkit upon which the great majority of KDE is built.
+
|| Qt is required by all KDE4 code.
+
|| ALL
+
|- valign="top"
+
| [http://cmake.org CMake >= 2.4.5]
+
|style="background:red"| Required
+
|| CMake is a cross-platform make system used that forms the basis of the KDE4 buildsystem. <small>'''Note''': CMake >= 2.6.0 with chrpath is recommended for faster linking time, but not required.</small>
+
|| CMake is required to build all KDE4 code.
+
|| ALL
+
|- valign="top"
+
| [http://www.freedesktop.org/wiki/Software/shared-mime-info Shared-Mime-Info >= 0.20]
+
|style="background:red"| Required
+
||The freedesktop.org shared MIME database
+
||
+
|| ALL
+
|- valign="top"
+
| [http://www.freetype.org/ FreeType]
+
| style="background:yellow"|Recommended
+
|| A Free, High-Quality, and Portable Font Engine
+
|| Better DVI support in okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Help ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://www.xmlsoft.org libxml2 >= 2.4.8]
+
|style="background:yellow"| Recommended
+
|| Libxml provides an XML parser and toolkit. XML is a metalanguage to design markup languages, such as HTML.
+
|| Libxml is used for reading KDE documentation. Note that even though earlier versions of libxml2 may work, versions 2.4.26 through 2.4.28 have a bug which prevents their use in KDE.
+
|| kdelibs,<br> kdepimlibs,<br> kdebase,<br> kdeadmin,<br> kdeartwork,<br> kdebindings,<br> kdeedu,<br> kdegames,<br> kdegraphics,<br> kdemultimedia,<br> kdenetwork,<br> kdepim,<br> kdesdk,<br> kdetoys,<br> kdeutils,<br> koffice,<br> kdevelop
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Hardware ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://www.cups.org CUPS >= 1.1.9]
+
|style="background:green"| Optional
+
|| CUPS (the Common Unix Printing System) is a modern printing architecture for UNIX systems.
+
|| CUPS provides enhanced printing administration, printing options and usability to all KDE applications. KDE provides tools to configure CUPS.
+
|| kdelibs,<br> kdebase
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Networking ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://ppp.samba.org pppd]
+
|style="background:green"| Optional
+
|| Pppd is a PPP (Point-to-Point Protocol) daemon. PPP is a common protocol for connecting to the Internet via a modem.
+
|| Kppp uses pppd to connect to the Internet using a computer POTS modem.
+
|| kdenetwork
+
|- valign="top"
+
| [http://libvncserver.sourceforge.net/ LibVNCServer / LibVNCClient >= 0.9.1] ([http://sourceforge.net/project/showfiles.php?group_id=32584&package_id=24717 download])
+
|style="background:green"| Optional
+
|| LibVNCServer / LibVNCClient is a library for VNC support.
+
|| KRDC uses LibVNCClient for VNC client support. Krfb uses LibVNCServer for VNC server support.
+
|| kdenetwork
+
|- valign="top"
+
| [http://www.rdesktop.org/ rdesktop >= 1.5.0]
+
|style="background:green"| Optional
+
|| rdesktop is a Remote Desktop Protocol (RDP) client.
+
|| KRDC uses rdesktop for RDP support.
+
|| kdenetwork
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Browsing ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://java.sun.com Java >= 1.3]
+
|style="background:yellow"| Recommended
+
|| Java is a programming language designed for use in the distributed environment of the Internet. Since Netscape integrated Java into its browser, Java has become a popular language for websites.
+
|| Some websites require the use of Java for some or all of their services. In addition, Java bindings exist for KDE which enables writing KDE applications in the Java language.
+
|| kdebase,<br> kdebindings
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Security ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://www.openssl.org OpenSSL >= 0.9.6]
+
|style="background:yellow"| Recommended
+
|| OpenSSL is a robust, commercial-grade, full-featured and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a full-strength general purpose cryptography library.
+
|| KDE uses OpenSSL for the bulk of secure communications, including secure web browsing via HTTPS.
+
|| kdelibs,<br> kdebase,<br> kdenetwork,<br> kdepim
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Graphics ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://mesa3d.sourceforge.net OpenGL]
+
|style="background:yellow"| Recommended
+
|| OpenGL is an industry-standard API for developing portable, interactive 2D and 3D graphics applications.
+
|| The 3D hardware acceleration available through the OpenGL API is used in applications ranging from graphics and modellers to screensavers and video players.
+
|| kdelibs,<br> kdebase,<br> kdegraphics,<br> kdemultimedia
+
|- valign="top"
+
| [http://poppler.freedesktop.org Poppler-Qt4]
+
| style="background:yellow"|Recommended
+
|| PDF rendering library
+
|| Adds PDF support to Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://libspectre.freedesktop.org/ libspectre]
+
| style="background:yellow"|Recommended
+
|| PostScript library
+
|| Adds PostScript support to Okular (including support for printing preview in any KDE application)
+
|| kdegraphics
+
|- valign="top"
+
| [http://morte.jedrea.com/~jedwin/projects/chmlib chmlib]
+
| style="background:yellow"|Recommended
+
|| CHM library
+
|| Adds CHM support to Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://djvu.sourceforge.net/ DjVuLibre]
+
| style="background:yellow"|Recommended
+
|| DjVu library
+
|| Adds DjVu support to Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://www.remotesensing.org/libtiff/ libTIFF]
+
| style="background:yellow"|Recommended
+
|| TIFF library
+
|| Adds TIFF support to Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://www.ijg.org/ libjpeg]
+
| style="background:yellow"|Recommended
+
|| JPEG library
+
|| Needed for PalmDB documents in Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://sourceforge.net/projects/ebook-tools ebook-tools]
+
| style="background:yellow"|Recommended
+
|| eBook tools
+
|| Adds EPub support in Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://www.cups.org/ CUPS lpr and/or lp]
+
| style="background:yellow"|Recommended
+
|| CUPS version of lpr or lp commands
+
|| Needed for advanced printing of PDF, PS, or DjVu docments in Okular
+
|| kdegraphics
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Multimedia ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://www.alsa-project.org ALSA]
+
|style="background:yellow"| Recommended
+
|| ALSA (Advanced Linux Sound Architecture) provides audio and MIDI functionality for Linux.
+
|| ALSA provides advanced audio support for various KDE multimedia and audio applications
+
|| kdelibs,<br>kdemultimedia
+
|- valign="top"
+
| [http://xinehq.de/ Xine-lib]
+
| style="background:yellow"|Recommended
+
|| The Xine libraries are a backend to decode and play various format of multimedia files (audio and video).
+
|| Phonon uses Xine as its main backend
+
|| kdebase-runtime
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
Note: at least one Phonon backend must be compiled if you want to have any multimedia support.
+
 
+
== Development ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://subversion.tigris.org Subversion]
+
|style="background:green"| Optional
+
|| Subversion is a revision control system like CVS.
+
|| KDevelop 3.0 can use Subversion to maintain a revision control repository for projects. There is also a kioslave for Subversion.
+
|| kdesdk,<br> kdevelop
+
|- valign="top"
+
| [http://www.nongnu.org/cvs CVS]
+
|style="background:green"| Optional
+
|| CVS is a revision control system.
+
|| Cervisia is a graphical frontend for the CVS client.
+
|| kdesdk
+
|- valign="top"
+
| [http://www.foo.org FooPackage]
+
| style="background:yellow"|Recommended
+
|| Foo description
+
|| Foo explanation
+
|| kdemodule,<br> kdemodule,<br> kdemodule
+
|}
+
 
+
== Education ==
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
! Package
+
! Level
+
! Description
+
! Explanation
+
! Modules
+
|- valign="top"
+
| [http://caml.inria.fr/ocaml/ OCaml] + [http://www.recherche.enac.fr/opti/facile/ libfacile]
+
|style="background:green"| Optional
+
|| Objective Caml is the most popular variant of the Caml language; a Functional Constraint Library
+
|| OCaml and libfacile are used to implement a chemical equation solver in kalzium
+
|| kdeedu
+
|- valign="top"
+
| [http://www.python.org Python] + [http://www.boost.org Boost.Python]
+
|style="background:green"| Optional
+
|| Python is a programming language.<br />Boost.Python is a Boost library to allow easy interface of C++ to Python.
+
|| Boost.Python is needed for Python scripting in kig.
+
|| kdeedu
+
|- valign="top"
+
| [http://tiswww.case.edu/php/chet/readline/rltop.html Readline]
+
|style="background:green"| Optional
+
|| Readline is a library for having an input prompt.
+
|| It is used in KAlgebra's console version (calgebra).
+
|| kdeedu
+
|}
+
 
+
= Software Requirements, by Module =
+
 
+
{| border="1" cellpadding="5" cellspacing="0" align="center"
+
|-
+
!| '''Module'''
+
!style="background:red"|Required
+
!style="background:yellow"|Recommended
+
!style="background:green"|Optional
+
!style="background:grey"|Comments
+
|- valign="top"
+
|| '''kdelibs'''
+
|| ALSA (Linux),<br> Perl,<br> GIF,<br> JPEG,<br> LibXml2,<br> LibXslt,<br> PNG,<br> SharedMimeInfo,<br> Strigi,<br> ZLib
+
|| ACLs,<br> BZip2,<br> Libintl,<br> OpenGL,<br> OpenSSL
+
|| ASpell,<br> Avahi,<br> DNSSD,<br> Enchant,<br> FAM,<br> Kerberos GSSAPI,<br> HSpell,<br> Jasper,<br> OpenEXR,<br> PCRE,<br> Soprano
+
||
+
 
+
|- valign="top"
+
|| '''kdepimlibs'''
+
|| Boost,<br> Gpgme
+
|| LDAP,<br> Sasl2
+
||
+
||
+
 
+
|- valign="top"
+
|| '''kdebase-runtime'''
+
|| Blitz,<br> Strigi,<br> Xine (Linux,Unix)
+
|| BZip2,<br> XCB
+
|| OpenEXR,<br> Samba,<br> Soprano,<br> CLucene
+
||
+
 
+
|- valign="top"
+
|| '''kdebase-workspace'''
+
|| Blitz,<br> Strigi
+
|| OpenGL,<br> LibXKlavier
+
|| BlueZ,<br> Freetype,<br> GLIB2,<br> GObject,<br> NetworkManager,<br> RAW1394,<br> Sensors,<br> LibUSB
+
||
+
 
+
|- valign="top"
+
|| '''kdebase-apps'''
+
|| Blitz,<br> Strigi
+
||
+
|| Soprano,<br> XKB
+
||
+
 
+
|- valign="top"
+
|| '''kdeaccessibility'''
+
||
+
||
+
|| ALSA
+
||
+
 
+
|- valign="top"
+
|| '''kdeadmin'''
+
||
+
||
+
||
+
|| No compilation requirements
+
 
+
|- valign="top"
+
|| '''kdeartwork'''
+
|| Strigi
+
|| Xscreensaver
+
|| OpenGL
+
||
+
 
+
|- valign="top"
+
|| '''kdeedu'''
+
|| Zlib
+
||
+
|| BoostPython,<br>
+
CFitsio,<br>
+
Eigen,<br>
+
Libfacile,<br>
+
Nova,<br>
+
OCaml,<br>
+
OpenBabel2,<br>
+
OpenGL,<br>
+
Readline,<br>
+
SBIG,<br>
+
LibUSB
+
||
+
 
+
|- valign="top"
+
|| '''kdegames'''
+
||
+
||
+
|| GGZ,<br> OpenGL
+
||
+
 
+
|- valign="top"
+
|| '''kdegraphics'''
+
|| Strigi
+
|| Blitz,<br>
+
Exiv2,<br>
+
JPEG,<br>
+
LibGS,<br>
+
Poppler,<br>
+
SANE,<br>
+
|| CHM,<br>
+
DjVuLibre,<br>
+
Freetype,<br>
+
Gphoto2,<br>
+
TIFF
+
||
+
 
+
|- valign="top"
+
|| '''kdemultimedia'''
+
|| ALSA
+
||
+
||Cdparanoia,<br>
+
FLAC,<br>
+
MusicBrainz,<br>
+
OggVorbis,<br>
+
Taglib,<br>
+
Theora,<br>
+
TunePimp
+
||
+
 
+
|- valign="top"
+
|| '''kdenetwork'''
+
|| Blitz,<br>
+
Boost,<br>
+
ZLib
+
|| OpenSSL
+
||
+
Decibel,<br>
+
DNSSD,<br>
+
IDN,<br>
+
JPEG,<br>
+
LibVNCServer,<br>
+
LibXml2,<br>
+
LibXslt,<br>
+
QCA2,<br>
+
SLP,<br>
+
Sqlite,<br>
+
Xmms
+
||
+
 
+
|- valign="top"
+
|| '''kdepim'''
+
|| Boost,<br> QGpgme,<br> Strigi,<br> ZLib
+
|| OpenSSL
+
|| GLib2,<br> GNOKII,<br> LibXslt,<br> LibMal,<br> MySQL (Embedded),<br> OpenSync,<br> Pilotlink,<br> QCA2
+
|| Only xsltproc needed from the libXslt package
+
 
+
|- valign="top"
+
|| '''kdesdk'''
+
|| Strigi
+
||
+
|| LibXml2,<br>
+
LibXslt,<br>
+
Subversion,<br> CVS
+
||
+
 
+
|- valign="top"
+
|| '''kdeutils'''
+
|| Blitz
+
||
+
||GMP,<br>
+
LibZip,<br>
+
Python Libs,<br>
+
tpctl
+
||
+
 
+
|- valign="top"
+
|| '''kdetoys'''
+
|| Strigi
+
||
+
||
+
||
+
 
+
|}
+

Revision as of 13:47, 11 March 2016

This page is now on the community wiki.


Content is available under Creative Commons License SA 4.0 unless otherwise noted.