TMB教程中的编译错误是什么? < >我从TMB 复制C++代码

TMB教程中的编译错误是什么? < >我从TMB 复制C++代码,c++,r,rcpp,tmb,C++,R,Rcpp,Tmb,此外,在RStudio编辑器窗口中,我可以看到行Type objective_function旁边有一个十字,我现在已经解决了我的问题,分为两部分。第一个是没有在Windows中安装Rtools。这是: 在从CRAN安装TMB之后,为什么我不能在Windows中构建和运行模型?Windows上的TMB需要Rtools。PATH环境变量应指向Rtools“make”和“gcc”,而不应指向其他“make”或“gcc”实例 第二个问题是,在安装Rtools之后,我仍然找不到编译,尽管我可以从以下命令

此外,在RStudio编辑器窗口中,我可以看到行
Type objective_function旁边有一个十字,我现在已经解决了我的问题,分为两部分。第一个是没有在Windows中安装
Rtools
。这是:

在从CRAN安装TMB之后,为什么我不能在Windows中构建和运行模型?Windows上的TMB需要Rtools。PATH环境变量应指向Rtools“make”和“gcc”,而不应指向其他“make”或“gcc”实例

第二个问题是,在安装
Rtools
之后,我仍然找不到编译,尽管我可以从以下命令行验证它:

我收到的错误是:

> compile('tutorial.cpp')
c:/Rtools/mingw_64/bin/g++  
...
c:/Rtools/mingw_64/bin/g++: not found
这表明路径在某个地方被硬编码。按照使用说明,我发现路径被硬编码在我的
Makeconf
文件中,该文件位于:
“C:\Program Files\R\R-3.3.2\etc\x64\Makeconf”

然后,我注释掉了旧行,并将其替换为正确的路径:

# BINPREF ?= c:/Rtools/mingw_64/bin/
BINPREF ?= C:/RBuildTools/3.4/mingw_64/bin/

在此之后,编译不需要重新启动就可以工作。

我现在已经解决了我的问题,它分为两部分。第一个是没有在Windows中安装
Rtools
。这是:

在从CRAN安装TMB之后,为什么我不能在Windows中构建和运行模型?Windows上的TMB需要Rtools。PATH环境变量应指向Rtools“make”和“gcc”,而不应指向其他“make”或“gcc”实例

第二个问题是,在安装
Rtools
之后,我仍然找不到编译,尽管我可以从以下命令行验证它:

我收到的错误是:

> compile('tutorial.cpp')
c:/Rtools/mingw_64/bin/g++  
...
c:/Rtools/mingw_64/bin/g++: not found
这表明路径在某个地方被硬编码。按照使用说明,我发现路径被硬编码在我的
Makeconf
文件中,该文件位于:
“C:\Program Files\R\R-3.3.2\etc\x64\Makeconf”

然后,我注释掉了旧行,并将其替换为正确的路径:

# BINPREF ?= c:/Rtools/mingw_64/bin/
BINPREF ?= C:/RBuildTools/3.4/mingw_64/bin/

在此之后,编译无需重新启动即可工作。

您是说TMB而不是AMB??
sessionInfo()
的结果会有所帮助。适用于我的x86_64-apple-darwin13.4.0(64位)。也试试
devtools::dr_devtools()
?我是说TMB谢谢。我可能已经在TMB常见问题中找到了解决方案,如果它有效,我将在这里发布,我认为这与我(缺少)的RTools安装有关。(下载100 mb安装需要一段时间)我收到错误:
c:/Rtools/mingw_64/bin/g++:notfound
。然而,Rtools是使用内置规范安装到
c:/RBuildTools
>系统('g++-v')的。COLLECT\u GCC=C:\RBUILD~1\3.4\mingw\u 32\bin\G\uuuuu1.EXE
works。看看:现在。你是说TMB而不是AMB??
sessionInfo()
的结果会有所帮助。适用于我的x86_64-apple-darwin13.4.0(64位)。也试试
devtools::dr_devtools()
?我是说TMB谢谢。我可能已经在TMB常见问题中找到了解决方案,如果它有效,我将在这里发布,我认为这与我(缺少)的RTools安装有关。(下载100 mb安装需要一段时间)我收到错误:
c:/Rtools/mingw_64/bin/g++:notfound
。然而,Rtools是使用内置规范安装到
c:/RBuildTools
>系统('g++-v')的。COLLECT\u GCC=C:\RBUILD~1\3.4\mingw\u 32\bin\G\uuuuu1.EXE
works。查看:现在。
In some cases this PATH might be C:\RBuildTools... Further, we can check if g++ can be really called from R. For example, we can see the version of gcc in R as follows.

> system('g++ -v')
Using built-in specs.
COLLECT_GCC=c:\Rtools\GCC-46~1.3\bin\G__~1.EXE
COLLECT_LTO_WRAPPER=c:/rtools/gcc-46~1.3/bin/../libexec/gcc/i686-w64-mingw32/4.6.3/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: /data/gannet/ripley/Sources/mingw-test3/src/gcc/configure --host=i686-w64-mingw32 --build=x86_64-linux-gnu --target=i686-w64-mingw32 --with-sysroot=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/mingw32 --prefix=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/mingw32 --with-gmp=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/prereq_install --with-mpfr=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/prereq_install --with-mpc=/data/gannet/ripley/Sources/mingw-test3/mingw32mingw32/prereq_install --disable-shared --enable-static --enable-targets=all --enable-languages=c,c++,fortran --enable-libgomp --enable-sjlj-exceptions --enable-fully-dynamic-string --disable-nls --disable-werror --enable-checking=release --disable-win32-registry --disable-rpath --disable-werror CFLAGS='-O2 -mtune=core2 -fomit-frame-pointer' LDFLAGS=
Thread model: win32
gcc version 4.6.3 20111208 (prerelease) (GCC)

> system('where make')
c:\Rtools\bin\make.exe
> compile('tutorial.cpp')
c:/Rtools/mingw_64/bin/g++  
...
c:/Rtools/mingw_64/bin/g++: not found
# BINPREF ?= c:/Rtools/mingw_64/bin/
BINPREF ?= C:/RBuildTools/3.4/mingw_64/bin/