Install GNOME development environment on Mageia

Minimal version requirements

For setting up a decent GNOME development environment you should be on a fairly recent distribution to avoid fighting with old problems and dependencies. The following instructions assume that you have installed Mageia 2 on your computer already.

Development specific package groups

Mageia provides a set of tasks that contain nearly all relevant packages for software development. You can use the following command to install three tasks which cover the development in a GNOME environment:

#urpmi development-libs development-tools gnome-software-development 

Alternatively you can install all necessary packages manually, which is explained in the following sections.

Install the developer-tools

First you need to install the basic tools needed for GNOME development:

  • anjuta - Integrated development environment

  • glade - Interface designer

  • devhelp - API Browser

To do so, install these packages either using Install & Remove Software in the Mageia Control Center or the urpmi command line utility:

#urpmi anjuta glade3 devhelp

Install required packages for your favourite programming language

Decide which programming language you are going to use and install the appropriate packages for one or more languages. The following subsections will the packages you have to install:

C

For C programming you need to install the development version of the important GNOME libraries. Those contain the header files and additional linker information:

$ sudo yum install gtk3-devel gstreamer-devel clutter-devel webkitgtk3-devel libgda-devel gobject-introspection-devel

In addition, you will want to install the documentation packages of this libraries so you can view them in the API browser:

$ sudo yum install gtk3-devel-docs gstreamer-devel-docs clutter-doc

(!) Note that there might be no packaged API documentation for some packages.

C++

Be sure to have the C++-Compiler installed:

$ sudo yum install gcc-c++

For C++ programming you need to install the development version of the important GNOME libraries. Those contain the header files and additional linker information:

$ sudo yum install gtkmm30-devel gstreamermm-devel cluttermm-devel webkitgtk3-devel libgdamm-devel

In addition, you will want to install the documentation packages of this libraries so you can view them in the API browser:

$ sudo yum install gtkmm30-doc gstreamermm-doc

Python

Python uses GObjectIntrospection which means you don't need to install additional development libraries but you should be sure to have a decent python environment installed though this is the default in Fedora. Also you need to install the pygobject package to be able to use introspection:

$ sudo yum install python pygobject2

Vala

As the Vala compiler actually translates your code into C code you will have to install all the packages listed in the C section and in addition you need to install the vala compiler:

$ sudo yum install vala vala-devel vala-tools vala-doc

(!) Note that you need to install all appropriate development packages (*-devel) for libraries you use in your vala code.

JavaScript

JavaScript uses GObjectIntrospection which means you don't need to install additional development libraries but you need to have the JavaScript intepreter installed though this is the default in Fedora:

$ sudo yum install gjs gjs-devel

Note there is also Seed which is another JavaScript implementation used in GNOME but the examples on http://developer.gnome.org are all done with gjs.

Install additional libraries needed for the GStreamer demos

If you want to follow the tutorials on http://developer.gnome.org you need to install some additional GStreamer packages:

  • gstreamer-plugins-bad-free
  • gstreamer-plugins-bad-free-extras

Keep this page up-to-date

Distribution information can change rather fast so please correct errors found on this page. If you are not able to figure out yourself, please drop a mail to gnome-doc-list@gnome.org. Thanks!


DeveloperDocumentation

Projects/DeveloperTools/Installation/Mageia (last edited 2014-09-03 19:30:02 by SvitozarCherepii)