| 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オプションで実パッケージ名を指定する |