尽管大部分常见的linux系统的包管理器内都会包含texlive,然而最好还是安装TUG发布的原版texlive。这是由于:1,软件仓库内的texlive通常版本较陈旧;2,由于版权因素一些tex宏包没有被软件仓库收录;3,软件仓库内的texlive分割混乱,更新和维护都不方便,事实上,texlive本身的TDS结构就已经相当清晰完善了。

这里以Linux Mint 18系统为例,介绍如何安装和配置原版的texlive 2016。


安装前准备

如果已经安装了其它版本的texlive,需要先卸载掉。

texlive 的安装有两种方式,一是下载一个安装脚本然后在线安装,二是从本地的光盘镜像安装。这里采用后者。最新的texlive光盘镜像文件texlive2016.iso可以从CTAN上下载。CTAN 国内镜像有很多,教育网用户可以选择清华或者中科大等高校的镜像,一般宽带用户可以选择阿里云镜像,视网速而定。

此外,为了使用图形化安装界面,需要安装perl的tk组件:

sudo apt-get install perl-tk

安装texlive 2016

加载镜像文件

sudo mount -o loop texlive2016.iso /mnt

启动安装程序的图形化界面进行配置

cd /mnt
sudo ./install-tl -gui

如图,其中要说明的选项有以下几点。

  • 选择安装方案。初级用户推荐直接选择 scheme-full 全部安装。如果磁盘空间有限也可以选择small或者median模式。高级用户可以选择scheme-custom进一步定制。这里我选择了scheme-custom,并且在“进一步定制”里去掉了自己不会用到的一些语言包和ConTeXt相关组件。
  • 由于这里是安装到系统里,因此portable setup选择了否,安装路径为默认。
  • 选项里面选择默认为A4纸张大小,其它一些选项基本都选了是。其中要注意的是创建符号链接会在 /usr/local/bin里面创建指向可执行程序的软链接,从而可以直接使用latex,pdflatex等命令,此外还可以使用man latex等命令查看帮助。
  • 建议在最后的get package updates一项选否,等安装好了之后手动安装更新。

安装texlive

点击安装TeX Live进行安装

最后出现下图说明安装完成

点击完成,卸载镜像文件

cd /; sudo umount /mnt

Windows和macOS下的安装

  • windows10可以直接双击iso文件进入,windows 7以及之前版本需要用虚拟光驱软件加载iso文件。双击其中的install-tl-advanced.bat文件可以弹出类似的安装界面。进行类似的配置后可以安装。
  • macOS 系统推荐安装macTeX, 这是mac版本的texlive,位于CTAN镜像的/CTAN/systems/mac/mactex/MacTeX.pkg

安装后操作

更新源配置

配置合适的CTAN源可以加快宏包更新的网速,以中科大的源为例:

sudo tlmgr option repository http://mirrors.ustc.edu.cn/CTAN/systems/texlive/tlnet

之后可以利用tlmgr进行网络更新。CTAN 上的包更新很频繁,所以即便是最新版的texlive2016,其中也有大量的宏包需要更新(可能包括tlmgr程序本身)

sudo tlmgr update --self --all

字体配置

XeTeX 和 LuaTeX 可以直接使用系统字体。然而 texlive 自带的字体并不在系统的字体目录里面。为了让系统可以使用texlive所带的字体,需要进行如下配置。

  • 将texlive的字体配置文件复制到系统内
sudo cp /usr/local/texlive/2016/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf

建议将 /etc/fonts/conf.d/09-texlive.conf包含type1字体的那行删掉,以避免在其它软件中显示成百上千的type1字体,即删掉

<dir>/usr/local/texlive/2016/texmf-dist/fonts/type1</dir>
  • 刷新系统字体缓存
sudo fc-cache -fsv

dummy package 安装

texlive2016安装之后需要“告诉”系统texlive相关软件包都安装好了。这样在系统安装依赖于tex的软件(比如R)时就不必重新下载软件仓库中的旧版 texlive 相关软件。也不会造成不同版本 tex 命令的冲突。dummy package 就是解决这样的软件依赖问题的“虚包”。

Debian/Ubuntu下的dummy package 的制作可以参考 TUG上的官方说明. 这里 已经制作了一个 texlive2016 的dummy package, 下载后直接安装即可:

sudo dpkg -i texlive-local_2016-1_all.deb

关于其它系统

编辑器安装

安装了dummy package之后,可以通过dpkg、系统的软件仓库、以及PPA来安装编辑器。比如texworks, texstudio, KDE桌面下常用的kile, 以及半可视化的LyX。RHEL 系的linux发行版也有相应的软件仓库。

