gpt4 book ai didi

linux - Linux/Unix 'make install' 应该由什么组成?

转载 作者:IT王子 更新时间:2023-10-29 00:15:20 27 4
gpt4 key购买 nike

我已经编写了一个 C++ 程序(命令行、可移植代码),我正试图在发布 Windows 版本的同时发布 Linux 版本。我写了一个 makefile 如下:

ayane: *.cpp *.h    g++ -Wno-write-strings -oayane *.cpp

到目前为止足够简单;但我知道通常有第二步,进行安装。因此,当我将 install: target 放入 makefile 中时...应该与什么命令相关联? (如果可能的话,我希望它能在所有 Unix 系统和 Linux 上运行。)

最佳答案

安装

一个不那么琐碎的安装程序会将一些东西复制到位,首先确保存在适当的路径(使用 mkdir -p 或类似的)。通常是这样的:

  • 可执行文件进入 $INSTALL_PATH/bin
  • 任何为外部消费构建的库都在 $INSTALL_PATH/lib$INSTALL_PATH/lib/yourappname
  • 手册页放在 $INSTALL_PATH/share/man/man1 中,如果合适,可能还有其他部分
  • 其他文档进入 $INSTALL_PATH/share/yourappname
  • 默认配置文件在 $INSTALL_PATH/etc/yourappname
  • $INSTALL_PATH/include/yourappname
  • 中其他链接的 header

安装路径

INSTALL_PATH 是构建系统的输入,通常默认为 /usr/local。这使您的用户可以灵活地在他们的 $HOME 下安装,而无需提升权限。

在最简单的情况下只需使用

INSTALL_PATH?=/usr/local

在 makefile 的顶部。然后用户可以通过在他们的 shell 中设置环境变量来覆盖它。

卸载

您偶尔还会看到构建 list 以帮助卸载的make install。 list 甚至可以写成脚本来完成这项工作。

另一种方法是使用 make uninstall 来查找 make install 放置的内容,如果存在则将其删除。

关于linux - Linux/Unix 'make install' 应该由什么组成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/528399/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com