Développement plugins

From Stellarium

Jump to: navigation, search

Contents

[edit] Construire et installer

[edit] Linux

  • Générez le code du noyau Stellarium selon la page Compilation on Linux. Assurez-vous que l'accumulation de sous-répertoire sont nommés builds/unix.
  • Définissez la variable d'environnement STELROOT pour le chemin de l'arbre stellarium source, par exemple:
export STELROOT=/home/bob/stellarium
  • Changement de l'endroit où vous avez le code source de plugin installé, assurez-un sous-répertoire builds/Unix et le changement dans ce.
cd /home/bob/stel-plugins/PluginName
mkdir -p builds/unix
cd builds/unix
  • Run cmake, en précisant le type de build pour être le même que celui qui a été utilisé pour construire le code du noyau (Debug ou Release). Ensuite, lancez make
cmake -DCMAKE_BUILD_TYPE=Debug ../..
make
  • Pour l'installer, tapez simplement:
make install

Cela mettra les fichiers pour le plugin dans ~/.stellarium/modules/PluginName

[edit] Windows

  • Générez le code du noyau Stellarium selon la page Windows Build Instructions. Assurez-vous que l'accumulation de sous-répertoire est appelé builds/msys.
  • Définissez la variable d'environnement STELROOT pour être le chemin de l'arbre stellarium source, par exemple:
export STELROOT=/c/msys/1.0/home/bob/stellarium
  • Changer l'endroit où vous avez le code source de plugin installé, assurez-un sous-répertoire builds/msys et le changement dans.
cd /c/msys/1.0/home/bob/stel-plugins
mkdir -p builds/msys
cd builds/msys
  • Run cmake, en précisant le type de build d'être la même que celle qui a été utilisé pour construire le code du noyau (Debug ou Release). Ensuite, lancez make
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Debug ../..
make
  • Plusieurs des plugins ont un fichier nommé installer.iss dans le répertoire principal. Ceci peut être utilisé avec le générateur d'installation INNO pour générer un installeur windows pour le plugin.

[edit] Ecrire des Plugins

Si vous êtes un développeur, et j'aimerais avoir un aller à la rédaction de votre propre plugin Stellarium, les ressources suivantes pourraient être utiles:

[edit] Erreur d'enchaînement dynamique sous Windows

Si un plugin utilise une classe qui hérite d'une classe qui contient le Stellarium Q OBJET macro (par exemple, une fenêtre de dialogue qui hérite StelDialog), Stellarium refusera de le charger sur Windows, retournant un accès non valide à l'erreur d'emplacement mémoire La solution est de copier la classe parente (par exemple, StelDialog) aux sources du plugin et renommez-le de manière appropriée.

Des conseils sur la manière de résoudre cette question par une autre voie serait très appréciée.

Personal tools