Lx4U-book/docs/cross-toolchain/binutils.md

67 lines
1.7 KiB
Markdown
Raw Normal View History

<package-info :package="package" showsbu></package-info>
2021-04-25 21:11:03 +08:00
<script>
new Vue({
el: '#main',
data: { package: {} },
mounted: function () {
this.getPackage('binutils');
},
methods: {
getPackage: function(name) {
getPackage(name)
.then(response => this.package = response);
}
}
})
</script>
2021-05-05 18:58:00 +08:00
## Настройка
2021-04-25 21:11:03 +08:00
2021-04-27 15:06:07 +08:00
!> **Пакет binutils должен быть установлен раньше GCC и libc**
2021-04-25 21:11:03 +08:00
2021-05-05 18:58:00 +08:00
В документации пакета {{package.name}} рекомендуется использовать отдельную директорию для сборки:
2021-04-25 21:11:03 +08:00
```bash
2021-05-05 18:58:00 +08:00
mkdir build
cd build
2021-04-25 21:11:03 +08:00
```
2021-05-05 18:58:00 +08:00
?> 1 SBU равен времени сборки данного пакета
2021-04-25 21:11:03 +08:00
Сначала запустим скрипт `configure`:
```bash
../configure --prefix=$LIN/tools \
--with-sysroot=$LIN \
--target=$LIN_TGT \
--disable-nls \
--disable-werror
```
2021-05-07 20:20:16 +08:00
### Для multilib
Добавьте параметр``--enable-multilib``
2021-04-25 21:11:03 +08:00
### Объяснение
2021-05-05 18:58:00 +08:00
` --with-sysroot=$LIN ` `--target=$LIN_TGT` - необходимо для кросс-компиляции.
2021-04-25 21:11:03 +08:00
`--disable-nls` - Для кросс-компилятора не требуется локализация.
`--disable-werror` - Отключает остановку сборки при предупреждениях.
2021-05-05 18:58:00 +08:00
## Сборка
2021-04-25 21:11:03 +08:00
```bash
make
```
## Установка
```bash
make install -j1
```
2021-04-27 13:17:51 +08:00
`-j1` предотвращает возможную ошибку.
2021-04-27 13:19:40 +08:00
Дополнительную информацию о компиляции пакетов смотрите [здесь](../additional/src-compiling.md)