我想发布一个小软件包,但我不确定如何构建发布目录。
是否有Linux标准指定如何在我的发布文件夹中命名每个目录以及放入哪些目录(或不放入)?
例如,我希望编译的库位于<div class="outer">
<div class="container">
<p>The quick brown fox jumps over the lazy dog.</p>
</div>
</div>
和/lib
中的头文件 - 等等。我在发布中有一些其他文件,我不清楚放置它们的目录。
答案 0 :(得分:2)
是否有Linux标准指定如何命名每个目录?
或多或少,请阅读File Hierarchy Standard(另请参阅this和FHS&amp; LSB wikipages)。另请参见hier(7)手册页。
但它描述了系统范围的路径。请注意,库通常会将/usr/lib/
(或/usr/lib/x86_64-linux-gnu/
...)和头文件放入/usr/include/
。对于package manager之外且未知的软件,您将/usr/local/lib/
用于库,/usr/local/include/
用于标题。还要注意pkg-config。
另请阅读--prefix
脚本中的autoconf和/usr/local/
参数(默认为configure
)。
另外,请考虑打包您的软件(例如,在Ubuntu或Debian上打包为.deb
packages)。这也意味着描述依赖关系。
另请参阅GNU stow。
如果您的软件包是free software(我希望它是,然后发布其源代码,可能在github),您可能会从分发包装商处获得帮助。你应该研究一下类似的自由软件是如何处理它的。