English 中文(简体)
在OSX上,从源代码构建与从磁盘映像安装的利弊是什么?
原标题:What are the pros and cons of building from source versus installing from a Disk Image on OS X?

安装PythonGit源代码,而不是简单地在OS X上使用社区提供的磁盘映像?

Dan Benjamin有一篇关于”使用/usr/local“。但是,考虑到GitDMG安装到/usr/local/GitPythonDMG作为一个框架安装,我不确定Dan列出的从源代码构建的优势在这些情况下是否仍然可以通过安装DMG获得。

显然,使用磁盘映像的一个优点是它要简单得多。然而,它们之间的权衡是否使其值得从源头构建?

问题回答

这里有两个独立的问题:您安装的附加软件应该放在/usr/local还是/usr/local中(简短的回答:由于Dan Benjamin给出的原因,它应该放在/usr/local中),以及您应该从提供的安装程序(磁盘映像)或自己构建附加软件(简短的答案:任何对您最有效的软件,但无论哪种方式,它都应该放在usr/local中)。

我将以Python为例。OS X v10.6.6包含/usr/bin中的python v2.6.1,其框架位于/System/Library/frameworks中。如果你下载了一个新版本的安装程序(目前有v2.7.1和v3.1.3的安装程序),它会把新版本放在/usr/local/bin中,把它的框架放在/Library/frameworks中(/Library与/System/Library的关系与/usr/local与/usr的关系大致相同),这正是你想要的。如果路径设置正确,您将自动使用较新的版本。可能与Python v3不兼容的OTOH系统脚本应该以#开头/usr/bin/python,并继续使用旧的(标准)版本。此外,当OS X v10.6.7发布并包含重新链接的Python v2.6.1版本时,它不会影响您安装的更新。

如果你要自己构建一个新版本的Python,你应该像安装程序一样:把二进制文件放在/usr/local/bin中,把框架放在/Library/frameworks中,原因完全相同。如果你不确定如何做到这一点,你可能应该坚持安装程序——至少对于像Python和Git这样的大型项目,可能会有聪明的人知道如何正确处理这类事情。





相关问题
Correct place to install demostration projects?

With the new Windows 7 restrictions (well, new to Windows Vista anyways), we can no longer install demo projects to %ProgramFilesFolder%OurApplicationdemo since restricted users will not be able to ...

.deb package conffiles problem

I am distributing one of my applications using a .deb package, but have a problem relating to one of the files. The distribution includes a database file which is constantly updated by the app, on a ...

Closing an application using WiX

In creating my WiX installer I have run into an issue when trying to close an application before installing the upgrade. Below is an example of how I am attempting to do this. <util:...

VS 2005 Setup - HKCU

I am trying to fix an existing application that uses a Visual Studio 2005 setup project. We are requiring it to work on limited user accounts for XP, our app is written in C# for .Net 2.0. It writes ...

Do I want Publish or Release Build in VB.net?

I wrote a little (like 40 lines little) Winforms application with VB.net in Visual Studio 2010. Now I ve released the code as a Google Code project. It s easy for a developer to get the source but I d ...

configsource and installer

I have an project csproj, with app.config file, and logging Ent.Library section using configsource attribute. The logging section is in ahother file Configloggingconfiguration.config. I have a ...

热门标签