我一直在安装要与C程序一起使用的库。有没有一种方法可以保持/ lib文件夹的清洁?我可以使用子目录,链接等进行管理吗?它变得非常混乱,如果我以后想删除它,我不确定是否能够适当地删除特定的库。
/ bin也有同样的问题。
我在家中使用OSX,还在工作中使用CentOS6,在这里我与IT一起安装诸如GCC之类的东西。yum软件包不适用于最新的GCC。
有没有一种方法可以保持/ lib文件夹的清洁?
lib
Unix / Linux类型系统上的目录本质上不是“干净的”。它们是聚合目录,共同存储系统需要的所有库文件。
它们可能包含不再需要的库。决定和处理该问题的适当工具是程序包管理器。
在OS X上,尚不清楚。有很多OS X的软件包管理器,一些内置的和一些第三方的:
可能是用于管理应用程序及其在OS X上的从属库之间的配对的最常用方法是.app
程序包,用户可将其拖入/Applications
或~/Applications
安装,然后拖至垃圾箱以进行卸载。
在Finder中,OS X应用程序包的外观和行为类似于单个文件,但实际上是充满文件的目录,其中可能包含从属库等。(右键单击一个,然后选择“显示软件包内容”进行浏览。)因此,当您通过将应用程序拖到垃圾箱中来“卸载”该应用程序时,不仅要删除主要的可执行文件,还要删除其所有应用程序-特定的库和非代码资产。
基本上,这就是Mac App Store的工作方式。从这个意义上讲,App Store程序将扮演yum
或的角色apt-get
:.app
它下载的文件是托管程序包,与CentOS盒子上的RPM几乎没有什么不同。
我怀疑这令人钦佩地满足了您的期望状态:可执行文件,库和可执行文件的其他依赖关系都保存在它们自己的子目录中,当不再需要时可以轻松删除它们。
还有一些旧pkg*
工具,但是这些工具已经过时了多年。这是打开.dmg
文件并双击时会在其中安装的.pkg
或.mpkg
文件的用途。
这些工具将文件分散在您的系统中,没有简单的第一方方法来卸载它们。因此,存在许多用于卸载OS Xpkg
软件包的第三方工具和手动技术。
因此,如果您的目标是精确管理系统上安装的文件集,则我不建议您使用OS X软件包文件。
OS X有三种主要的第三方软件包管理系统:Fink,MacPorts和Homebrew。
如果应用程序软件包不适合您的用例,建议您使用这些存储库之一中的软件包。如今,自制软件似乎具有最大的吸引力。
这些软件包系统的行为类似于Linux和BSD系统上的软件包管理器,因为您可以从简单的命令行界面安装,升级和删除软件包。
我正在与IT一起安装GCC之类的东西。yum软件包不适用于最新的GCC。
如果您需要最新的GCC,则不应使用CentOS。CentOS的全部要点是,软件包版本从最初的OS版本(通常为6个月或更长时间!)到该版本的生命周期结束之前一直保持稳定。然后,该固定版本将在操作系统的支持生命周期内向后移植修复程序。这是诸如分发之类的获得稳定性的方法之一。
为CentOS 6包装盒获得较新版本的GCC的确只有一种官方方法:升级到CentOS 7。
如果您有充分的理由不理会该建议,则可以构建与操作系统提供的版本并行安装的GCC替代版本。可能最简单的方法是在构建自定义GCC时使用脚本--prefix
选项configure
。例如:
$ ./configure --prefix=/usr/local/gcc-5.3
稍后再说时make install
,生成的二进制文件,库和非代码资产都将放置在该目录前缀下,就像Mac OS X应用程序包的工作方式一样。
完成此操作后,您可以将自定义GCC打包为RPM。这些文档可免费获得,并且在线上有很多示例。或者,您可能会发现其他人已经完成了此操作,而您只能使用他们的RPM。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句