![我应该将想要编译的源代码放在哪里?](https://linux22.com/image/1033560/%E6%88%91%E5%BA%94%E8%AF%A5%E5%B0%86%E6%83%B3%E8%A6%81%E7%BC%96%E8%AF%91%E7%9A%84%E6%BA%90%E4%BB%A3%E7%A0%81%E6%94%BE%E5%9C%A8%E5%93%AA%E9%87%8C%EF%BC%9F.png)
情况如下:我下载了一个 tarball。我将其中包含的所有源代码提取到我的主文件夹“/home/zolomon/SourceCode”。但是,当我想要编译它时,我应该将 SourceCode 目录及其内容放在哪里?这重要吗?在大多数情况下,当我安装它时,它会自动安装并将文件放置在正确的位置吗?
在这种情况下,我谈论的是RubyGems。
答案1
目录下的文件/usr/local/
不受 Debian 软件包管理系统的控制。因此,将程序的源代码放在 中是一种很好的做法/usr/local/src/
。例如,您可以将名为“foo.tar”的软件包的文件提取到 目录中/usr/local/src/foo
。编译它们后,将二进制文件放在 中/usr/local/bin/
,将库放在 中/usr/local/lib/
,将配置文件放在 中/usr/local/etc/
。
如果你的程序和/或文件确实必须放在其他目录中,你仍然可以将它们存储在中/usr/local/
,并从所需位置到中的位置建立适当的符号链接/usr/local/
,例如,你可以创建链接
ln -s /usr/local/bin/foo /usr/bin/foo
无论如何,如果您获得了版权允许重新分发的软件包,您应该考虑将其制作成 Debian 软件包,并将其上传到 Debian 系统。成为软件包开发者的指南包含在 Debian 政策手册中。
答案2
是的,你可以将源代码放在任何地方。在安装过程中,它会将所有文件放在正确的位置。就你的情况而言,你的源代码位于/home/zolomon/源代码所以您可以从那里进行编译..那不是问题..