Скомпилировать texlive из исходников

Содержание
Введение
Установка из репозитория
Подготовка к установке из исходников
Установка из исходников
makefile с apt/yum
makefile src
configure --help
texmaker
Исправление ошибок
Похожие статьи

Введение

В этой статье вы узнаете как установить LaTeX в Linux

На данный момент рассмотрено три варианта

Установка из репозитория

Для Debian , Ubuntu и других .deb Linux

sudo apt -y install texlive-full sudo apt -y install texmaker

В Rocky , CentOS , RHEL и других .rpm

sudo yum -y install texlive-full sudo yum -y install texmaker

Подготовка к установке из исходников

Если вы собираетесь устанавливать из исходников - нужно предварительно убедиться, что установлены xz и gcc или другой компилятор языка Си а также g++ или другой компилятор C++

sudo apt install gcc g++ xz-utils libz-dev libxaw7-dev

Скачать исходники можно на https://tug.org/texlive/

Например, отсюда

Разархивировать скачанный .tar.xz можно с помощью

tar -xvf texlive-20210324-source.tar.xz

Затем для простоты переименуем директорию

mv texlive-20210324-source texlive

Содержимое можно изучить следующим образом:

cd texlive
ls

aclocal.m4 build-aux doc Makefile.in README.2building README.6coding texk am ChangeLog libs README README.3installing README.7continuous utils auxdir configure m4 README.0overview README.4layout reautoconf version.ac Build configure.ac Makefile.am README.1prerequisites README.5configure tardate.ac

Установка из исходников

Создайте новую директорию, скопируйте туда texlive и запустите configure

mkdir ~/tex
mv texlive ~/tex
ls ~/tex
cd ~/tex
texlive/configure

В результате будет создана куча файлов. В данный момент нас интересует Makefile

ls

Выполните make

make

Запустится сборка texlive она может занять довольно много времени - это зависит в том числе от мощности вашей машины.

Бинарники можно будет найти в

texk/web2c

cd texlive-20210324-source/texk/web2c
ls

ac ctiedir gftodvi.test mf-binpool.ch patgen.test PROJECTS texmfmp-help.h vptovf.web aclocal.m4 cwebboot.cin gftodvi.web mf.ch patgen.web ptexdir tex.web w2c alephdir cwebdir gftopk.ch mfextra.c pdftexdir README tftopl.ch weave.ch am doc gftopk.test mfluadir pktogf.ch silent-sh.in tftopl.test weave.test AUTHORS dvicopy.ch gftopk.web mfluajitdir pktogf.test synctexdir tftopl.web weave.web bibtex.ch dvicopy.test gftype.ch mft.ch pktogf.web tangleboot.pin tiedir web2c bibtex.test dvicopy.web gftype.test mftraptest.test pktype.ch tangle.ch tracingstacklevels.ch web2c-sh.in bibtex.web dvitype.ch gftype.web mft.test pktype.test tangle-sh.in triptest.test window c-auto.in dvitype.test help.h mft.web pktype.web tangle.test triptrap xetexdir cftests dvitype.web lib mf.web pltotf.ch tangle.web triptrap-sh zlib-fmt.ch ChangeLog enctexdir libmd5 mplibdir pltotf.test tests uptexdir configure eptexdir luatexdir NEWS pltotf.web tex-binpool.ch vftovp.ch configure.ac etexdir m4 omegafonts pmpostdir tex.ch vftovp.test cpascal.h euptexdir Makefile.am omegaware pooltype.ch texextra.c vftovp.web ctangleboot.cin gftodmem.h Makefile.in otps pooltype.test texmfmem.h vptovf.ch ctangleboot-sh.in gftodvi.ch man patgen.ch pooltype.web texmfmp.h vptovf.test

Как вы можете видеть здесь есть и pdftex которым мы пользовались в статье CSV в PDF через tex

pdftex --version

pdfTeX 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) kpathsea version 6.3.1 Copyright 2019 Han The Thanh (pdfTeX) et al. There is NO warranty. Redistribution of this software is covered by the terms of both the pdfTeX copyright and the Lesser GNU General Public License. For more information about these matters, see the file named COPYING and the pdfTeX source. Primary author of pdfTeX: Han The Thanh (pdfTeX) et al. Compiled with libpng 1.6.37; using libpng 1.6.37 Compiled with zlib 1.2.11; using zlib 1.2.11 Compiled with xpdf version 4.01

Makefile

Пример Makefile для установки tex в Ubuntu

