我在 Ubuntu 12.10 下使用 TeXLive 2012。我想将 biblatex 升级到最新版本 (2.3)。我尝试了以下操作:
- 下载并解压 .tar.gz https://github.com/plk/biblatex/downloads
- 将内容放入本地 TeX 树 /usr/local/texlive/texmf-local 中:
- 将 ./tex/latex/biblatex 放入 /usr/local/texlive/texmf-local/tex/latex
- 将 ./bibtex 放入 /usr/local/texlive/texmf-local (替换那里现有的“bibtex”)
- mktexlsr (即 texhash)
在整理资料的时候,突然发现:
/usr/local/texlive/2012/../texmf-local/tex/latex/biblatex/biblatex.sty:87: Miss
ing number, treated as zero.
<to be read again>
D
l.87
?
我重新检查了 README,发现我已安装所有其他必需(和强烈推荐)的软件包。biblatex 的升级是如何正确完成的?
答案1
- 从
SourceForge
下载biber
v.1.4 (http://sourceforge.net/projects/biblatex-biber/) - 从
SourceForge
下载biblatex
v.2.4。(http://sourceforge.net/projects/biblatex/) - 创建两个临时目录:
mkdir tempbb && mkdir tempbl
- 解压
biber-linux_x86_32.tar.gz
到临时目录:tar -zxvf biber-linux_x86_32.tar.gz -C tempbb/
- 解压
biblatex-2.4.tds.tgz
到临时目录:tar -zxvf biblatex-2.4.tds.tgz -C tempbl/
tempbl
将临时目录中的文件内容移动/usr/local/texlive/2012/texmf-dist/
到:sudo rsync -azvv tempbl/ /usr/local/texlive/2012/texmf-dist/
- 将
biber
bin 从临时目录 移至/usr/local/texlive/2012/texmf-dist/
:sudo rsync -azvv tempbl/ /usr/local/texlive/2012/bin/i386-linux/
- 跑步
mktexlsr
- 测试一切是否正常工作。
答案2
这只是对 NVaughan 答案的修改;
sudo apt-get install texlive-full
sudo apt-get remove biber
sudo apt-get remove biblatex
- 下载
biber
v.1.8 二进制文件biber-linux_x86_64.tar.gz
从 SourceForgehttp://sourceforge.net/projects/biblatex-biber/) - 从 SourceForge下载
biblatex
v.2.8 源代码。(biblatex-2.8a.tds.tgz
http://sourceforge.net/projects/biblatex/)
mkdir tempbiber
mkdir tempbiblatex
tar -zxvf biber-linux_x86_64.tar.gz -C tempbiber/
tar -zxvf biblatex-2.8a.tds.tgz -C tempbiblatex/
sudo rsync -azvv tempbiber/ /usr/bin/
#sudo rsync -azvv tempbiblatex/ /usr/share/texlive/texmf-dist/
sudo rsync -azvv tempbiblatex/ /usr/local/share/texmf/
使用 来编译文档biber
;
pdflatex texDocumentName
biber texDocumentName
pdflatex texDocumentName
答案3
由于这个问题似乎很受欢迎,所以我要添加另一个答案。
一般情况下,您不应该biblatex
手动更新或 Biber。使用您的 TeX 发行版(MikTeX 及其控制台或 TeX live 及其tlmgr
:我如何更新我的 TeX 发行版?)来安装和更新软件包。
手动更新的问题不仅在于biblatex
和 Biber 的版本需要完全匹配,而且 还biblatex
对其他软件包有(诚然较温和的)依赖关系(而这些软件包本身可能也有依赖关系)。因此,您永远无法确定只需要更新biblatex
和 Biber,您可能还需要更新、etoolbox
和一些其他软件包。反之亦然,依赖于 的软件包也可能需要更新。这可能意味着您需要更新的软件包远不止和 Biber。babel
xstring
biblatex
biblatex
如果您让您的 TeX 发行版为您解决这个问题,那么您获得真正可以一起工作的软件包版本的机会就会高得多。
如果你的 TeX 发行版不再提供更新(vanilla TeX live 每年都会冻结,请参阅为什么 TeX Live “要求”每年更新?并且许多 Linux 发行版的存储库中附带的 TeX live 处于冻结状态,并且通常在发布时已经落后几个月),您应该考虑更新整个 TeX 发行版。如果您想在软件存储库中带有 TeX live 的 Linux 机器上获取最新更新,您可能需要安装“vanilla”TeX live:如何在 Debian 或 Ubuntu 上安装“原始” TeXLive?。升级到新的 TeX live 的优点是旧安装通常可以与新安装共存,因此如果出现问题,您有一个备份系统。
因此重申:不要biblatex
手动更新或 Biber。
如果您必须手动更新这两个软件包,请准备好更新许多其他软件包。通常,您应该会收到有意义的错误或警告,它们可以提示您哪些软件包需要更新,但您永远无法确定(例如,某些较低级别的etoolbox
更改可能会产生无法真正指向的神秘错误消息etoolbox
,例如biblatex 一夜之间坏了)。
检查兼容性矩阵
biblatex
或者比贝尔和 Biber的匹配版本手册biblatex
。选择您想要的版本(可能是最新版本或 arXiv 的特定版本组合)。从SourceForge获取相应的版本。
- https://sourceforge.net/projects/biblatex/files/对于
biblatex
和 - https://sourceforge.net/projects/biblatex-biber/files/biblatex-biber/为 Biber
如果你想要最新版本,你也可以参考 CTAN:https://www.ctan.org/pkg/biblatex和https://www.ctan.org/pkg/biber
- https://sourceforge.net/projects/biblatex/files/对于
决定是否要用您的版本替换已安装的系统文件,或者是否要将您的版本安装在本地树中,以使它们优先于系统文件(另请参阅https://texfaq.org/FAQ-inst-wlcf)。通常第二种选择是更为明智的,人们不鼓励你选择第一种。
跟随如何在 Linux 系统上安装单独的软件包?或者https://tex.stackexchange.com/q/405142/35864手动安装
biblatex
。将 Biber 可执行文件提取到适当的位置。(要么覆盖现有的可执行文件 - 不建议这样做 - 要么安装到具有适当路径设置
/usr/local/bin
的子目录中)。/home