从源安装。如何在不破坏软件包管理器的情况下解决依赖关系

用户名

编译和安装软件是我无法克服的痛苦和问题。我只是想和更多知识渊博的人一起了解一下这个过程,以清除自己的想法,进入一个新的水平。

我需要的许多科学软件都没有作为软件包分发。我知道“ ./configure”会设置编译变量,并检查依赖项“ make”是否会在编译“ sudo make install”时将所有库和bin放在它们的位置。但是,它永远都行不通。我很少离开a)“ ./configure”阶段而不进入依赖地狱,如果我这样做,则b)“ sudo make install”可能会破坏我的框。

a)依赖地狱非常令人沮丧。有时我有图书馆,但它不喜欢它。或库不想安装。或“配置”找不到它。或者我的发行版将其放置在不应放置的位置。或者我的系统中有两个版本。问题是,我无法理解如何诊断并解决这些问题。对于不需要成为程序员的人来说,有哪些好的学习参考?

b)我的理解是“ make install”将替换一些库并更改设置,而我的软件包管理器没有意识到这一点。因此,某些程序将无法运行,其他程序将无法更新。因此,如果我不使用“ make install”,而只是将编译后的二进制文件保留在用户目录中,并在路径中添加了符号链接,我会很清楚吗?

我的机器只有一个用户,有大量的免费高清,所以我真的不在乎是否有多个(几十个)库副本,如果能解决我的问题。空间便宜。

巴哈马

大多数软件包将具有<package>-dev(对于基于Debian的)或<package>-devel(对于基于Red Hat的),这是链接进行构建所需的库。

因此,例如,如果消息源说需要使用libxml,您将在基于Debian的系统中找到libxml2libxml2-dev(用于apt-cache search <dependancy>查找它们)。

您将需要libxml2-dev构建它并libxml2运行它。

./configure步骤通常支持--with-libxml=/usr/lib/将其指向正确库的标志./configure --help应列出所有选项)。它还通常支持使用更改安装位置--prefix=$HOME/sw在软件包管理器不能控制的范围之外使用前缀是避免与软件包管理器安装的软件发生冲突的最佳方法。

在Debian和衍生品使用--prefix/usr/local/还是/opt/local/应该是安全的。

如果软件包管理器中没有您需要的库(或版本),则只需下载源代码并使用类似的选项进行编译。最重要的是--prefix,请在软件包管理器外部使用,并在编译您真正想要使用的软件时使用--with-<library>=/<path/to/installed/library>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在未安装Visual Studio的情况下更新Nuget软件包管理器?

来自分类Dev

如何在未安装Visual Studio的情况下更新Nuget软件包管理器?

来自分类Dev

在没有软件包管理器的情况下安装软件

来自分类Dev

为什么默认情况下Ubuntu软件包管理器会安装nodejs v4.2.6?

来自分类Dev

如何在Gentoo中使用我的软件包管理器从git安装自定义源?

来自分类Dev

如何离线安装Atom软件包或当原子软件包管理器不工作时如何安装?

来自分类Dev

如何在不使用程序包管理器的情况下安装程序包?

来自分类Dev

如何在FreeBSD发行版上安装软件包管理器(PKG)

来自分类Dev

在没有软件包管理器的情况下在Centos上安装Apache和PHP(yum,rpm ...)

来自分类Dev

安装nvidia-opencl-icd-367会破坏软件包管理器

来自分类Dev

安装nvidia-opencl-icd-367会破坏软件包管理器

来自分类Dev

如何通过软件包管理器安装Swift软件包?

来自分类Dev

如何在不安装依赖项的情况下安装软件包?

来自分类Dev

查找软件包管理器未安装的文件

来自分类Dev

在terramaster NAS上安装软件包管理器

来自分类Dev

电子:如何在index.html中导入或包括使用npm软件包管理器安装的CSS?

来自分类Dev

我如何在CentOS7中安装pacman(Archlinux软件包管理器)及其回购协议(AUR)

来自分类Dev

Skype安装失败。如何从Ubuntu的软件包管理器安装Skype?

来自分类Dev

如何在不安装软件包本身的情况下安装rpm软件包的依赖项?(rhel / fedora)

来自分类Dev

如何在不借助软件包管理系统的情况下找出`dash`的版本号?

来自分类Dev

如何在不破坏依赖的情况下删除ImageMagick?

来自分类Dev

在没有包管理器的情况下安装Python

来自分类Dev

Aptitude软件包管理器是否还需要APT安装软件所需的依赖项和存储库?

来自分类Dev

如何通过Yum软件包管理器安装我的应用程序?

来自分类Dev

如何通过软件包管理器正确安装和使用texlive

来自分类Dev

如何使用Nix软件包管理器通过Observer安装Erlang或Elixir?

来自分类Dev

如何通过软件包管理器正确安装和使用texlive

来自分类Dev

软件包管理器如何安装与您的系统架构兼容的库?

来自分类Dev

如何使用软件包管理器工具从存储库在centos 8中安装sshfs

Related 相关文章

  1. 1

    如何在未安装Visual Studio的情况下更新Nuget软件包管理器?

  2. 2

    如何在未安装Visual Studio的情况下更新Nuget软件包管理器?

  3. 3

    在没有软件包管理器的情况下安装软件

  4. 4

    为什么默认情况下Ubuntu软件包管理器会安装nodejs v4.2.6?

  5. 5

    如何在Gentoo中使用我的软件包管理器从git安装自定义源?

  6. 6

    如何离线安装Atom软件包或当原子软件包管理器不工作时如何安装?

  7. 7

    如何在不使用程序包管理器的情况下安装程序包?

  8. 8

    如何在FreeBSD发行版上安装软件包管理器(PKG)

  9. 9

    在没有软件包管理器的情况下在Centos上安装Apache和PHP(yum,rpm ...)

  10. 10

    安装nvidia-opencl-icd-367会破坏软件包管理器

  11. 11

    安装nvidia-opencl-icd-367会破坏软件包管理器

  12. 12

    如何通过软件包管理器安装Swift软件包?

  13. 13

    如何在不安装依赖项的情况下安装软件包?

  14. 14

    查找软件包管理器未安装的文件

  15. 15

    在terramaster NAS上安装软件包管理器

  16. 16

    电子:如何在index.html中导入或包括使用npm软件包管理器安装的CSS?

  17. 17

    我如何在CentOS7中安装pacman(Archlinux软件包管理器)及其回购协议(AUR)

  18. 18

    Skype安装失败。如何从Ubuntu的软件包管理器安装Skype?

  19. 19

    如何在不安装软件包本身的情况下安装rpm软件包的依赖项?(rhel / fedora)

  20. 20

    如何在不借助软件包管理系统的情况下找出`dash`的版本号?

  21. 21

    如何在不破坏依赖的情况下删除ImageMagick?

  22. 22

    在没有包管理器的情况下安装Python

  23. 23

    Aptitude软件包管理器是否还需要APT安装软件所需的依赖项和存储库?

  24. 24

    如何通过Yum软件包管理器安装我的应用程序?

  25. 25

    如何通过软件包管理器正确安装和使用texlive

  26. 26

    如何使用Nix软件包管理器通过Observer安装Erlang或Elixir?

  27. 27

    如何通过软件包管理器正确安装和使用texlive

  28. 28

    软件包管理器如何安装与您的系统架构兼容的库?

  29. 29

    如何使用软件包管理器工具从存储库在centos 8中安装sshfs

热门标签

归档