TEX_SRC=texlive-20210324-source TEX_TAR=$(TEX_SRC).tar.xz TEX_REPO=http://mirrors.ctan.org/systems/texlive/Source/$(TEX_TAR) .PHONY: download-tex download-tex: sudo apt update sudo apt upgrade sudo apt install gcc g++ xz-utils libz-dev libxaw7-dev @if [ ! -d tex-dev ]; then \ mkdir tex-dev; \ fi @if [ ! -f tex-dev/$(TEX_TAR) ]; then \ wget -c $(TEX_REPO); \ mv ./$(TEX_TAR) tex-dev; \ else \ echo "INFO: $(TEX_TAR) already exists"; \ fi tar -xvf tex-dev/$(TEX_TAR) -C tex-dev/ # для установки без x и некоторых зависимостей можно использовать # configure --without-x --disable-xetex --disable-xindy cd tex-dev && $(TEX_SRC)/configure cd tex-dev && make

Установка из исходников без apt/yum

В некоторых случаях доступ к пакетным менеджерам ограничен. Например на виртуальных хостингах.

В такой ситуации можно пользоваться только командами configure make install и все зависимости нужно устанавливать самостоятельно. Я создаю GNUmakefile чтобы автоматизировать этот процесс.

Этот файл пока-что не справляется с установкой зависимости libXaw

Я пытаюсь обойти ошибку

Makefile для сборки tex на виртуальном хостинге

В чём особенность установки на виртуальный хостинг :

Нет доступа к пакетным менеджерам apt или yum. То есть вам просто запрещено выполнять эти две команды.

Нельзя собирать зависимости в /usr/local. То есть Makefile должен быть сконфигурирован так, чтобы установка шла в разрешённую директорию.

На моём любимом хостинге Beget.com это директория $HOME/.local поэтому прим выполнении configure я делаю это с префиксом --prefix=$$HOME/.local

Если появляется ошибка

configure: error: expected an absolute directory name for --prefix: 15175HOME/.local

Значит нужно задать абсолютный путь до .local

./configure --prefix=/home/u/username/.local

Перед тем как что-то устанавливать я перехожу в Docker контейнер командой

ssh localhost -p222

Пример Makefile для установки tex в Ubuntu для установки на хостинге

