我目前正在创建一个使用CMake作为构建系统的C ++库。我还想生成一个安装程序,并能够通过简单地使用find_package()
在另一个项目中使用该库。不必要求根据安装库的目录来设置其他变量(例如,应避免从使用该库的CMakeLists.txt中设置CMAKE_PREFIX_PATH)。
如果将库安装到C:\Program Files (x86)
,则可以立即使用,但是其他路径似乎不起作用。我想这是因为这些其他路径不在用户包注册表中(如here所述)。
我的问题是,如何将已安装的库添加到用户软件包注册表中,或者有更好的选择(在可用性上具有相同的结果)?
我收集到this中所述,可以从CMake / CPack中更新Windows注册表,但是我不确定是否有更正式的方法。
注意:我目前正在使用NSIS作为CPack-Generator,但是切换到另一个生成器(这也像NSIS一样生成可执行文件)不是问题。
此致
莱克斯(Lehks)