Ero sivun ”Meson” versioiden välillä

Siirry navigaatioon Siirry hakuun
p Mesonin tiedostot ja koodi esimerkki
p tupla popis
 
(5 välissä olevaa versiota samalta käyttäjältä ei näytetä)
Rivi 36: Rivi 36:


== Mesonin tiedostot ==
== Mesonin tiedostot ==
Meson-projekti määritellään kahden pääasiallisen tiedoston kautta:
Meson-projekti määritellään kahden pääasiallisen tiedoston kautta.
* '''1. meson.build:''' Pääasiallinen rakennusmääritystiedosto, joka kuvaa, mitä tiedostoja projektissa on ja miten ne käännetään.


Koodiesimerkki Hei maailma! ''main.c''
'''1. meson.build'''
 
Pääasiallinen rakennusmääritystiedosto, joka kuvaa, mitä tiedostoja projektissa on ja miten ne käännetään.
 
C-koodi (main.c)
<syntaxhighlight lang="C">
<syntaxhighlight lang="C">
#include <stdio.h>
#include <stdio.h>
Rivi 51: Rivi 54:
}
}
</syntaxhighlight>
</syntaxhighlight>
'''Mesonin määritys (meson.build)'''


<syntaxhighlight lang="meson">
<syntaxhighlight lang="meson">
Rivi 57: Rivi 62:
</syntaxhighlight>
</syntaxhighlight>


* ''' 2. meson_options.txt:''' Määrittelee projektiin liittyvät käännösvaihtoehdot, joita käyttäjä voi muuttaa.
'''2. meson_options.txt'''  
 
Tässä on Hei maailma! esimerkki, miten ''meson_options.txt''-tiedostoa voi käyttää yhdessä ''meson.build''-tiedoston kanssa:


''meson_options.txt'' tiedosto määrittelee projektin käännösvaihtoehtoja, joita käyttäjä voi muuttaa konfigurointivaiheessa.
meson_options.txt-tiedosto määrittelee projektin käännösvaihtoehtoja, joita käyttäjä voi muuttaa konfigurointivaiheessa.


<syntaxhighlight lang="text">
<syntaxhighlight lang="text">
Rivi 68: Rivi 71:
</syntaxhighlight>
</syntaxhighlight>


meson.build
'''Mesonin logiikka (meson.build)'''
Voit käyttää näitä valintoja projektissa näin:


<syntaxhighlight lang="text">
<syntaxhighlight lang="text">
Rivi 95: Rivi 97:
Meson suosii aina ulkopuolista käännöstä (out-of-source build), mikä tarkoittaa, että käännöksessä syntyvät tiedostot (kuten objektit ja binäärit) luodaan erilliseen hakemistoon (tässä esimerkissä builddir) lähdekoodihakemiston ulkopuolelle.
Meson suosii aina ulkopuolista käännöstä (out-of-source build), mikä tarkoittaa, että käännöksessä syntyvät tiedostot (kuten objektit ja binäärit) luodaan erilliseen hakemistoon (tässä esimerkissä builddir) lähdekoodihakemiston ulkopuolelle.


'''1. Konfigurointi:''' Luo käännöshakemisto (Meson hoitaa tämän itse) ja luo tarvittavat rakennustiedostot. Tämä komento ajetaan lähdekoodihakemistossa:
'''1. Konfigurointi''' Luo käännöshakemisto (Meson hoitaa tämän itse) ja luo tarvittavat rakennustiedostot. Tämä komento ajetaan lähdekoodihakemistossa:


  meson setup builddir
  meson setup builddir


'''2. Kääntäminen:''' Käännä ohjelma Mesonin luomassa hakemistossa (''-C builddir''):
Jos haluat asentaa ohjelman paikallisesti ilman pääkäyttäjän oikeuksia (esim. hakemistoon ''~/.local''), konfiguroi Meson alussa ''--prefix''-valitsimella: ''meson setup builddir --prefix=~/.local''
 
'''2. Kääntäminen''' Käännä ohjelma Mesonin luomassa hakemistossa (''-C builddir''):
   
   
  meson compile -C builddir
  meson compile -C builddir


'''3. Asennus:''' Asenna ohjelma järjestelmään (vaatii pääkäyttäjän oikeudet):
{{Huomautus|Huomaa: Monissa nykyaikaisissa Meson-projekteissa meson compile voidaan korvata lyhyemmällä ''ninja -C builddir'' -komennolla, koska [[Ninja]] on Mesonin oletusarvoinen taustajärjestelmä.}}
 
'''3. Asennus''' Asenna ohjelma järjestelmään (vaatii pääkäyttäjän oikeudet):


  sudo meson install -C builddir
  sudo meson install -C builddir


{{Huomautus|Huomaa: Monissa nykyaikaisissa Meson-projekteissa meson compile voidaan korvata lyhyemmällä ''ninja -C builddir'' -komennolla, koska [[Ninja]] on Mesonin oletusarvoinen taustajärjestelmä.}}
Käytä sudoa vain, jos asennat järjestelmänlaajuisiin hakemistoihin. Käyttäjäkohtaisessa asennuksessa (käyttäen ''--prefixiä'') [[sudo]]a ei tarvita.


==Katso myös==
==Katso myös==
Noudettu kohteesta ”https://www.linux.fi/wiki/Meson