TEX_SRC=texlive-20210324-source TEX_TAR=$(TEX_SRC).tar.xz TEX_REPO=http://mirrors.ctan.org/systems/texlive/Source/$(TEX_TAR) M4_SRC=m4-1.4.19 M4_TAR=$(M4_SRC).tar.gz M4_REPO=http://ftp.gnu.org/gnu/m4/$(M4_TAR) AUTOCONF_SRC=autoconf-2.71 AUTOCONF_TAR=$(AUTOCONF_SRC).tar.gz AUTOCONF_REPO=http://ftp.gnu.org/gnu/autoconf/$(AUTOCONF_TAR) AUTOMAKE_SRC=automake-1.16 AUTOMAKE_TAR=$(AUTOMAKE_SRC).tar.gz AUTOMAKE_REPO=https://ftp.gnu.org/gnu/automake/$(AUTOMAKE_TAR) MACROS_SRC=macros-util-macros-1.19.3 MACROS_TAR=$(MACROS_SRC).tar.gz MACROS_REPO=https://gitlab.freedesktop.org/xorg/util/macros/-/archive/util-macros-1.19.3/$(MACROS_TAR) LIBTOOL_SRC=libtool-2.4 LIBTOOL_TAR=$(LIBTOOL_SRC).tar.gz LIBTOOL_REPO=https://www.nic.funet.fi/pub/gnu/ftp.gnu.org/pub/gnu/libtool/$(LIBTOOL_TAR) XAW_SRC=libxaw-libXaw-1.0.14 XAW_TAR=$(XAW_SRC).tar.gz XAW_REPO=https://gitlab.freedesktop.org/xorg/lib/libxaw/-/archive/libXaw-1.0.14/$(XAW_TAR) XORG-SGML-DOCTOOLS_SRC=xorg-sgml-doctools-xorg-sgml-doctools-1.11 XORG-SGML-DOCTOOLS_TAR=$(XORG-SGML-DOCTOOLS_SRC).tar.gz XORG-SGML-DOCTOOLS_REPO=https://gitlab.freedesktop.org/xorg/doc/xorg-sgml-doctools/-/archive/xorg-sgml-doctools-1.11/$(XORG-SGML-DOCTOOLS_TAR) GETTEXT_SRC=gettext-0.21 GETTEXT_TAR=$(GETTEXT_SRC).tar.gz GETTEXT_REPO=https://ftp.gnu.org/pub/gnu/gettext/$(GETTEXT_TAR) XMLTO_SRC=xmlto-0.0.27 XMLTO_TAR=$(XMLTO_SRC).tar.gz XMLTO_REPO=https://releases.pagure.org/xmlto/$(XMLTO_TAR) PKGCONFIG_SRC=pkg-config-pkg-config-0.29.2 PKGCONFIG_TAR=$(PKGCONFIG_SRC).tar.gz PKGCONFIG_REPO=https://gitlab.freedesktop.org/pkg-config/pkg-config/-/archive/pkg-config-0.29.2/$(PKGCONFIG_TAR) XPROTO_SRC=xproto-7.0.31 XPROTO_TAR=$(XPROTO_SRC).tar.gz XPROTO_REPO=https://www.x.org/archive/individual/proto/$(XPROTO_TAR) LIBXSLT_SRC=libxslt-v1.1.34 LIBXSLT_TAR=$(LIBXSLT_SRC).tar.gz LIBXSLT_REPO=https://gitlab.gnome.org/GNOME/libxslt/-/archive/v1.1.34/$(LIBXSLT_TAR) .PHONY: m4 m4: @if [ ! -d m4 ]; then \ mkdir m4; \ fi @if [ ! -f m4/$(M4_TAR) ]; then \ wget -c $(M4_REPO); \ mv ./$(M4_TAR) m4; \ else \ echo "INFO: $(M4_TAR) already exists"; \ fi tar -xvf m4/$(M4_TAR) -C m4/ cd m4 && $(M4_SRC)/configure --prefix=$$HOME/.local cd m4 && make cd m4 && sudo make install .PHONY: automake automake: @if [ ! -d automake ]; then \ mkdir automake; \ fi @if [ ! -f automake/$(AUTOMAKE_TAR) ]; then \ wget -c $(AUTOMAKE_REPO); \ mv ./$(AUTOMAKE_TAR) automake; \ else \ echo "INFO: $(AUTOMAKE_TAR) already exists"; \ fi tar -xvf automake/$(AUTOMAKE_TAR) -C automake/ cd automake && $(AUTOMAKE_SRC)/configure --prefix=$$HOME/.local cd automake && make cd automake && sudo make install # requirements: # m4 .PHONY: autoconf autoconf: @if [ ! -d autoconf ]; then \ mkdir autoconf; \ fi @if [ ! -f autoconf/$(AUTOCONF_TAR) ]; then \ wget -c $(AUTOCONF_REPO); \ mv ./$(AUTOCONF_TAR) autoconf; \ else \ echo "INFO: $(AUTOCONF_TAR) already exists"; \ fi tar -xvf autoconf/$(AUTOCONF_TAR) -C autoconf/ cd autoconf && $(AUTOCONF_SRC)/autogen.sh cd autoconf && make cd autoconf && sudo make install .PHONY: libtool libtool: @if [ ! -d libtool ]; then \ mkdir libtool; \ fi @if [ ! -f libtool/$(LIBTOOL_TAR) ]; then \ wget -c $(LIBTOOL_REPO); \ mv ./$(LIBTOOL_TAR) libtool; \ else \ echo "INFO: $(LIBTOOL_TAR) already exists"; \ fi tar -xvf libtool/$(LIBTOOL_TAR) -C libtool/ cd libtool && $(LIBTOOL_SRC)/configure --prefix=$$HOME/.local cd libtool && make cd libtool && sudo make install .PHONY: download-tex download-tex: @if [ ! -d tex-dev ]; then \ mkdir tex-dev; \ fi @if [ ! -f tex-dev/$(TEX_TAR) ]; then \ wget -c $(TEX_REPO); \ mv ./$(TEX_TAR) tex-dev; \ else \ echo "INFO: $(TEX_TAR) already exists"; \ fi tar -xvf tex-dev/$(TEX_TAR) -C tex-dev/ cd tex-dev && $(TEX_SRC)/configure --prefix=$$HOME/.local cd tex-dev && make cd tex-dev && make install # requirements: # autoconf # xorg-macros >= 1.12 .PHONY: libxaw libxaw: @if [ ! -d lib-xaw ]; then \ mkdir lib-xaw; \ fi @if [ ! -f lib-xaw/$(XAW_TAR) ]; then \ wget -c $(XAW_REPO); \ mv ./$(XAW_TAR) lib-xaw; \ else \ echo "INFO: $(XAW_TAR) already exista"; \ fi tar -xvf lib-xaw/$(XAW_TAR) -C lib-xaw/ cd lib-xaw && $(XAW_SRC)/autogen.sh cd lib-xaw && $(XAW_SRC)/configure --prefix=$$HOME/.local cd lib-xaw && make # requirements: # automake, autoconf, libtool .PHONY: macros-util macros-util: @if [ ! -d macros-util ]; then \ mkdir macros-util; \ fi @if [ ! -f macros-util/$(MACROS_TAR) ]; then \ wget -c $(MACROS_REPO); \ mv ./$(MACROS_TAR) macros-util; \ else \ echo "INFO: $(MACROS_TAR) already exists"; \ fi tar -xvf macros-util/$(MACROS_TAR) -C macros-util/ cd macros-util && $(MACROS_SRC)/autogen.sh cd macros-util && $(MACROS_SRC)/configure --prefix=$$HOME/.local cd macros-util && make cd macros-util && sudo make install .PHONY: xorg-sgml-doctools xorg-sgml-doctools: @if [ ! -d xorg-sgml-doctools ]; then \ mkdir xorg-sgml-doctools; \ fi @if [ ! -f xorg-sgml-doctools/$(XORG-SGML-DOCTOOLS_TAR) ]; then \ wget -c $(XORG-SGML-DOCTOOLS_REPO); \ mv ./$(XORG-SGML-DOCTOOLS_TAR) xorg-sgml-doctools; \ else \ echo "INFO: $(XORG-SGML-DOCTOOLS_TAR) already exists"; \ fi tar -xvf xorg-sgml-doctools/$(XORG-SGML-DOCTOOLS_TAR) -C xorg-sgml-doctools/ cd xorg-sgml-doctools && $(XORG-SGML-DOCTOOLS_SRC)/autogen.sh cd xorg-sgml-doctools && $(XORG-SGML-DOCTOOLS_SRC)/configure --prefix=$$HOME/.local cd xorg-sgml-doctools && make cd xorg-sgml-doctools && make install .PHONY: gettext gettext: @if [ ! -d gettext ]; then \ mkdir gettext; \ fi @if [ ! -f gettext/$(GETTEXT_TAR) ]; then \ wget -c $(GETTEXT_REPO); \ mv ./$(GETTEXT_TAR) gettext; \ else \ echo "INFO: $(GETTEXT_TAR) already exists"; \ fi tar -xvf gettext/$(GETTEXT_TAR) -C gettext/ cd gettext && $(GETTEXT_SRC)/autogen.sh cd gettext && $(GETTEXT_SRC)/configure --prefix=$$HOME/.local cd gettext && make cd gettext && make install .PHONY: xmlto xmlto: @if [ ! -d xmlto ]; then \ mkdir xmlto; \ fi @if [ ! -f xmlto/$(XMLTO_TAR) ]; then \ wget -c $(XMLTO_REPO); \ mv ./$(XMLTO_TAR) xmlto; \ else \ echo "INFO: $(XMLTO_TAR) already exists"; \ fi tar -xvf xmlto/$(XMLTO_TAR) -C xmlto/ cd xmlto && $(XMLTO_SRC)/configure --prefix=$$HOME/.local cd xmlto && make cd xmlto && make install .PHONY: pkgconfig pkgconfig: @if [ ! -d pkgconfig ]; then \ mkdir pkgconfig; \ fi @if [ ! -f pkgconfig/$(PKGCONFIG_TAR) ]; then \ wget -c $(PKGCONFIG_REPO); \ mv ./$(PKGCONFIG_TAR) pkgconfig; \ else \ echo "INFO: $(PKGCONFIG_TAR) already exists"; \ fi tar -xvf pkgconfig/$(PKGCONFIG_TAR) -C pkgconfig/ cd pkgconfig && $(PKGCONFIG_SRC)/autogen.sh cd pkgconfig && $(PKGCONFIG_SRC)/configure --prefix=$$HOME/.local cd pkgconfig && make cd pkgconfig && make install .PHONY: xproto xproto: @if [ ! -d xproto ]; then \ mkdir xproto; \ fi @if [ ! -f xproto/$(XPROTO_TAR) ]; then \ wget -c $(XPROTO_REPO); \ mv ./$(XPROTO_TAR) xproto; \ else \ echo "INFO: $(XPROTO_TAR) already exists"; \ fi tar -xvf xproto/$(XPROTO_TAR) -C xproto/ cd xproto && $(XPROTO_SRC)/configure --prefix=$$HOME/.local cd xproto && make cd xproto && make install .PHONY: libxslt libxslt: @if [ ! -d libxslt ]; then \ mkdir libxslt; \ fi @if [ ! -f libxslt/$(LIBXSLT_TAR) ]; then \ wget -c $(LIBXSLT_REPO); \ mv ./$(LIBXSLT_TAR) libxslt; \ else \ echo "INFO: $(LIBXSLT_TAR) already exists"; \ fi tar -xvf libxslt/$(LIBXSLT_TAR) -C libxslt/ cd libxslt && $(LIBXSLT_SRC)/autogen.sh cd libxslt && $(LIBXSLT_SRC)/configure --prefix=$$HOME/.local cd libxslt && make cd libxslt && make install .PHONY: xdvik xdvik: @if [ ! -d xdvik ]; then \ mkdir xdvik; \ fi @if [ ! -f xdvik/$(XDVIK_TAR) ]; then \ wget -c $(XDVIK_REPO); \ mv ./$(XDVIK_TAR) xdvik; \ else \ echo "INFO: $(XDVIK_TAR) already exists"; \ fi tar -xvf xdvik/$(XDVIK_TAR) -C xdvik/ cd xdvik && $(XDVIK_SRC)/configure --prefix=$$HOME/.local cd xdvik && make cd xdvik && make install



