[Rcpp-devel] C++11 in Windows R package

Matteo Fasiolo matteo.fasiolo at gmail.com
Thu May 29 17:20:36 CEST 2014


Hi Dirk,

 adding

PKG_CPPFLAGS = -DWIN32

solved the problem, but I got another bunch of errors (see below).

Maybe these are unsupported C++11 features?

I think I was getting similar errors when I was compiling my package in
Linux, but they were solved after installing gcc 4.8.

Matteo

* installing *source* package 'anRpackage' ...
** libs

*** arch - i386
g++  -std=c++0x -I"D:/RCompile/recent/R-3.1.0/include" -DNDEBUG
-DWIN32   -I"d:/RCompile/CRANpkg/lib/3.1/Rcpp/include"
-I"d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include"
-I"d:/Rcompile/CRANpkg/extralibs215/local215/include"     -O2 -Wall
-mtune=core2 -c RcppExports.cpp -o RcppExports.o
In file included from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo:48:0,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadilloForward.h:37,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadillo.h:30,
                 from RcppExports.cpp:4:
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/compiler_setup.hpp:159:110:
note: #pragma message: Your C++ compiler is in C++11 mode, but it has
incomplete support for C++11 features
In file included from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo:172:0,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadilloForward.h:37,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadillo.h:30,
                 from RcppExports.cpp:4:
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_bones.hpp:30:5:
error: 'steady_clock' in namespace 'std::chrono' does not name a type
In file included from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo:510:0,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadilloForward.h:37,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadillo.h:30,
                 from RcppExports.cpp:4:
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:
In member function 'void arma::wall_clock::tic()':
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:38:5:
error: 'chrono_time1' was not declared in this scope
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:38:33:
error: 'std::chrono::steady_clock' has not been declared
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:
In member function 'double arma::wall_clock::toc()':
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:66:13:
error: 'steady_clock' in namespace 'std::chrono' does not name a type
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:70:85:
error: 'chrono_time2' was not declared in this scope
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:70:100:
error: 'chrono_time1' was not declared in this scope
make: *** [RcppExports.o] Error 1
Warning: running command 'make -f "Makevars.win" -f
"D:/RCompile/recent/R-3.1.0/etc/i386/Makeconf" -f
"D:/RCompile/recent/R-3.1.0/etc/i386/Makevars.site" -f
"D:/RCompile/recent/R-3.1.0/share/make/winshlib.mk" CXX='$(CXX1X)
$(CXX1XSTD)' CXXFLAGS='$(CXX1XFLAGS)' CXXPICFLAGS='$(CXX1XPICFLAGS)'
SHLIB_LDFLAGS='$(SHLIB_CXX1XLDFLAGS)' SHLIB_LD='$(SHLIB_CXX1XLD)'
SHLIB="anRpackage.dll" OBJECTS="RcppExports.o rcpparma_hello_world.o"'
had status 2
g++  -std=c++0x -I"D:/RCompile/recent/R-3.1.0/include" -DNDEBUG
-DWIN32   -I"d:/RCompile/CRANpkg/lib/3.1/Rcpp/include"
-I"d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include"
-I"d:/Rcompile/CRANpkg/extralibs215/local215/include"     -O2 -Wall
-mtune=core2 -c RcppExports.cpp -o RcppExports.o
In file included from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo:48:0,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadilloForward.h:37,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadillo.h:30,
                 from RcppExports.cpp:4:
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/compiler_setup.hpp:159:110:
note: #pragma message: Your C++ compiler is in C++11 mode, but it has
incomplete support for C++11 features
In file included from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo:172:0,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadilloForward.h:37,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadillo.h:30,
                 from RcppExports.cpp:4:
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_bones.hpp:30:5:
error: 'steady_clock' in namespace 'std::chrono' does not name a type
In file included from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo:510:0,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadilloForward.h:37,
                 from
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/RcppArmadillo.h:30,
                 from RcppExports.cpp:4:
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:
In member function 'void arma::wall_clock::tic()':
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:38:5:
error: 'chrono_time1' was not declared in this scope
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:38:33:
error: 'std::chrono::steady_clock' has not been declared
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:
In member function 'double arma::wall_clock::toc()':
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:66:13:
error: 'steady_clock' in namespace 'std::chrono' does not name a type
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:70:85:
error: 'chrono_time2' was not declared in this scope
d:/RCompile/CRANpkg/lib/3.1/RcppArmadillo/include/armadillo_bits/wall_clock_meat.hpp:70:100:
error: 'chrono_time1' was not declared in this scope
make: *** [RcppExports.o] Error 1
Warning: running command 'make -f "Makevars.win" -f
"D:/RCompile/recent/R-3.1.0/etc/i386/Makeconf" -f
"D:/RCompile/recent/R-3.1.0/etc/i386/Makevars.site" -f
"D:/RCompile/recent/R-3.1.0/share/make/winshlib.mk" CXX='$(CXX1X)
$(CXX1XSTD)' CXXFLAGS='$(CXX1XFLAGS)' CXXPICFLAGS='$(CXX1XPICFLAGS)'
SHLIB_LDFLAGS='$(SHLIB_CXX1XLDFLAGS)' SHLIB_LD='$(SHLIB_CXX1XLD)'
SHLIB="anRpackage.dll" OBJECTS="RcppExports.o rcpparma_hello_world.o"
symbols.rds' had status 2
ERROR: compilation failed for package 'anRpackage'
* removing 'd:/RCompile/CRANguest/R-release/lib/anRpackage'
* restoring previous 'd:/RCompile/CRANguest/R-release/lib/anRpackage'



On Thu, May 29, 2014 at 4:15 PM, Dirk Eddelbuettel <edd at debian.org> wrote:

>
> Would you mind resending what you just me to the list?
>
> Dirk
>
> --
> Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20140529/0299fc8b/attachment-0001.html>


More information about the Rcpp-devel mailing list