-
Notifications
You must be signed in to change notification settings - Fork 4
/
Getting-meson_zh.html
282 lines (245 loc) · 11.7 KB
/
Getting-meson_zh.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
<!DOCTYPE html>
<html lang="en">
<head>
<base href=".">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>获取Meson</title>
<link rel="stylesheet" href="assets/css/dark-frontend.css" type="text/css" title="dark">
<link rel="alternate stylesheet" href="assets/css/light-frontend.css" type="text/css" title="light">
<link rel="stylesheet" href="assets/css/bootstrap-toc.min.css" type="text/css">
<link rel="stylesheet" href="assets/css/jquery.mCustomScrollbar.min.css">
<link rel="stylesheet" href="assets/js/search/enable_search.css" type="text/css">
<link rel="stylesheet" href="assets/css/prism-tomorrow.css" type="text/css" title="dark">
<link rel="alternate stylesheet" href="assets/css/prism.css" type="text/css" title="light">
<script src="assets/js/mustache.min.js"></script>
<script src="assets/js/jquery.js"></script>
<script src="assets/js/bootstrap.js"></script>
<script src="assets/js/scrollspy.js"></script>
<script src="assets/js/typeahead.jquery.min.js"></script>
<script src="assets/js/search.js"></script>
<script src="assets/js/compare-versions.js"></script>
<script src="assets/js/jquery.mCustomScrollbar.concat.min.js"></script>
<script src="assets/js/bootstrap-toc.min.js"></script>
<script src="assets/js/jquery.touchSwipe.min.js"></script>
<script src="assets/js/anchor.min.js"></script>
<script src="assets/js/tag_filtering.js"></script>
<script src="assets/js/language_switching.js"></script>
<script src="assets/js/styleswitcher.js"></script>
<script src="assets/js/lines_around_headings.js"></script>
<script src="assets/js/prism-core.js"></script>
<script src="assets/js/prism-autoloader.js"></script>
<script src="assets/js/prism_autoloader_path_override.js"></script>
<script src="assets/js/prism-keep-markup.js"></script>
<script src="assets/js/trie.js"></script>
<link rel="icon" type="image/png" href="assets/images/favicon.png">
<link rel="shortcut icon" href="assets/images/favicon.png">
</head>
<body class="no-script
">
<script>
$('body').removeClass('no-script');
</script>
<nav class="navbar navbar-fixed-top navbar-default" id="topnav">
<div class="container-fluid">
<div class="navbar-right">
<a id="toc-toggle">
<span class="glyphicon glyphicon-menu-right"></span>
<span class="glyphicon glyphicon-menu-left"></span>
</a>
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-wrapper" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<span title="light mode switch" class="glyphicon glyphicon-sunglasses pull-right" id="lightmode-icon"></span>
<form class="navbar-form pull-right" id="navbar-search-form">
<div class="form-group has-feedback">
<input type="text" class="form-control input-sm" name="search" id="sidenav-lookup-field" placeholder="search" disabled>
<span class="glyphicon glyphicon-search form-control-feedback" id="search-mgn-glass"></span>
</div>
</form>
</div>
<div class="navbar-header">
<a id="sidenav-toggle">
<span class="glyphicon glyphicon-menu-right"></span>
<span class="glyphicon glyphicon-menu-left"></span>
</a>
<a id="home-link" href="index.html" class="hotdoc-navbar-brand">
<img src="assets/images/meson_logo.png" alt="Home">
</a>
</div>
<div class="navbar-collapse collapse" id="navbar-wrapper">
<ul class="nav navbar-nav" id="menu">
<li class="dropdown">
<a class="dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Modules <span class="caret"></span>
</a>
<ul class="dropdown-menu" id="modules-menu">
<li>
<a href="CMake-module.html">CMake</a>
</li>
<li>
<a href="Cuda-module.html">CUDA</a>
</li>
<li>
<a href="Dlang-module.html">Dlang</a>
</li>
<li>
<a href="External-Project-module.html">External Project</a>
</li>
<li>
<a href="Fs-module.html">Filesystem</a>
</li>
<li>
<a href="Gnome-module.html">GNOME</a>
</li>
<li>
<a href="Hotdoc-module.html">Hotdoc</a>
</li>
<li>
<a href="i18n-module.html">i18n</a>
</li>
<li>
<a href="Icestorm-module.html">Icestorm</a>
</li>
<li>
<a href="Java-module.html">Java</a>
</li>
<li>
<a href="Keyval-module.html">Keyval</a>
</li>
<li>
<a href="Pkgconfig-module.html">Pkgconfig</a>
</li>
<li>
<a href="Python-3-module.html">Python 3</a>
</li>
<li>
<a href="Python-module.html">Python</a>
</li>
<li>
<a href="Qt4-module.html">Qt4</a>
</li>
<li>
<a href="Qt5-module.html">Qt5</a>
</li>
<li>
<a href="Qt6-module.html">Qt6</a>
</li>
<li>
<a href="Rust-module.html">Rust</a>
</li>
<li>
<a href="Simd-module.html">Simd</a>
</li>
<li>
<a href="SourceSet-module.html">SourceSet</a>
</li>
<li>
<a href="Wayland-module.html">Wayland</a>
</li>
<li>
<a href="Windows-module.html">Windows</a>
</li>
</ul>
</li>
<li class="dropdown">
<a class="dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Quick References <span class="caret"></span>
</a>
<ul class="dropdown-menu" id="quick-refs-menu">
<li>
<a href="Reference-manual.html">Functions</a>
</li>
<li>
<a href="Build-options.html">Options</a>
</li>
<li>
<a href="Configuration.html">Configuration</a>
</li>
<li>
<a href="Dependencies.html">Dependencies</a>
</li>
<li>
<a href="Unit-tests.html">Tests</a>
</li>
<li>
<a href="Syntax.html">Syntax</a>
</li>
</ul>
</li>
</ul>
<div class="hidden-xs hidden-sm navbar-text navbar-center">
<p><b>The Meson Build System</b></p>
</div>
</div>
</div>
</nav>
<main>
<div data-extension="core" data-hotdoc-in-toplevel="True" data-hotdoc-project="Meson-documentation" data-hotdoc-ref="Getting-meson_zh.html" class="page_container" id="page-wrapper">
<script src="assets/js/utils.js"></script>
<div class="panel panel-collapse oc-collapsed" id="sidenav" data-hotdoc-role="navigation">
<script src="assets/js/full-width.js"></script>
<div id="sitenav-wrapper">
<iframe src="hotdoc-sitemap.html" id="sitenav-frame"></iframe>
</div>
</div>
<div id="body">
<div id="main">
<div id="page-description" data-hotdoc-role="main">
<h1 id="meson">获取Meson</h1>
<p>Meson基于Python3运行,要求Python版本3.5以上。 如果你的操作系统提供包管理器, 你应该用包管理器安装meson;如果没有包管理器,你应该在<a href="https://www.python.org/downloads/">Python主页</a>下载合适的Python3。相关请参阅<a href="Getting-meson_zh.html#%E7%89%B9%E6%AE%8A%E5%B9%B3%E5%8F%B0%E7%9A%84%E5%AE%89%E8%A3%85%E7%89%B9%E4%BE%8B">特殊平台的安装特例</a>.</p>
<h2 id="meson1">下载Meson</h2>
<p>Meson发行版可在 <a href="https://github.com/mesonbuild/meson/releases">GitHub发行页面</a>下载, 你可以在release的解压目录或者git仓库目录里直接运行 <code>./meson.py</code> ,不需要进行任何特殊操作。</p>
<p>在Windows下,如果你安装Python时没有将Python路径添加到环境变量, 那你应该使用<code>python /path/to/meson.py</code>命令运行Meson,当然<code>python</code> 的版本应该大于3.5。</p>
<p>最新的开发版本的源码可以直接通过<a href="https://github.com/mesonbuild/meson">Git</a>获得,我们尽可能保证它总是可以正常使用。所有的提交通过pull-request进行,此过程将运行 CI 并且会在多个平台进行测试。</p>
<h2 id="pipmeson">使用pip安装Meson</h2>
<p>Meson在<a href="https://pypi.python.org/pypi/meson/">Python包索引</a>中,可通过<code>pip3 install meson</code>命令安装,如果在root环境下,它会在系统范围内安装。</p>
<p>相反,你也可以使用 <code>pip3 install --user meson</code>命令来为<code>user</code>用户单独安装,此过程不需要任何特殊权限. Meson会被安装到<code>~/.local/</code>目录下,所以你需要将 <code>~/.local/bin</code>添加至你的<code>PATH</code>.</p>
<h2 id="msimesonninja">使用MSI安装包安装Meson和Ninja</h2>
<p>我们也在<a href="https://github.com/mesonbuild/meson/releases">GitHub发行页面</a>提供MSI安装包,可以同时为Windows安装 Meson和Ninja。 它也包含一份嵌入性的Python拷贝, 所以<a href="Python-module.html">Python module</a>可以不靠任何外部依赖的情况下正如期望般的正常工作。</p>
<p>因为这是新特性,请多留意,如果出现BUG欢迎反馈!</p>
<h2 id="">所需依赖</h2>
<p>最主要的, 你需要 <a href="https://ninja-build.org/">Ninja可执行程序</a> 来使用Meson默认的
<code>ninja</code> 后端参数。这个参数可以用于所有平台和工具链包括 GCC, Clang, Visual Studio, MinGW,ICC, ARMCC.</p>
<p>如果可能,你应该使用包管理器提供的版本,否则的话,你应该
在[Ninja发行页面]下载可执行二进制文件。(https://github.com/ninja-build/ninja/releases).</p>
<p>如果你只用Visual Studio后端参数 (<code>--backend=vs</code>)来生成Windows上的Visual Studio工程文件或者XCode后端参数 (<code>--backend=xcode</code>) 生成macOS上的
XCode工程文件, 那么你不需要安装Ninja.</p>
<h1 id="1">特殊平台的安装特例</h1>
<h2 id="windows-python3">Windows Python3</h2>
<p>安装Python3时,强烈推荐以下安装器选项 (非必须,请结合实际) :</p>
<p><img src="images/py3-install-1.png" alt="installer step 1" title="Enable 'Add Python 3.6 to PATH' and click 'Customize installation'" id="installer-step-1">
<img src="images/py3-install-2.png" alt="installer step 2" title="Optional Features: ensure 'pip' is enabled" id="installer-step-2">
<img src="images/py3-install-3.png" alt="installer step 3" title="Advanced Options: enable 'Install for all users'" id="installer-step-3"></p>
<p>完成这个之后, <code>python</code> 和<code>pip</code>的路径会收录进<code>PATH</code>,你可以使用pip安装Meson. 你也可以在Windows任何终端下直接运行<code>meson</code>而不是不得不输入<code>py -3</code>完整路径去运行 <code>meson.py</code>脚本.</p>
<h2 id="msys2-python3">MSYS2 Python3</h2>
<p>如果你使用MSYS2作为你的Windows开发环境,请确信你<strong>没有</strong>将 <code>msys/python</code> 当作你的默认Python使用. 请使用 <code>mingw32/mingw-w64-i686-python3</code> 或者 <code>mingw64/mingw-w64-x86_64-python3</code>,这取决于MinGW不同的构建对象.</p>
</div>
</div>
<div id="search_results">
<p>The results of the search are</p>
</div>
<div id="footer">
<hr>
<div class="license-description">
Website licensing information are available on the <a href="legal.html">Legal</a> page.
</div>
</div>
</div>
<div id="toc-column">
<div class="edit-button">
<a href="https://github.com/mesonbuild/meson/edit/master/docs/markdown/Getting-meson_zh.md" data-hotdoc-role="edit-button">Edit on GitHub</a>
</div>
<div id="toc-wrapper">
<nav id="toc"></nav>
</div>
</div>
</div>
</main>
<script src="assets/js/navbar_offset_scroller.js"></script>
</body>
</html>