Зависимости tex-live:

configure --help

texlive-20210324-source/configure --help

`configure' configures TeX Live 2021-03-23 to adapt to many kinds of systems. Usage: texlive-20210324-source/configure [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print `checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for `--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or `..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, `make install' will install all the files in `/usr/local/bin', `/usr/local/lib' etc. You can specify an installation prefix other than `/usr/local' using `--prefix', for instance `--prefix=$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/tex-live] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names X features: --x-includes=DIR X include files are in DIR --x-libraries=DIR X library files are in DIR System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-missing terminate if a requested program or feature must be disabled, e.g., due to missing libraries --disable-all-pkgs do not build packages unless explicitly enabled --disable-native-texlive-build do not build for the TeX Live binary distribution --enable-multiplatform put executables into bin/PLATFORM and libraries into lib/PLATFORM --enable-cxx-runtime-hack link C++ runtime statically --enable-libtool-hack ignore libtool dependency_libs --disable-autosp do not build the autosp package --disable-axodraw2 do not build the axodraw2 package --disable-devnag do not build the devnag package --disable-lacheck do not build the lacheck package --disable-m-tx do not build the m-tx package --disable-pmx do not build the pmx package --disable-ps2eps do not build the ps2eps package --disable-t1utils do not build the t1utils package --disable-texdoctk do not build the texdoctk package --disable-tpic2pdftex do not build the tpic2pdftex package --disable-vlna do not build the vlna package --enable-xindy build the xindy package --enable-xindy-rules build and install make-rules package --enable-xindy-docs build and install documentation --disable-xml2pmx do not build the xml2pmx package --disable-xpdfopen do not build the xpdfopen package --disable-web2c do not build the web2c (TeX & Co.) package --enable-auto-core cause TeX&MF to dump core, given a certain filename --disable-dump-share make fmt/base files architecture-dependent --disable-ipc disable TeX's --ipc option, i.e., pipe to a program --disable-tex do not compile and install TeX --enable-tex-synctex build TeX with SyncTeX support --enable-etex compile and install e-TeX --disable-etex-synctex build e-TeX without SyncTeX support --disable-ptex do not compile and install pTeX --disable-ptex-synctex build pTeX without SyncTeX support --disable-eptex do not compile and install e-pTeX --disable-eptex-synctex build e-pTeX without SyncTeX support --disable-uptex do not compile and install upTeX --disable-uptex-synctex build upTeX without SyncTeX support --disable-euptex do not compile and install e-upTeX --disable-euptex-synctex build e-upTeX without SyncTeX support --disable-aleph do not compile and install Aleph --disable-pdftex do not compile and install pdfTeX --disable-pdftex-synctex build pdfTeX without SyncTeX support --disable-luatex do not compile and install LuaTeX --disable-luajittex do not compile and install LuaJITTeX --disable-luahbtex do not compile and install LuaHBTeX --disable-luajithbtex do not compile and install LuaHBJITTeX --disable-mp do not compile and install MetaPost --disable-pmp do not compile and install pMetaPost --disable-upmp do not compile and install upMetaPost --disable-xetex do not compile and install XeTeX --disable-xetex-synctex build XeTeX without SyncTeX support --disable-mf do not compile and install METAFONT --disable-mf-nowin do not build a separate non-window-capable METAFONT --disable-mflua do not compile and install MFLua --enable-mflua-nowin build a separate non-window-capable MFLua --disable-mfluajit do not compile and install MFLuaJIT --enable-mfluajit-nowin build a separate non-window-capable MFLuaJIT --enable-epsfwin include EPSF pseudo window support --enable-hp2627win include HP 2627 window support --enable-mftalkwin include mftalk (generic server) window support --enable-nextwin include NeXT window support --enable-regiswin include Regis window support --enable-suntoolswin include old Suntools (not X) window support --enable-tektronixwin include Tektronix window support --enable-unitermwin include Uniterm window support --disable-web-progs do not build WEB programs bibtex ... weave --disable-synctex do not build the SyncTeX library and tool --disable-afm2pl do not build the afm2pl package --disable-bibtex-x do not build the bibtex-x package --disable-bibtex8 do not build the bibtex8 program --disable-bibtexu do not build the bibtexu program --disable-chktex do not build the chktex package --disable-cjkutils do not build the cjkutils package --disable-detex do not build the detex package --disable-dtl do not build the dtl package --disable-dvi2tty do not build the dvi2tty package --disable-dvidvi do not build the dvidvi package --disable-dviljk do not build the dviljk package --disable-dviout-util do not build the dviout-util package --disable-dvipdfm-x do not build the dvipdfm-x package --disable-dvipng do not build the dvipng package --disable-debug Compile without debug (-d) option --enable-timing Output execution time of dvipng --disable-dvipos do not build the dvipos package --disable-dvipsk do not build the dvipsk package --disable-dvisvgm do not build the dvisvgm package --disable-gregorio do not build the gregorio package --disable-gsftopk do not build the gsftopk package --disable-lcdf-typetools do not build the lcdf-typetools package --disable-cfftot1 do not build the cfftot1 program --disable-mmafm do not build the mmafm program --disable-mmpfb do not build the mmpfb program --disable-otfinfo do not build the otfinfo program --disable-otftotfm do not build the otftotfm program --disable-t1dotlessj do not build the t1dotlessj program --disable-t1lint do not build the t1lint program --disable-t1rawafm do not build the t1rawafm program --disable-t1reencode do not build the t1reencode program --disable-t1testpage do not build the t1testpage program --disable-ttftotype42 do not build the ttftotype42 program --disable-auto-cfftot1 disable running cfftot1 from otftotfm --disable-auto-t1dotlessj disable running t1dotlessj from otftotfm --disable-auto-ttftotype42 disable running ttftotype42 from otftotfm --disable-auto-updmap disable running updmap from otftotfm --disable-makeindexk do not build the makeindexk package --disable-makejvf do not build the makejvf package --disable-mendexk do not build the mendexk package --disable-musixtnt do not build the musixtnt package --disable-ps2pk do not build the ps2pk package --disable-psutils do not build the psutils package --disable-seetexk do not build the seetexk package --disable-tex4htk do not build the tex4htk package --disable-ttf2pk2 do not build the ttf2pk2 package --disable-ttfdump do not build the ttfdump package --disable-upmendex do not build the upmendex package --disable-xdvik do not build the xdvik package --disable-texlive do not build the texlive (TeX Live scripts) package --disable-linked-scripts do not install the linked scripts --disable-mktexmf-default do not run mktexmf if MF source missing --disable-mktexpk-default do not run mktexpk if PK font missing --disable-mktextfm-default do not run mktextfm if TFM file missing --disable-mkocp-default do not run mkocp if OCP file missing --disable-mkofm-default do not run mkofm if OFM file missing --disable-mktexfmt-default do not run mktexfmt if format file missing --enable-mktextex-default run mktextex if TeX source missing --enable-dependency-tracking do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer --enable-compiler-warnings=[no|min|yes|max|all] Turn on compiler warnings [default: yes if maintainer-mode, min otherwise] --enable-shared[=PKGS] build shared libraries [default=yes] --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --disable-largefile omit support for large files Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-clisp-runtime=PATH pathname of clisp runtime to install for `xindy', `default' to derive from clisp, or `system' to use installed version --with-banner-add=STR add STR to version string appended to banner lines --with-editor=CMD invoke CMD from the `e' option [vi +%d '%s'] or [texworks --position=%d "%s"] --with-mf-x-toolkit use X toolkit for METAFONT --with-gs=/PATH/TO/gs Hard-wire the location of GhostScript --with-xdvi-x-toolkit=KIT Use toolkit KIT (xaw/motif/xaw3d/neXtaw) for xdvi [default: Xaw] --with-system-harfbuzz use installed harfbuzz headers and library (requires pkg-config) --with-system-icu use installed ICU headers and libraries (requires pkg-config or icu-config) --with-system-teckit use installed teckit headers and library (requires pkg-config) --with-system-graphite2 use installed graphite2 headers and library (requires pkg-config) --with-system-zziplib use installed zziplib headers and library (requires pkg-config) --with-system-mpfr use installed mpfr headers and library --with-mpfr-includes=DIR mpfr headers installed in DIR --with-mpfr-libdir=DIR mpfr library installed in DIR --with-system-gmp use installed gmp headers and library --with-gmp-includes=DIR gmp headers installed in DIR --with-gmp-libdir=DIR gmp library installed in DIR --with-system-cairo use installed cairo headers and library (requires pkg-config) --with-system-pixman use installed pixman headers and library (requires pkg-config) --with-system-gd use installed gd headers and library --with-gd-includes=DIR gd headers installed in DIR --with-gd-libdir=DIR gd library installed in DIR --with-system-freetype2 use installed freetype2 headers and library (requires freetype-config) --with-system-libpng use installed libpng headers and library (requires pkg-config) --with-system-libpaper use installed libpaper headers and library --with-libpaper-includes=DIR libpaper headers installed in DIR --with-libpaper-libdir=DIR libpaper library installed in DIR --with-system-zlib use installed zlib headers and library --with-zlib-includes=DIR zlib headers installed in DIR --with-zlib-libdir=DIR zlib library installed in DIR --with-system-ptexenc use installed ptexenc headers and library (requires pkg-config) --with-system-kpathsea use installed kpathsea headers and library (requires pkg-config) --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] --with-aix-soname=aix|svr4|both shared library versioning (aka "SONAME") variant to provide on AIX, [default=aix]. --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-sysroot[=DIR] Search for dependent libraries within DIR (or the compiler's sysroot if not specified). --with-x use the X Window System --without-ln-s do build even if `ln -s' does not work Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a nonstandard directory <lib dir> LIBS libraries to pass to the linker, e.g. -l<library> CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if you have headers in a nonstandard directory <include dir> LT_SYS_LIBRARY_PATH User-defined run-time library search path. CPP C preprocessor XMKMF Path to xmkmf, Makefile generator for X Window System CXX C++ compiler command CXXFLAGS C++ compiler flags CXXCPP C++ preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to <tex-k@tug.org>.

