Lx4U-book/docs/build-system/ncurses.md

106 lines
3.6 KiB
Markdown
Raw Normal View History

2021-06-04 00:16:30 +08:00
<pkg :name="'ncurses'" instsize showsbu2></pkg>
2021-05-14 17:04:46 +08:00
## Настройка
2021-06-04 00:16:30 +08:00
<package-script :package="'ncurses'" :type="'configure'"></package-script>
2021-06-10 21:28:16 +08:00
### Значения параметров
2021-05-14 17:04:46 +08:00
2021-07-20 15:37:42 +08:00
`--without-normal` - отключает установку большинства статических библиотек.
2021-05-14 17:04:46 +08:00
2021-07-20 15:37:42 +08:00
`--enable-pc-files` - включает установку файлов для `pkg-config`.
2021-05-14 17:04:46 +08:00
2021-07-20 15:37:42 +08:00
`--enable-widec` - включает сборку библиотек с широкими (многобайтовыми) символами. Они совместимы с обычными библиотеками `ncurses` при сборке из исходного кода, но не совместимы бинарно.
2021-05-14 17:04:46 +08:00
## Сборка
2021-06-04 00:16:30 +08:00
<package-script :package="'ncurses'" :type="'build'"></package-script>
2021-05-14 17:04:46 +08:00
## Установка
2021-06-04 00:16:30 +08:00
<package-script :package="'ncurses'" :type="'install'"></package-script>
2021-05-14 17:04:46 +08:00
Многие пакеты при компоновке ищут библиотеки без широких символов. Для компоновки с библиотеками содержащими широкие символы выполните:
```bash
for lib in ncurses form panel menu ; do
rm -vf /usr/lib/lib${lib}.so
echo "INPUT(-l${lib}w)" > /usr/lib/lib${lib}.so
ln -sfv ${lib}w.pc /usr/lib/pkgconfig/${lib}.pc
done
```
Для сборки старых программ использующих `-lcurses` выполните:
```bash
rm -vf /usr/lib/libcursesw.so
echo "INPUT(-lncursesw)" > /usr/lib/libcursesw.so
ln -sfv libncurses.so /usr/lib/libcurses.so
```
2021-05-14 22:27:24 +08:00
Удалите ненужную статическую библиотеку:
2021-05-14 17:04:46 +08:00
```bash
rm -fv /usr/lib/libncurses++w.a
```
2021-05-14 22:27:24 +08:00
?> Если для запуска старых бинарных программ требуется библиотека `ncurses` без широких символов - соберите её:
2021-05-18 01:16:58 +08:00
```bash
make distclean
./configure --prefix=/usr \
--with-shared \
--without-normal \
--without-debug \
--without-cxx-binding \
--with-abi-version=5
2021-05-18 01:16:58 +08:00
make sources libs
cp -av lib/lib*.so.5* /usr/lib
```
2021-05-14 17:04:46 +08:00
## Для multilib
2021-05-14 17:04:46 +08:00
### Очистка
```bash
make distclean
```
### Настройка
2021-06-04 00:16:30 +08:00
<package-script :package="'ncurses'" :type="'multi_configure'"></package-script>
2021-05-14 17:04:46 +08:00
### Сборка
2021-06-04 00:16:30 +08:00
<package-script :package="'ncurses'" :type="'multi_build'"></package-script>
2021-05-14 17:04:46 +08:00
### Установка
2021-06-04 00:16:30 +08:00
<package-script :package="'ncurses'" :type="'multi_install'"></package-script>
2021-05-14 17:04:46 +08:00
?> Если для запуска старых бинарных программ требуется библиотека `ncurses` без широких символов - соберите её:
2021-05-18 01:16:58 +08:00
```bash
make distclean
CC="gcc -m32" CXX="g++ -m32" ./configure --prefix=/usr \
--with-shared \
--without-normal \
--without-debug \
--without-cxx-binding \
--with-abi-version=5 --host=i686-pc-linux-gnu
make sources libs
cp -av lib/lib*.so.5* /usr/lib
```
2021-05-14 17:04:46 +08:00
## Установленные файлы
2021-05-14 22:27:24 +08:00
Программы: captoinfo (ссылка на tic), clear, infocmp, infotocap (ссылка на tic), ncursesw6-config, reset (ссылка на tset), tabs, tic, toe, tput и tset
Библиотеки: libcursesw.so (ссылка на libncursesw.so), libformw.so, libmenuw.so, libncursesw.so, libpanelw.so и их версии без широких символов
2021-05-14 17:04:46 +08:00
2021-05-14 22:27:24 +08:00
Директории: /usr/share/tabset /usr/share/terminfo
2021-06-04 00:16:30 +08:00
<script>
new Vue({ el: '#main' })
</script>