如果我texlive-full
在 Ubuntu 12.04 上安装,apt-get
我会得到稳定且经过检查的版本吗?或者是否存在安全风险?我应该避免安装它吗?
答案1
我想根据我的亲身经历来回答这个问题。
- 多年来,我一直使用 Ubuntu 自带的 LaTeX 默认安装,即使成为了一名狂热的 LaTeX 用户,我也没有遇到任何明显的问题。
- 我在家用机器上运行 Ubuntu 12.04,在办公室机器上运行 Ubuntu 13.04,两者都使用默认 Ubuntu 安装安装了 LaTeX,如下所述。
- 安装 LaTeX 时,您需要使用命令
sudo apt-get install texlive
。您可能想使用sudo apt-get install texlive-full
,但这会安装很多额外的(语言)包,而其中大多数对于您的目的来说都是不必要的。 - 完成上述安装后,您需要安装所需的语言和字体包。命令格式为
sudo apt-get install texlive-lang-dutch
(在此处输入您的语言名称。如果不确定,请发出命令sudo apt-get install texlive-full
查看选择了哪些包,选择所需的名称,对安装回答“否”,然后安装该特定包)。 - 您可能还想安装总线(
sudo apt-get install ibus
), 奥科特克斯(sudo apt-get install auctex
), 和Emacs(sudo apt-get install emacs
),如果您觉得有必要和/或有灵感使用其中任何一个。 - 安装雷达反射截面(
sudo apt-get install rcs rcs-latex
),将帮助您维护 LaTeX 文档的版本。 - 如果您将来需要某个包,请使用该命令
apt-cache search <package/style name>
查找该包,然后使用该sudo apt-get install
命令安装该包。请参阅此邮政了解详细信息和其他选项。 - 在极少数情况下,您将无法使用上一步中概述的上述方法找到某些包。在这种情况下,请访问加拿大运输安全局,使用搜索功能找到包,下载文件
.zip
,解压(unzip <zip file name>
),阅读 README 或 INSTALL 文件以了解安装前的任何其他步骤,然后将完整文件夹复制到/usr/local/share/texmf/tex/latex/
(sudo cp -vr <folder name> /usr/local/share/texmf/tex/latex/
)。如有必要,您可能需要创建父目录。(mkdir
命令)。之后,运行sudo texhash
或sudo mktexlsr
更新 ls-R 数据库。如果没有最后一步,LaTeX 将无法找到包。 - 在上面的讨论中,我假设你会像我一样从命令行运行 LaTeX。如果你决定安装并使用任何 GUI 前端,请参阅这个帖子以获得进一步的指示。我认为Emacs和奥科特克斯 已经足够了。(此设置上述帖子中也提到过。
- 我理解,正如上述评论所表明的那样海科·奥伯迪克, 你有中等或中等以下(斜体部分是我个人的观点)使用旧版本的风险。但恕我直言,根据我十多年的经验,风险非常小。但如果你想走这条路,请使用邮报如评论中所述。但除非您是一位非常成熟的 Linux 用户(相信我,我就是),否则我不会建议您采用这种方式。无意冒犯。设置所有
$PATH
和环境变量可能不是您想要的。偶尔的依赖项冲突可能会给您带来一些额外的(非 LaTeX)麻烦。
答案2
我将添加不同的观点。
两年前,当我开始使用 Ubuntu 时,我在安装所有 LaTeX 包、引用样式、字体等时遇到了很多麻烦(有很多方法可以做到!请参阅这次讨论) 然后,不知怎么的,我找到了这个帖子。我清除了原始的 ubuntu-tex-live 以及其中包含“tex”的所有其他内容,然后安装了texlive-full
。
从那时起我就再也不用考虑安装任何与乳胶相关的东西了。 我想尝试一下 Stackoverflow 上的任何答案刚刚工作,我的同事发给我的任何文件都会被完美地编译(我记得在 Windows 上花了几个小时运行别人的 .tex 文件)。这真是个奇迹!我所要做的就是
sudo apt-get install texlive-full
是的,它会花费你 3GB 的下载数据,而且解压后可能还会花费更多,但它将永远解决你所有与乳胶相关的问题。
总结一下,并回答最初的问题
我应该避免安装它吗?
答案恰恰相反:texlive-full
是这在 Ubuntu 上安装 LaTeX 的方法。
答案3
对我来说,2017 年的方法是使用类似容器docker
来安装 latex 包。这样我就可以始终安装最新版本(因为我可以选择从哪个发行版中提取),并且不会让所有这些 latex 包干扰我的系统。
您可以轻松地设置您的系统以使用 dockercontainer 之外的 pdflatex 命令,这样一切都能按预期工作,但它将在 docker 容器中运行。
另一个巨大的好处是:当我想在另一个系统上构建一些 latex 时:我知道我有我必须使用的 Dockerfile,之后一切都应该按预期工作。将生产环境迁移到另一个位置时不会出现任何特别的麻烦。
示例Dockerfile
如下:
FROM ubuntu:zesty
RUN apt-get update && apt-get install -y --no-install-recommends apt-utils
RUN apt-get upgrade -y
RUN apt-get install -y texlive-full
RUN apt-get install -y xzdec
RUN apt-get install -y wget
RUN tlmgr init-usertree
RUN tlmgr install collection-fontsrecommended collection-fontsextra libertine mweights fontaxes marvosym inconsolata newtx kastrup mathalfa was fnpct superiors translations cnltx pgfopts trimspaces csquotes pgfplots multirow tabulary rotfloat ntheorem glossaries mfirstuc xfor datatool substr tracklang cleveref mathdots marginnote biblatex logreq xstring xpatch german
RUN apt-get install -y biber
WORKDIR /data
VOLUME ["/data"]
你可以将该 Dockerfile 与此处显示的框架。
答案4
我会定期更新软件。我不想更新3-4GB定期处理不必要的东西...我相信你也不想在这上面浪费时间和资源。
安装系统包(适用于 Ubuntu 及其衍生产品;其他发行版使用类似的包结构):
texlive-latex-base
texlive-latex-recommended
texlive-fonts-recommended
texlive-latex-extra (IMHO you'll use a package from here at some point, unless you're doing very basic stuff only)
texlive-bibtex-extra (if you do citations, you probably need that)
texlive-lang-(yourlang) (for any language you're writing documents in, except English)
如果您知道自己正在使用 pstricks、lualatex、xetex 或某些特定字体,请立即安装相应的系统包。如果您的人文/科学/音乐/游戏内容依赖于特定包,请安装 -humanities、-science、-music 或 -games 包。
之后安装所需的东西。是的,有成千上万个乳胶包装以及字体和其他东西,但它们被捆绑成一堆系统包(由系统包管理器安装的),因此您不需要每次都安装东西。
关键在于避免在包管理器之外安装 latex 包尽可能多。在 99.5% 的情况下,您的 latex 包已经存在于某个系统包中,您只需调用您的软件管理器!