Установка texmaker

sudo apt-get install texlive-full

sudo apt-get install texmaker

~/.local/bin/m4 --version

m4 (GNU M4) 1.4.19 Copyright (C) 2021 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by René Seindal.

Ошибки

configure.ac:18: warning: The macro `AC_PROG_CC_C99' is obsolete. configure.ac:18: You should run autoupdate. autoconf-2.71/lib/autoconf/c.m4:1659: AC_PROG_CC_C99 is expanded from... /home/u/user/.local/share/aclocal/xorg-macros.m4:1533: XORG_COMPILER_BRAND is expanded from... /home/u/user/.local/share/aclocal/xorg-macros.m4:1652: XORG_COMPILER_FLAGS is expanded from... /home/u/user/.local/share/aclocal/xorg-macros.m4:1824: XORG_DEFAULT_OPTIONS is expanded from... configure.ac:18: the top level

Макрос AC_PROG_CC_C99 устарел

find . -type f -exec grep -l "AC_PROG_CC_C99" {} \; find ~/.local/share/aclocal -type f -exec grep -l "AC_PROG_CC_C99" {} \; find . -type f -exec sed -i "s/AC_PROG_CC_C99/AC_PROG_CC/" {} \; find ~/.local/share/aclocal -type f -exec sed -i "s/AC_PROG_CC_C99/AC_PROG_CC/" {} \;

2

autoreconf: configure.ac: tracing autoreconf: running: libtoolize --copy libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree. libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.

При установке libXaw

checking if gcc supports -Werror=attributes... yes libxaw-libXaw-1.0.14/configure: line 18282: --print-errors: command not found checking whether make supports nested variables... (cached) yes checking whether to build functional specifications... yes checking for xmlto... no configure: WARNING: xmlto not found - documentation targets will be skipped checking for fop... no configure: WARNING: fop not found - documentation targets will be skipped checking for xsltproc... no configure: WARNING: xsltproc not found - cannot transform XML documents checking for X.Org SGML entities >= 1.8... libxaw-libXaw-1.0.14/configure: line 18960: syntax error near unexpected token `xorg-sgml-doctools' libxaw-libXaw-1.0.14/configure: line 18960: `PKG_CHECK_EXISTS(xorg-sgml-doctools m4_ifval([1.8],[>= 1.8]),' GNUmakefile:90: recipe for target 'libxaw' failed make: *** [libxaw] Error 2

