diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 78da15a..813e624 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -39,6 +39,16 @@ appropriate for the entry or if needed the entire day's listitem. --> + + 2022-06-29 + + + [pierre] - Generate shared C++ bindings for ncurses, instead + of generating and then removing the static ones. + + + + 2022-06-14 diff --git a/chapter06/ncurses.xml b/chapter06/ncurses.xml index 277fd78..4f48d43 100644 --- a/chapter06/ncurses.xml +++ b/chapter06/ncurses.xml @@ -65,9 +65,10 @@ popd --mandir=/usr/share/man \ --with-manpage-format=normal \ --with-shared \ + --without-normal \ + --with-cxx-shared \ --without-debug \ --without-ada \ - --without-normal \ --disable-stripping \ --enable-widec @@ -77,11 +78,41 @@ popd --with-manpage-format=normal - Этот аргумент предотвращает установку Ncurses сжатых страниц руководства, что + Этот аргумент предотвращает установку Ncurses сжатых страниц руководства, это может произойти, если сам дистрибутив хоста содержит сжатые страницы руководства. + + --with-shared + + Этот аргумент позволяет Ncurses собирать и устанавливать разделяемые библиотеки C. + + + + + --without-normal + + Этот аргумент предотвращает сборку и установку статических библиотек C. + + + + + --without-debug + + Этот аргумент предотвращает сборку и установку отладочных + библиотек. + + + + + --with-cxx-shared + + Это аргумент позволяет Ncurses собирать и устанавливать общие привязки C++. А также + предотвращает сборку и установку статических привязок C++. + + + --without-ada @@ -111,14 +142,7 @@ popd традиционной 8-битной локали, в то время как обычные библиотеки корректно работают только в 8-битных локалях. Библиотеки расширенных символов и обычные совместимы на уровне исходного кода, но не совместимы в двоичном. - - - - --without-normal - - Этот аргумент отключает сборку и установку большинства статических библиотек - @@ -132,12 +156,12 @@ popd make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so - + Значение параметров установки: diff --git a/chapter08/ncurses.xml b/chapter08/ncurses.xml index b45e8ea..ad37ed6 100644 --- a/chapter08/ncurses.xml +++ b/chapter08/ncurses.xml @@ -47,6 +47,7 @@ --with-shared \ --without-debug \ --without-normal \ + --with-cxx-shared \ --enable-pc-files \ --enable-widec \ --with-pkg-config-libdir=/usr/lib/pkgconfig @@ -55,16 +56,33 @@ Значение новых параметров настройки: - --enable-widec + --with-shared - Этот параметр указывает, что при сборке пакета вместо обычных библиотек - (например, libncurses.so.&ncurses-version;) - будут использоваться библиотеки с расширенным набором символов (например, libncursesw.so.&ncurses-version;). Библиотеки с - расширенным набором символов могут использоваться как с многобайтовыми локалями, - так и с традиционными 8-битовыми локалями, тогда как обычные библиотеки работают - только с 8-битовыми локалями. Библиотеки с расширенным набором символов и обычные - библиотеки совместимы на уровне исходного кода, но не совместимыми на уровне двоичного. + Этот параметр позволяет Ncurses собирать и устанавливать общие библиотеки C. + + + + + --without-normal + + Этот параметр отключает сборку и установку большинства статических библиотек C. + + + + + + --without-debug + + Этот параметр предотвращает сборку и установку отладочных + библиотек. + + + + + --with-cxx-shared + + Это аргумент позволяет Ncurses собирать и устанавливать общие привязки C++. А также + предотвращает сборку и установку статических привязок C++. @@ -77,10 +95,16 @@ - --without-normal + --enable-widec - Этот параметр отключает сборку и установку большинства статических библиотек. - + Этот параметр указывает, что при сборке пакета вместо обычных библиотек + (например, libncurses.so.&ncurses-version;) + будут использоваться библиотеки с расширенным набором символов (например, libncursesw.so.&ncurses-version;). Библиотеки с + расширенным набором символов могут использоваться как с многобайтовыми локалями, + так и с традиционными 8-битовыми локалями, тогда как обычные библиотеки работают + только с 8-битовыми локалями. Библиотеки с расширенным набором символов и обычные + библиотеки совместимы на уровне исходного кода, но не совместимыми на уровне двоичного. @@ -111,7 +135,7 @@ make DESTDIR=$PWD/dest install install -vm755 dest/usr/lib/libncursesw.so.&ncurses-version; /usr/lib -rm -v dest/usr/lib/{libncursesw.so.&ncurses-version;,libncurses++w.a} +rm -v dest/usr/lib/libncursesw.so.&ncurses-version; cp -av dest/* / Многие приложения ожидают, что компоновщик сможет найти библиотеки Ncurses,