texworks, texstudio都自带PDF浏览器,kile配合PDF浏览器okular也可以实现正反向搜索。

Linux 系统下原版 texlive 2016 的安装与配置的更多相关文章

  1. Linux 系统下用源码包安装软件

    Linux系统下用源码包安装软件 by:授客 QQ:1033553122 下载源码安装包,解压或者直接双击打开(如果有安装zip或rar等压缩/解压缩软件的话),查找相关的安装说明文件,一般是READ ...

  2. Linux系统下Apache2.4.17的安装过程

    Linux系统下安装Apache Server2.4.17.还是先声明一下,Linux命令我不进行讲解,因为我不是讲Linux命令的.有需要注意的地方,我会上图,没什么值得的注意的地方,我就不上图了. ...

  3. Win7 32位系统下Java开发环境的安装及配置

    目录: Java JDK安装. Java JDK系统环境的配置. 配置常见问题的解决. Java JDK的安装 Java Jdk(Java Development Kit)Java开发不可缺少的环境, ...

  4. linux系统下使用apt-get install 方法安装lamp环境

    1.更新源,获得最近的软件包的列表,列表中包含一些包的信息,比如这个包是否更新过. sudo apt-get update 2.更新系统中已安装的软件包 sudo apt-get upgrade 3. ...

  5. Linux系统下rz/sz工具的安装

    (1)编译安装 root 账号登陆后,依次执行以下命令: wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz tar zxvf lrzs ...

  6. Win7 32位系统下Sublime text 3的安装以及配置C/C++、java、python的开发环境方法

    本人初学者,此文仅是对这几天鼓捣subime text 3一点微不足道的经验总结,如有明显错误,欢迎指正! 好了,废话少说,进入正题,之前编程java一直用的是eclipse,java的主流IDE,后 ...

  7. Linux系统下修改环境变量PATH路径的三种方法

    这里介绍Linux的知识,比如把/etc/apache/bin目录添加到PATH中有三种方法,看完之后你将学会Linux系统下如何修改环境变量PATH路径,需要的朋友可以参考下 电脑中必不可少的就是操 ...

  8. Linux系统环境下MySQL数据库源代码的安装

    Linux系统环境下MySQL数据库源代码的安装 基本环境:CentOS Linux release 7.8.2003 (Core).MySQL5.6 一.      安装环境准备 若要在Linux系 ...

  9. Linux系统下Redis安装(一)

    最近项目要使用Redis,特将这段时间将Redis的学习经验与大家分享,算是对这段时间学习成果的总结和技术提炼,不足之处还望大家批评指正. 项目背景: 有些很少改动的数据和经常使用的数据(例如系统中下 ...

随机推荐

  1. SSH proxy

    # for Linux ssh nobody@guoliangwu.com -P 22 -C -N -D 127.0.0.1:6500 # for windows(PuTTY) plink nobod ...

  2. 七牛上传Qt版本

    最近在找图床,写博客啥的需要.以前的图床好像挂了,搭在BAE上的图床也挂了,可能BAE3.0更新了吧. 花了点时间写了Qt版本 github地址:https://github.com/wzyuliya ...

  3. VTK三维重建(1)-使用VTK读取DICOM,并动态输出

    [效果显示] 将脚部骨骼扫描的CT照片进行的连续读取, 运行结果存为了两个动态gif, 不知道能不能正常显示 [程序实现] int main(int argc, char* argv[]) { // ...

  4. httpServer V1

    package cn.edu.sss.httpServer; import java.io.BufferedReader; import java.io.IOException; import jav ...

  5. EventBus使用小记

    自从使用了EventBus,代码干净了好多. 从此你不用startActivityForResult了,从此你不用再写注册BroadcastReceiver了,从此你不用再写一些回调了. 只需要在需要 ...

  6. SQL2008-不同数据库之间的触发器

    create trigger tr_update_Table_1   on   rwqd     FOR  UPDATE   As   update dataabc.dbo.Table_1  set ...

  7. jQuery plugin : jqTransform

    Usage 1- Add javascript inclusion in the header section of your web page //required <script type= ...

  8. Oracle- 查询误删数据

    使用flashback table能恢复误删数据. flashback table CONTAINER_CONTENT to timestamp to_timestamp('2010-06-30 22 ...

  9. 剑指OFFER之最小的K个数(九度OJ1371)

    题目描述: 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. 输入: 每个测试案例包括2行: 第一行为2个整数n,k(1< ...

  10. ALV可输入状态下输入金额字段变小数的问题

    http://blog.163.com/mxb_sap@yeah/blog/static/10335262520167109022155/ 小数位数两位    当我在给ALV上给该字段输入整数 '12 ...