Difference between revisions of "Development/Languages"

Jump to: navigation, search
(added C++.)
 
(20 intermediate revisions by 12 users not shown)
Line 1: Line 1:
{{Template:I18n/Language Navigation Bar|Development/Languages}}
+
<languages />
 +
<translate>
  
 +
<!--T:1-->
 
KDE supports several programming languages for KDE 4 development.
 
KDE supports several programming languages for KDE 4 development.
  
==Stable and Mature==
+
==Stable and Mature== <!--T:2-->
  
 +
<!--T:3-->
 
Support for these languages is mature, fully maintained and suitable for application development:
 
Support for these languages is mature, fully maintained and suitable for application development:
  
 +
<!--T:4-->
 
* [[Development/Languages/C++ |C++]]
 
* [[Development/Languages/C++ |C++]]
 
* [[Development/Languages/Python|Python]]
 
* [[Development/Languages/Python|Python]]
 
* [[Development/Languages/Ruby|Ruby]]
 
* [[Development/Languages/Ruby|Ruby]]
 +
* [[Development/Languages/Qyoto|C#]]
 +
* [[Development/Languages/Perl|Perl]]
  
==In Development==
+
==In Development== <!--T:5-->
  
Support for these languages are still in development:
+
<!--T:6-->
 +
Support for these languages is still in development:
  
* [[Development/Languages/QtSharp|C#]]
+
<!--T:7-->
 
* [[Development/Languages/PHP-Qt|PHP]]
 
* [[Development/Languages/PHP-Qt|PHP]]
 +
* [[Development/Languages/Lqt|Lua]]
 +
* [[Development/Languages/KBasic|KBasic]] - BASIC language similar to VB
  
==Bindings Technologies and Embedding==
+
==Bindings Technologies and Embedding== <!--T:8-->
 +
 
 +
<!--T:9-->
 
* [[Development/Languages/Smoke|Smoke]] - Provides infrastructure which is used for creating bindings for multiple languages such as Ruby, C# and PHP.
 
* [[Development/Languages/Smoke|Smoke]] - Provides infrastructure which is used for creating bindings for multiple languages such as Ruby, C# and PHP.
  
Next to direct bindings to the standard APIs there are bindings for scripting specific applications. For more info see the [[Development/Languages/Kross|Kross]] page.
+
<!--T:10-->
 +
* [[Development/Languages/Kross|Kross]] - Provides embedded scripting for C++ applications. Multiple languages such as Python, Ruby, JavaScript, QtScript, Falcon and Java are supported.
  
==Support for Qt3 / KDE3==
+
<!--T:11-->
 +
* [[Development/Languages/QtScript|QtScript]] - The QtScript binding generator.
 +
 
 +
<!--T:12-->
 +
* [[Development/Languages/SIP|SIP]] - Used to generate the bindings for Python.
 +
 
 +
==Support for Qt3 / KDE3== <!--T:13-->
 +
 
 +
<!--T:14-->
 
* [[Development/Languages/Perl|Perl]]
 
* [[Development/Languages/Perl|Perl]]
 
* [[Development/Languages/Java|Java]]
 
* [[Development/Languages/Java|Java]]
Line 29: Line 49:
 
* [[Development/Languages/Tools|KDE interaction tools]] (Shell)
 
* [[Development/Languages/Tools|KDE interaction tools]] (Shell)
  
__NOTOC__
+
==Building current git master== <!--T:15-->
 +
 
 +
<!--T:16-->
 +
It is recommended to have the following in ~/.gitconfig:
 +
<syntaxhighlight lang="text">
 +
[url "git://anongit.kde.org/"]
 +
    insteadOf = kde:
 +
[url "ssh://git@git.kde.org/"]
 +
    pushInsteadOf = kde:
 +
</syntaxhighlight>
 +
to pull from the anongit servers, but push to the main git server.
 +
 
 +
<!--T:17-->
 +
Clone the repositories with
 +
<syntaxhighlight lang="bash">git clone kde:smokegen
 +
git clone kde:smokeqt
 +
git clone kde:smokekde
 +
git clone kde:qtruby
 +
git clone kde:korundum
 +
git clone kde:qyoto
 +
git clone kde:kimono
 +
git clone kde:perlqt
 +
git clone kde:perlkde
 +
git clone kde:kross-interpreters
 +
</syntaxhighlight>
 +
 
 +
<!--T:18-->
 +
Building happens as usual with
 +
<syntaxhighlight lang="bash">cmake <src-dir> -DCMAKE_INSTALL_PREFIX=/usr
 +
make
 +
make install</syntaxhighlight>
 +
 
 +
<!--T:19-->
 +
Smokegen has to be built first, then smokeqt and smokekde. After that you can then build the various language bindings. Note that the KDE bindings part always depends on the Qt part - so you have to build this one first.
 +
 
 +
<!--T:20-->
 +
kross-interpreters contains the language plugins for kross. They do not depend on any of the above.
 +
 
 +
</translate>

Latest revision as of 19:51, 12 July 2012

Other languages:Greek 100% • ‎English 100% • ‎Dutch 100% • ‎Chinese (China) 100%

KDE supports several programming languages for KDE 4 development.

Contents

[edit] Stable and Mature

Support for these languages is mature, fully maintained and suitable for application development:

[edit] In Development

Support for these languages is still in development:

[edit] Bindings Technologies and Embedding

  • Smoke - Provides infrastructure which is used for creating bindings for multiple languages such as Ruby, C# and PHP.
  • Kross - Provides embedded scripting for C++ applications. Multiple languages such as Python, Ruby, JavaScript, QtScript, Falcon and Java are supported.
  • QtScript - The QtScript binding generator.
  • SIP - Used to generate the bindings for Python.

[edit] Support for Qt3 / KDE3

[edit] Building current git master

It is recommended to have the following in ~/.gitconfig:

[url "git://anongit.kde.org/"]
    insteadOf = kde:
[url "ssh://git@git.kde.org/"]
    pushInsteadOf = kde:

to pull from the anongit servers, but push to the main git server.

Clone the repositories with

git clone kde:smokegen
git clone kde:smokeqt
git clone kde:smokekde
git clone kde:qtruby
git clone kde:korundum
git clone kde:qyoto
git clone kde:kimono
git clone kde:perlqt
git clone kde:perlkde
git clone kde:kross-interpreters

Building happens as usual with

cmake <src-dir> -DCMAKE_INSTALL_PREFIX=/usr
make
make install

Smokegen has to be built first, then smokeqt and smokekde. After that you can then build the various language bindings. Note that the KDE bindings part always depends on the Qt part - so you have to build this one first.

kross-interpreters contains the language plugins for kross. They do not depend on any of the above.


This page was last modified on 12 July 2012, at 19:51. This page has been accessed 74,524 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal