您的位置:首页 > 其它

Ubuntu 下安装并配置 TeXLive

2016-10-14 12:28 381 查看
参考:Ubuntu 下安装并配置 TeXLive

注:本文的大部分内容来自于Ubuntu 下安装并配置 TeXLive,因为其中涉及到一点个人见解,特标记为原创,如果涉及到版权问题,本人愿意更正,谢谢。特此注明。

前言:本文安装环境为 Ubuntu 14.04 LTS 64 位系统,软件版本为 TeXLive 2014,更详细的教程请看官方 TeXLive 指南,Latex简单教程一份不太简短的latex2e介绍


安装前准备

下载 TeXLive 2014 镜像文件 

下载地址:TeXLive 2014 

删除旧版
$ sudo apt-get purge tex-common# 如果装有TeXLive2013,请选择使用$ sudo tlmgr -gui     # 删除TeXLive2013


安装 Perl::TK 模块 

install-tl 是一个 Perl 脚本,要在专家 GUI 模式下安装,需要加入 XFT 支持的 Perl::TK 模块,可用以下方法添加:
$ sudo apt-get install perl-tk


安装主程序 

挂载 iso 镜像文件
$ sudo mount -o loop path_to_TeXLive2014.iso /mnt$ cd /mnt


启动安装程序 

在加入了 XFT 支持的 Perl::TK 模块后,可以用以下方法启动专家 GUI 模式进行安装:
$ sudo ./install-tl -gui


在图形界面中将 Create symlinks in system directories 选项更改为 Yes,点击 Install TeX Live 开始安装。

===================================================================== 
这一部分在实际操作的时候并没有涉及,只是原文中提及到,保留至此。

配置环境变量 

可根据安装结束时的文本提示进行相应的环境变量配置,我在安装时进行了如下配置。 

在 ~/.bashrc 和 ~/.profile 文件结尾添加如下代码: 

# 自己为texlive配置的环境变量
PATH=/usr/local/texlive/2014/bin/x86_64-linux:/$PATH; export PATHMANPATH=/usr/local/texlive/2014/texmf-dist/doc/man:/$MANPATH; export MANPATHINFOPATH=/usr/local/texlive/2014/texmf-dist/doc/info:/$INFOPATH; export INFOPATH


为了配置全局的环境变量,可在 /etc/manpath.config 文件的 # set up PATH to MANPATH mapping. 下添加:
MANPATH_MAP /usr/local/texlive/2014/bin/x86_64-linux /    /usr/local/texlive/2014/texmf-dist/doc/man


之后注销即可。 

注:如果环境变量配置出错导致无法登录,可以参见我的另一篇博文进行解决:Linux 配置环境变量后无法登录的解决方案

注:以上部分,本人并没有实际操作,请慎重为之。谢谢!

=====================================================================


测试安装是否成功

首先确认你可以执行 tex 程序:
$ tex --version    TeX 3.14159265 (TeX Live ...)    Copyright ... D.E. Knuth.    ...


如果你安装了 xetex 包,可以按如下步骤测试它能否访问系统字体(会生成文件,可在无用目录下执行):
$ xetex opentype-info.tex    This is XeTeX, Version 3.14...    ...    Output written on opentype-info.pdf (1 page).    Transcript written on opentype-info.log.


如果你收到 “Invalid fontname ‘Latin Modern Roman/ICU’…” 这样的错误信息,就说明需要配置系统才能找到 TEX Live 自带的字体。


XeTEX 和 LuaTEX 的系统字体配置

XeTEX 和 LuaTEX 可以使用任何系统安装的字体,而不只是 TEX 目录树中的那些。它们使用类似但不完全一致的方式实现这一功能。 

在 Windows 下 TEX Live 提供的字体会自动为 XeTEX 所用。但如果你在 Unix 兼容的系统中安装了 xetex 软件包,则需要把系统配置一番 XeTEX 才能找到随 TEX Live 安装的那些字体。 

要在整个系统中使用 TEX Live 的字体 (假定你有足够的权限),请依照下面的步骤来做: 

将 texlive-fontconfig.conf 文件复制到 /etc/fonts/conf.d/09-texlive.conf。
$ sudo cp /usr/local/texlive/2014/texmf-var/fonts/conf/texlive-fontconfig.conf / /etc/fonts/conf.d/09-texlive.conf


运行
$ sudo fc-cache -fsv。


