我已经texlive2017-20170524.iso
从下载http://muug.ca/mirror/ctan/systems/texlive/Images/。
并尝试使用“使用存档加载程序打开”(右键单击它)以及“使用 --> 磁盘映像加载程序打开”来加载它
他们都成功登上了。
当我cd
到达安装位置并运行./install-tl
(也尝试过./install-tl
)时,它给出了此错误:
TeXLive/TLUtils.pm did not return a true value at ./install-tl line 54.
BEGIN failed--compilation aborted at ./install-tl line 54.
以下是install-tl
#!/usr/bin/env perl
# $Id: install-tl 44407 2017-05-18 21:25:39Z karl $
#
# Copyright 2007-2017
# Reinhard Kotucha, Norbert Preining, Karl Berry, Siep Kroonenberg.
# This file is licensed under the GNU General Public License version 2
# or any later version.
#
# Be careful when changing wording: *every* normal informational message
# output here must be recognized by the long grep in tl-update-tlnet.
#
# TODO:
# - with -gui pop up a transient window showing:
# testing for compressed archive packages ...
# testing for uncompressed live system ...
# testing for network access ...
# loading tlpdb, this can take some time ...
# (that, and maybe some others can be done with the waitVariableX
# thingy as described in the Perl/Tk book in the chapter that can be
# found on the net) (Werner 28.10.08)
my $svnrev = '$Revision: 44407 $';
$svnrev =~ m/: ([0-9]+) /;
$::installerrevision = ($1 ? $1 : 'unknown');
# taken from 00texlive.config: release, $tlpdb->config_release;
our $texlive_release;
BEGIN {
$^W = 1;
my $Master;
my $me = $0;
$me =~ s!\\!/!g if $^O =~ /^MSWin/i;
if ($me =~ m!/!) {
($Master = $me) =~ s!(.*)/[^/]*$!$1!;
} else {
$Master = ".";
}
$::installerdir = $Master;
# All platforms: add the installer modules
unshift (@INC, "$::installerdir/tlpkg");
}
use Cwd 'abs_path';
use Getopt::Long qw(:config no_autoabbrev);
use Pod::Usage;
use POSIX ();
use TeXLive::TLUtils qw(platform platform_desc sort_archs
which getenv win32 unix info log debug tlwarn ddebug tldie
member process_logging_options rmtree wsystem
mkdirhier make_var_skeleton make_local_skeleton install_package copy
install_packages dirname setup_programs native_slashify forward_slashify);
use TeXLive::TLPOBJ;
use TeXLive::TLPDB;
use TeXLive::TLConfig;
use TeXLive::TLCrypto;
use TeXLive::TLDownload;
use TeXLive::TLPaper;
我还尝试将内容复制到硬盘上(这样它就不再是 ISO 格式了),因为之前直接从 ISO 运行应用程序时我遇到了问题。它仍然会给出上述错误。
问题:如何使用 安装 TeXLive 到我的系统texlive2017-20170524.iso
?
(我宁愿使用离线安装程序而不是sudo apt-get install texlive
)
以下是我在终端上看到的内容:
Me@Computer:~/Desktop$ cd ~/Desktop
Me@Computer:~/Desktop$ mkdir mountpoint
Me@Computer:~/Desktop$ sudo mount -o loop texlive2017-20170524.iso mountpoint
[sudo] password for Me:
mount: /dev/loop0 is write-protected, mounting read-only
Me@Computer:~/Desktop$ cd mountpoint/
Me@Computer:~/Desktop/mountpoint$ ./install-tl
TeXLive/TLUtils.pm did not return a true value at ./install-tl line 54.
BEGIN failed--compilation aborted at ./install-tl line 54.
Me@Computer:~/Desktop/mountpoint$
答案1
我认为问题是XY问题:你的最终目标是texlive
离线安装,并且不需要通过 ISO 而不是其他替代方案来执行此操作。
如果是这种情况,那么您可以考虑获取文件deb
及其texlive
依赖项,而不是 ISO。这应该可以简化安装并消除问题。
texlive
您可以通过以下方式获取其依赖项的 URL 和 MD5 总数列表:在您的系统上运行此命令:
apt-get --print-uris --yes install texlive | grep "^'" | sed -e "s/'//g" | awk '{ print $1, $4 }' > packages.info
这将生成一个packages.info
包含要下载的 URL 及其 MD5 值的文件。最好让您的朋友在下载后也验证一下 MD5 值。
一旦您有了这些deb
文件,您就可以安装它们,dpkg -i *.deb
然后就可以开始了。
话虽如此,正如 @fkraiem 在评论中指出的那样,使用deb
而不是 ISO 有一些缺点:
对于 TeXLive 来说,我认为使用官方安装程序总是比使用 .debs 更好(事实上,我自己就是用的这个),主要是因为它可以更好地管理 CTAN 包,并提供更好的社区支持(如果你在 Tex.SE 上提问,它会假定你使用了官方安装程序,所以如果你使用 .debs,解决方案可能不起作用)
答案2
事实证明,文件没有被正确传输。
我朋友的计算机上(最初下载该文件的人)的该文件的哈希值具有正确的哈希值。
但是,传输介质上的文件哈希值(以及我计算机上的文件)具有相同的不正确哈希。