我用光盘安装了 texlive2012,也安装了 texlive-dummy,再安装其他软件时提示依然依赖 texlive(比如 octave)
有什么办法解决
(texlive-dummy 是从 ctan 上找来的)
解决办法就是不用光盘安装 texlive。Octave 需要的是 texlive 这个软件包而不是 texlive。
还真得光盘安装。不用光盘难以装全我要用的东西。
全部下载需要下到下辈子(十几 k 的速度)
可以挂载 DVD ISO 为源。还有你的 TexLive 不是下载的?
Sent from my Galaxy Note 2 using Tapatalk 2
texlive2012.iso
不整了,我还是从源里安装吧
看来我对 tex 的理解比我想象的还肤浅
那你只有一个选择了,就是下载 octave 这类你需要的软件的 src.rpm 包,解压后修改.spec 文件把对 texlive 的 Requires 去掉然后再用 rpmbuild 打包~
这个自然还是安装源里的 texlive 要好一点啊:
sudo zypper in texlive
关键问题是 12.3 下的 texlive2012 实在是让人有点蛋疼~n 千个包~
是你对包管理系统理解的比较肤浅,它们都有数据库的。数据库以外的东西是不认的。
拜托,我们是技术论坛,能讲究点实证改掉顺嘴胡嘞的毛病咩?
texlive 算上文档一共 288 个包。
更多的是作为依赖出现。搭建 texlive 环境最简单的是可以用
sudo zypper in kile
即可。
这是没用的。Octave 需要 texlive 才能够编译。你用 rpmbuild 依然会提示没有 texlive 软件包。
这依然是没用的。空包提供不了库文件,你根本就运行不了 Octave。
总之就是一旦开始自己编译,那你就把灵魂卖给恶魔了,你必须从头编译到脚。
texlive-dummy 只所以不起作用是因为 octave 依赖的是不是 texlive,而是 texinfo,texinfo 包又依赖一大堆类似 texlive-latex 之类的包~
至于说空包提供不了库的问题不是问题,因为库在安装 texlive.iso 后已经都存在了~空包只是让安装时不再显示缺少依赖而已,从本质上讲装个空包和装时选忽略依赖关系是一个效果~不过空包在 rpm 重新打包过程中的确是起不了任何任何作用~
发现了
倒不是对包管理系统理解比较肤浅。以前解决 texlive 的乱七八糟问题都是靠囫囵地安装 iso 版解决的,这次倒还不如研究研究那些东西在那个包。
好在很简单,网速也上来了
octave 用 texinfo 编译文档,所以依然会需要 texlive 软件包。如果可以忍受没有文档,那可以打出不需要 texlive 的软件包。
但是依赖 texlive 本身的各种前端 GUI 你依然装不了源里软件包。于是你再一个接一个的空包?那最后你把 texlive 主要的包都做成空包了… 另外空包也是被 RPM 管理的,换句话说,某次更新就给填实了。然后为了避免这样,你再在 YaST 里使用锁定?在没有世界观的时候,方法论的错误可是毁一生的。
安装时忽略依赖关系是可以重新检查依赖关系修好的,你让他装了空包导致的后果就是他要一个一个去移动 .so 文件。
总之这就是新手思维,「凑合的胜利」啦。典型案例就是有人在 Ubuntu 上用 fcitx 总崩溃,他为了不学习如何报 bug 而去学习 bash 语法自己写了脚本然后绑定了一个快捷键,一键重启 fcitx。当初这种自以为很碉堡的事我也没少干,后来才发现在 Linux 世界里一个好的起点比要达到的目标重要。
我最早在 openSUSE 上用 texlive 的时候也是看了不少网文,各种配置,然后发现都是 bullshit,zypper in kile 和 pdftex 直接搞定中文。
额,texlive 和一般的程序还是有点不同的,对于 texlive 来说实际上它不提供.so 这类链接库,外部其它程序和它的接口也就是那几个可执行命令,它内部的那些宏啊包啊的管理有它自己的数据库,所以只要保证它的 bin 文件夹在 PATH 里应该就没什么问题。当然,怂恿他装空包这不也是为了图省事嘛,如果一个空包就能解决的问题那干嘛还要装个几百个包,如果搞不定要装 n 多个空包之类的那就得不偿失了不如直接源里装了。我们的目标是怎么省事怎么来~
ps:话说做空包时如果把 texlive 主要的几个包都填在 Provides 里就不用每个包都做个空包了~ 好吧,俺承认俺只是闲的蛋疼而已