带有Rcpp和CMake的R软件包(Windows) 我使用CMake作为构建工具,用Rcpp创建C++共享库。要在调用R CMD INSTALL命令时触发CMake,顶部的configure脚本需要如下所示: rm -rf _builds cmake -H. -B_builds cmake --build _builds ...

带有Rcpp和CMake的R软件包(Windows) 我使用CMake作为构建工具,用Rcpp创建C++共享库。要在调用R CMD INSTALL命令时触发CMake,顶部的configure脚本需要如下所示: rm -rf _builds cmake -H. -B_builds cmake --build _builds ...,r,cmake,rcpp,R,Cmake,Rcpp,这种方法在Linux和Mac操作系统上运行良好,但在Windows机器上不起作用 在配置中需要什么版本的CMake: windows本机cmake 西格温·克马克 我需要使用什么发电机: Unix Makefiles(cygwin) MSYS Makefiles(本机) MinGW生成文件(本机) SSCCE 将所有Makefile文件(Makefile.win用于windows)保留为空: 将CMake生成指令放入configure(configure.winfor windows

这种方法在Linux和Mac操作系统上运行良好,但在Windows机器上不起作用

配置中需要什么版本的CMake:

  • windows本机cmake
  • 西格温·克马克
我需要使用什么发电机:

  • Unix Makefiles
(cygwin)
  • MSYS Makefiles
    (本机)
  • MinGW生成文件
    (本机)
  • SSCCE

    将所有
    Makefile
    文件(
    Makefile.win
    用于windows)保留为空:

    将CMake生成指令放入
    configure
    configure.win
    for windows):

    这种方法对我来说在Linux、Mac和Windows上非常有效(原生
    cmake
    with
    visualstudio
    generator)。请注意,它可能与不兼容,需要对windows build进行调优以编译不同的体系结构(请参见
    R\u ARCH
    ),但它可以在本地工作并满足我的需要


    我将在“您的问题”下对此进行归档,因为R(和Rcpp)提供了一个健壮、经过测试、有文档记录且基本上无错误的工具链。如果您需要另一个,那么您需要构建它。根据定义,您的外部链接不是“自包含的”。R build工具链支持在以x或x结尾的平台上调用可执行脚本
    configure
    。在“打瞌睡”时,您需要自己。尝试一下,它将打破Windows上的双拱形构建。让我们来看看。
    all:
    
    cmake -H. -B_builds
    cmake --build _builds