在 Linux 上,我将 CMake 配置为在 bin
文件夹中安装输出。
然后无论当前目录是什么,我都可以在终端中调用可执行文件。
我做到了:
Install(TARGETS ... DESTINATION bin)
在 Windows 上,它不起作用。它告诉我:
'whatever' is not recognized as an internal or external command, operable program or batch file.
Windows 的等效目标是什么?
最佳答案
与 Linux 不同,Windows 没有用于安装可运行文件的公共(public)目录。
如果您的项目包含可运行文件,您可以将它们放在项目安装前缀下的任何位置(看起来像 C:/Program Files/<Package name>
):您可以将可运行文件直接放在安装前缀下或 bin/
中子目录或其他任何内容。
要使文件仅通过名称即可运行,您需要将包含该文件的目录添加到 PATH 环境变量。
我不确定 CMake 是否支持在普通安装 CMake 项目时自动修改 PATH 变量。
但是,当使用 CPack 打包您的项目时, some generators允许您创建具有自动 PATH 更新的项目安装程序。例如。对于 NSIS 生成器,请参阅 CPACK_NSIS_MODIFY_PATH 和 CPACK_NSIS_EXECUTABLES_DIRECTORY 变量。
关于windows - Windows 的 CMake 安装目标 bin 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47697492/