v30 | v31 | |
---|---|---|
171 | 171 | 基本的な流れは以下の通りです。 |
172 | 172 | {{{ |
173 | $ sudo vbuilder |
|
174 | $ sudo vbuilder |
|
175 | $ sudo vbuilder |
|
173 | $ sudo vbuilder clean ← 必要であれば、あらかじめ chroot 環境を削除する。 | |
174 | $ sudo vbuilder build | |
175 | $ sudo vbuilder build-rpm hoge.src.rpm | |
176 | 176 | }}} |
177 | 177 | |
178 | 178 | これらは一度に渡すこともできて、 |
179 | 以下のようにすれば、順次 |
|
180 | {{{ |
|
181 | $ sudo vbuilder |
|
179 | 以下のようにすれば、順次 clean → build → build-rpm のように実行します。 | |
180 | {{{ | |
181 | $ sudo vbuilder clean build build-rpm hoge.src.rpm | |
182 | 182 | }}} |
183 | 183 | |
… | … | |
187 | 187 | 例えば、hoge.src.rpm を vbuilder へ投げます。 |
188 | 188 | {{{ |
189 | $ sudo vbuilder |
|
189 | $ sudo vbuilder clean build build-rpm hoge.src.rpm | |
190 | 190 | }}} |
191 | 191 | ところが、すでにリポジトリにある foo-devel, bar-devel パッケージと、 |
… | … | |
197 | 197 | hoge.src.rpm のビルドを再度実行してみます。 |
198 | 198 | {{{ |
199 | $ sudo vbuilder |
|
199 | $ sudo vbuilder install-rpm foo-devel install-rpm bar-devel install-rpm /some/where/fuga.arch.rpm build-rpm hoge.src.rpm | |
200 | 200 | }}} |
201 | 201 | |
… | … | |
204 | 204 | fuga.src.rpm の検証も兼ねて、vbuilder でテストしてみます。 |
205 | 205 | {{{ |
206 | $ sudo vbuilder |
|
206 | $ sudo vbuilder clean build build-rpm /some/where/fuga.src.rpm build-rpm hoge.src.rpm | |
207 | 207 | }}} |
208 | 208 | など。 |
… | … | |
235 | 235 | VineSeed 上の一時的な依存関係などの不具合により、 |
236 | 236 | {{{ |
237 | $ sudo vbuilder |
|
237 | $ sudo vbuilder clean build | |
238 | 238 | }}} |
239 | 239 | を実行しても、VineSeed の bootstrap を構築できない場合がありました。 |
… | … | |
241 | 241 | そのような場合は、このオプションを指定して |
242 | 242 | {{{ |
243 | $ sudo vbuilder |
|
243 | $ sudo vbuilder dist-upgrade clean build | |
244 | 244 | }}} |
245 | 245 | を実行すると、 |
… | … | |
248 | 248 | VineSeed の bootstrap を構築します。 |
249 | 249 | |
250 | === |
|
251 | {{{ |
|
252 | $ sudo vbuilder |
|
253 | }}} |
|
254 | のうち、 |
|
250 | === build-rpm === | |
251 | {{{ | |
252 | $ sudo vbuilder clean build build-rpm hoge.src.rpm | |
253 | }}} | |
254 | のうち、build-rpm hoge.src.rpm は、 | |
255 | 255 | 事前に vbuilder を当てる chroot 環境の / の存在をチェックしています。 |
256 | 256 | そのとき、vbuilder を当てる chroot 環境の / が無ければ、 |
257 | あらかじめ |
|
258 | 実は、 |
|
259 | {{{ |
|
260 | $ sudo vbuilder |
|
257 | あらかじめ build と同等の処理をしますので、 | |
258 | 実は、build は省略して以下のように実行しても構いません。 | |
259 | {{{ | |
260 | $ sudo vbuilder clean build-rpm hoge.src.rpm | |
261 | 261 | }}} |
262 | 262 | |
… | … | |
266 | 266 | 例えば、 |
267 | 267 | {{{ |
268 | $ sudo vbuilder --target i686 |
|
268 | $ sudo vbuilder --target i686 build-rpm hoge-1.0-1vl6.src.rpm | |
269 | 269 | }}} |
270 | 270 | を実行すると、hoge-1.0-1vl6.i686.rpm がビルドされます。 |
… | … | |
274 | 274 | ユーザ foo が hoge-1.0-1vl5.src.rpm を vbuilder に投げたとします。 |
275 | 275 | {{{ |
276 | $ sudo vbuilder |
|
276 | $ sudo vbuilder clean build-rpm hoge.src.rpm | |
277 | 277 | }}} |
278 | 278 | このとき、chroot 環境で生成された hoge-1.0-1vl6.{i386,src}.rpm は、 |
… | … | |
335 | 335 | == 既知の問題 == |
336 | 336 | * RPMパッケージでProvidesされたパッケージ名を (2010年3月7日現在の) aptがハンドリングしないので、BuildRequiresにそのようなパッケージ名を指定したときにエラーがでる。 |
337 | * [workaround] |
|
337 | * [workaround] install-rpmオプションで実パッケージ名を指定する |