如果你没有足够的权限执行上述操作,或者只需要把 TEX Live 字体提供给你自己,可以这么做: 

将 texlive-fontconfig.conf 文件复制到 ~/.fonts.conf,其中 ~ 是你的主目录。 

运行
$ fc-cache -fv。


此时执行第2步,问题已经解决。


中文字体安装与配置

中文字体安装 

先写一个简单的测试 tex 文件。起名为 test.tex
/documentclass[UTF8]{ctexart}/begin{document}	我爱中国!	/end{document}


然后执行如下命令编译
$ xelatex test.tex


系统会报错,大致信息如下: 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 



! fontspec error: “font-not-found” 



! The font “SimSun” cannot be found. 



! See the fontspec documentation for further information. 



! For immediate help type H . 

!……………………………………….. 

下面就要解决这个问题,错误里说了,”font-not-found”!
$ sudo mkdir /usr/share/fonts/winfonts


然后把 Windows 下的六种中易字体(其中的四种字体simsun.ttf,simkai.ttf,simfang.ttf,simhei.ttf,另外simsun.ttc本人也复制到其中,因为在使用pdflatex命令时用到了该字体)复制到该文件夹,并更改字体权限
$ sudo chmod 644 /usr/share/fonts/winfonts/*


刷新字体库
$ sudo mkfontscale$ sudo mkfontdir$ sudo fc-cache -fsv


xeLaTeX 中文字体配置

如果使用 xeLaTeX 的话,需要 xeCJK 宏包的支持,需要修改/usr/local/texlive/2014/texmf-dist/tex/latex/ctex/fontset 下的 ctex-xecjk-winfonts.def 文件。 

文件内容,如下
% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体  % vim:ft=tex   /setCJKmainfont[BoldFont={SimHei},ItalicFont={[SIMKAI.TTF]}]  {SimSun}  /setCJKsansfont{SimHei}  /setCJKmonofont{[SIMFANG.TTF]}  /setCJKfamilyfont{zhsong}{SimSun}  /setCJKfamilyfont{zhhei}{SimHei}  /setCJKfamilyfont{zhkai}{[SIMKAI.TTF]}  /setCJKfamilyfont{zhfs}{[SIMFANG.TTF]}% /setCJKfamilyfont{zhli}{LiSu}  % /setCJKfamilyfont{zhyou}{YouYuan}  /newcommand*{/songti}{/CJKfamily{zhsong}} % 宋体  /newcommand*{/heiti}{/CJKfamily{zhhei}}   % 黑体  /newcommand*{/kaishu}{/CJKfamily{zhkai}}  % 楷书  /newcommand*{/fangsong}{/CJKfamily{zhfs}} % 仿宋  % /newcommand*{/lishu}{/CJKfamily{zhli}}    % 隶书  % /newcommand*{/youyuan}{/CJKfamily{zhyou}} % 幼圆  /endinput


下面,打开新的终端,执行如下命令:
$ fc-list :lang=zh-cn


输出大约如下
/usr/share/fonts/winfonts/simkai.ttf: KaiTi,楷体:style=Regular.../usr/share/fonts/winfonts/simfang.ttf: FangSong,仿宋:style=Regular.../usr/share/fonts/winfonts/simsun.ttf: SimSun,宋体:style=Regular.../usr/share/fonts/winfonts/simhei.ttf: SimHei,黑体:style=Regular...


将 ctex-xecjk-winfonts.def的字体名字分别改成了上面四行路径后的第一个名字,即KaiTi,FangSong,SimSun,SimHei,并且将[SIMKAI.TTF] 类的字体中的中括号删去。例如:
/setCJKfamilyfont{zhkai}{[SIMKAI.TTF]}  /setCJKfamilyfont{zhfs}{[SIMFANG.TTF]}


改为
/setCJKfamilyfont{zhkai}{KaiTi}  /setCJKfamilyfont{zhfs}{FangSong}


重新编译一下,发现成功了。

另外,若想添加 Adobe 字体,设置方法与 Windows 字体大致相同,此处不再赘述。


pdfLaTeX 中文字体配置

在上边添加了 Windows 字体的基础之上可以为 pdfLaTeX 添加中文字体支持 

在* /usr/local/texlive/2014/texmf.cnf *文件中设置 OSFONTDIR 变量,即添加如下信息:
% 自己为pdflatex设置的OSFONTDIR变量指向中文字体文件 OSFONTDIR=/usr/share/fonts/winfonts
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: