编译和安装软件是我无法克服的痛苦和问题。我只想与更多知识渊博的人深入了解此过程,以清除自己的想法,进入下一个层次。
我需要的许多科学软件都没有作为软件包分发。我知道“ ./configure”会设置编译变量,并检查依赖项“ make”是否会在编译“ sudo make install”时将所有库和bin放在它们的位置。但是,它永远都行不通。我很少离开a)“ ./configure”阶段而不进入依赖地狱,并且如果这样做,b)“ sudo make install”可能会破坏我的盒子。
a)依赖地狱非常令人沮丧。有时我有图书馆,但它不喜欢它。或库不想安装。或“配置”找不到它。或者我的发行版将其放置在不应放置的位置。或者我的系统中有两个版本。问题是,我不明白如何诊断并解决这些问题。对于不需要成为程序员的人,有哪些好的学习参考?
b)我的理解是“ make install”将替换一些库并更改设置,而我的软件包管理器没有意识到这一点。因此,某些程序将无法运行,其他程序将无法更新。因此,如果我不使用“ make install”,而只是将编译后的二进制文件保留在用户目录中,并在路径中添加了符号链接,我会很清楚吗?
我的机器是单用户的,具有大量的免费高清,所以我真的不关心拥有多个(几十个)库副本是否可以解决我的问题。空间便宜。
apt-get build-dep <package>
用来自动安装必要的依赖项。