安裝
Meson是基於python3實現,至少需要python3.5才能運行,默認采用ninja作為后端。
在Ubuntu下最簡單的是通過pip3安裝
1 $ sudo apt-get install python3 python3-pip ninja-build 2 $ sudo pip3 install meson
也可以只將meson安裝到當前用戶目錄下
1 $ pip3 install --user meson
這種方式會將meson安裝到~/.local/bin目錄下,因此需要將這個目錄增加到PATH中。
在較老的系統中,需要更新ninja:
1 $ git clone -b release --single-branch https://github.com/ninja-build/ninja.git 2 $ cd ninja 3 $ ./configure.py --bootstrap 4 $ whereis ninja 5 ninja: /usr/bin/ninja /etc/ninja /usr/bin/X11/ninja 6 $ sudo cp ninja /usr/bin/ninja
一個簡單的例子
1 $ cat > meson.build << EOF 2 > project('mesontest', 'c') 3 > executable('mesontest', test.c) 4 > EOF 5 6 $ meson builddir && cd builddir 7 $ ninja 8 $ ./mesontest 9 hello meson.
meson通過meson.build文件配置編譯語言及文件,project指定項目名稱及語言類型,executable指定可執行文件名及源文件。
通過Meson指定編譯選項
通過"meson configure"命令查看meson內置的選項、默認值及可選值。
項目可以通過meson_options.txt來增加項目特有的選項。
1 $ meson configure 2 ... 3 Project options: 4 Option Default Value Possible Values Description 5 gtk_doc auto [enabled, disabled, auto] Generate API documentation with gtk-doc 6 ...
在生成編譯配置時,可以通過 -D 指定編譯選項:
1 $ meson builddir -Dprefix=/usr -Dgtk_doc=disabled -Dtests=disabled 2 $ cd builddir && ninja -j8 3 $ meson install
可以在源碼根目錄通過 configure更新編譯選項,再執行ninja重新編譯:
1 $ meson configure builddir -Dprefix=/home/dev/tmp