编译程序使其独立于系统

时间:2014-05-23 08:15:16

标签: python gcc compilation makefile

我想以一种最大程度地与系统和系统提供的库和程序分开的方式安装(比方说)Python。它应该在它自己的目录中编译,只需要访问系统提供的编译所需的东西。 (这与Julia(参见“源代码下载和编译”部分)从源代码编译的方式类似。但是,我不确定如何一般地执行此操作。运行./configure将创建一个Makefile,专门用于使用系统提供的库,我没有足够的手写我的Makefile经验;特别是对于具有广泛依赖性的程序,并且我需要为一系列编程语言执行此操作。你能否以比手动编写Makefile更有效的方式给我一些好的建议?

(我目前正在运行Arch Linux,但我打算这是一个更通用的问题,即解决方案应该是通用的。)

1 个答案:

答案 0 :(得分:2)

在过去的几周里,我一直在寻找不同的选择,我想出了两个可能的解决方案,我感到满意。

    (1) LXC
    (2) Docker

两者都提供了类似的解决方案,所以我只关注LXC这里。

LXC容器允许我为我想要的任何程序设置一个隔离的环境。我认为解释LXC是什么以及它如何在这里工作没有用,因为StackExchange网站上有很多问题和答案已经这样做了。因此,我将一堆关于StackExchange问​​题的链接与LXC的好答案放在一起。我希望人们会发现这很有用:

(A)StackExchange Sites:

简单而一般的简单介绍LXC是什么:Explain in Plain English what is LXC and for what it is useful [closed]

另一个一般性介绍:What is LXC and how to get started?

类似的问题:Lightweight isolated linux environment

详细解释并总结DockerLXC之间的差异:What does Docker add to lxc-tools (the userspace LXC tools)?

解释Docker / LXC与成熟VM之间的区别:How is Docker different from a normal virtual machine?

(B)外部网站:

LXC的良好总体介绍:Arch Wiki - Linux Containers