При установке libXaw

cd lib-xaw && libxaw-libXaw-1.0.14/autogen.sh autoreconf: export WARNINGS= autoreconf: Entering directory autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal /home/u/user/.local/bin/m4:/home/u/user/.local/share/autoconf/autoconf/autoconf.m4f:1201: expecting line feed in frozen file autom4te: error: /home/u/user/.local/bin/m4 failed with exit status: 1 aclocal: error: echo failed with exit status: 1 autoreconf: error: aclocal failed with exit status: 1 GNUmakefile:90: recipe for target 'libxaw' failed make: *** [libxaw] Error 1

Уходит при установке gettex и заменяется следующей

При установке libXaw

aclocal.m4:10273: XORG_DEFAULT_OPTIONS is expanded from... configure.ac:19: the top level configure:18960: error: possibly undefined macro: m4_ifval If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure:18964: error: possibly undefined macro: AC_CHECK_FILE autoreconf: error: /home/u/user/.local/bin/autoconf failed with exit status: 1 GNUmakefile:93: recipe for target 'libxaw' failed make: *** [libxaw] Error 1

Уходит при установке xorg-sgml-doctools, automake, autoconf, macros-util и заменяется следующей

При установке libXaw

checking if gcc supports -Werror=attributes... yes libxaw-libXaw-1.0.14/configure: line 18282: --print-errors: command not found checking whether make supports nested variables... (cached) yes checking whether to build functional specifications... yes checking for xmlto... no configure: WARNING: xmlto not found - documentation targets will be skipped checking for fop... no configure: WARNING: fop not found - documentation targets will be skipped checking for xsltproc... no configure: WARNING: xsltproc not found - cannot transform XML documents checking for X.Org SGML entities >= 1.8... libxaw-libXaw-1.0.14/configure: line 18960: syntax error near unexpected token `xorg-sgml-doctools' libxaw-libXaw-1.0.14/configure: line 18960: `PKG_CHECK_EXISTS(xorg-sgml-doctools m4_ifval([1.8],[>= 1.8]),' GNUmakefile:93: recipe for target 'libxaw' failed make: *** [libxaw] Error 2

Уходит при установке pkgconfig и заменяется следующей

При установке libXaw

checking for xproto x11 xext xextproto xt xmu... no configure: error: Package requirements (xproto x11 xext xextproto xt xmu) were not met: No package 'xproto' found No package 'x11' found No package 'xext' found No package 'xextproto' found No package 'xt' found No package 'xmu' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables XAW6_CFLAGS and XAW6_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. GNUmakefile:102: recipe for target 'libxaw' failed make: *** [libxaw] Error 1

При установке xproto

cd xproto && make make[1]: Entering directory '/home/u/user/tex/xproto' make all-recursive make[2]: Entering directory '/home/u/user/tex/xproto' Making all in specs make[3]: Entering directory '/home/u/user/tex/xproto/specs' Making all in SIAddresses make[4]: Entering directory '/home/u/user/tex/xproto/specs/SIAddresses' make[4]: Nothing to be done for 'all'. make[4]: Leaving directory '/home/u/user/tex/xproto/specs/SIAddresses' make[4]: Entering directory '/home/u/user/tex/xproto/specs' GEN x11protocol.html xmlto: xmllint validation tool not found or not executable. xmlto: Skipping validation... Please make sure xmllint is installed. xmlto: Can't continue, xsltproc tool not found or not executable. Makefile:790: recipe for target 'x11protocol.html' failed make[4]: *** [x11protocol.html] Error 3 make[4]: Leaving directory '/home/u/user/tex/xproto/specs' Makefile:519: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/home/u/user/tex/xproto/specs' Makefile:535: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/u/user/tex/xproto' Makefile:401: recipe for target 'all' failed make[1]: *** [all] Error 2 make[1]: Leaving directory '/home/u/user/tex/xproto' GNUmakefile:250: recipe for target 'xproto' failed make: *** [xproto] Error 2

После установки libxslt меняется на следующую ошибку

При установке xproto

make[4]: Entering directory '/home/u/user/tex/xproto/specs' GEN x11protocol.html xmlto: xmllint validation tool not found or not executable. xmlto: Skipping validation... Please make sure xmllint is installed. I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl" compilation error: file /home/u/user/.local/share/sgml/X11/xorg-xhtml.xsl line 13 element import xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl Makefile:790: recipe for target 'x11protocol.html' failed make[4]: *** [x11protocol.html] Error 5 make[4]: Leaving directory '/home/u/user/tex/xproto/specs' Makefile:519: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/home/u/user/tex/xproto/specs' Makefile:535: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/u/user/tex/xproto' Makefile:401: recipe for target 'all' failed make[1]: *** [all] Error 2 make[1]: Leaving directory '/home/u/user/tex/xproto' GNUmakefile:255: recipe for target 'xproto' failed make: *** [xproto] Error 2

Поддержка кириллицы

sudo apt install texlive-lang-cyrillic

Похожие статьи
LaTeX
Самоучитель
Все символы LaTeX
Титульный лист
LaTeX в HTML
jpg и png в eps
csv в pdf
Установка tex в Linux
Видеоуроки
MikTeX
Ошибки

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: