[Rcpp-devel] Rcpp 0.12.3 does not compile properly under Solaris 11.2/sparc Error: Could not find a match for std::wstring::basic_string(const char*, const char*) needed in

Dirk Eddelbuettel edd at debian.org
Tue Feb 9 13:28:20 CET 2016


Hi Dimitar,

On 9 February 2016 at 12:08, Dimitar Vassilev wrote:
| Hello,
| I’m building on top of Oracle R Community edition 3.2, Sun Studio 12.4 and
| Solaris 11.2 some packages for internal use.

The problem is likely the Sun Studio compiler. 'Nobody here' uses that
anymore, and even CRAN / Oxford which tests on Solaris (x86,sparc) uses gcc
per the tests page:

   https://cloud.r-project.org/web/checks/check_results_Rcpp.html

| The error I get when trying to install Rcpp is:
| >  install.packages("dplyr");
| also installing the dependency 'Rcpp'
| 
| trying URL 'http://cran.uni-muenster.de/src/contrib/Rcpp_0.12.3.tar.gz'
| Content type 'application/x-gzip' length 2374320 bytes (2.3 MB)
| ==================================================
| downloaded 2.3 MB
| 
| trying URL 'http://cran.uni-muenster.de/src/contrib/dplyr_0.4.3.tar.gz'
| Content type 'application/x-gzip' length 655997 bytes (640 KB)
| ==================================================
| downloaded 640 KB
| 
| * installing *source* package 'Rcpp' ...
| ** package 'Rcpp' successfully unpacked and MD5 sums checked
| ** libs
| /opt/SunProd/studio12u3/solarisstudio12.3/bin/CC -m64 -I/usr/local/R/include
| -DNDEBUG -I../inst/include/     -KPIC  -g  -c Date.cpp -o Date.o
| "../inst/include/Rcpp/Interrupt.h", line 60: Warning (Anachronism): Using void
| (*)(void*) to initialize extern "C" void(*)(void*).
| "../inst/include/Rcpp/vector/MatrixRow.h", line 43: Error: iterator_traits is
| not a member of std.

We are doing things in C++ which are standard now, but for which Sun Studio
does not seem to have caught up.

Maybe you need to look into installing the gcc toolchain.

Maybe another list reader has a better idea but I fear that is all we can say
here.

Greetings,  Dirk

| "../inst/include/Rcpp/vector/MatrixRow.h", line 43: Error: A declaration does
| not specify a tag or an identifier.
| "../inst/include/Rcpp/vector/MatrixRow.h", line 43: Error: Use ";" to terminate
| declarations.
| "../inst/include/Rcpp/vector/MatrixRow.h", line 43: Error: "}" expected instead
| of "<".
| "../inst/include/Rcpp/vector/MatrixRow.h", line 188: Error: iterator_traits is
| not a member of std.
| "../inst/include/Rcpp/vector/MatrixRow.h", line 188: Error: A declaration does
| not specify a tag or an identifier.
| "../inst/include/Rcpp/vector/MatrixRow.h", line 188: Error: Use ";" to
| terminate declarations.
| "../inst/include/Rcpp/vector/MatrixRow.h", line 188: Error: "}" expected
| instead of "<".
| "../inst/include/Rcpp/String.h", line 67: Warning: enc hides Rcpp::String::enc.
| "../inst/include/Rcpp/String.h", line 81: Warning: enc hides Rcpp::String::enc.
| "../inst/include/Rcpp/String.h", line 95: Warning: enc hides Rcpp::String::enc.
| "../inst/include/Rcpp/String.h", line 107: Warning: enc hides
| Rcpp::String::enc.
| "../inst/include/Rcpp/String.h", line 378: Error: Could not find a match for
| std::wstring::basic_string(const char*, const char*) needed in
| Rcpp::String::operator std::wstring () const.
| 9 Error(s) and 5 Warning(s) detected.
| *** Error code 2
| make: Fatal error: Command failed for target `Date.o'
| ERROR: compilation failed for package 'Rcpp'
| * removing '/usr/local/R/library/Rcpp'
| ERROR: dependency 'Rcpp' is not available for package 'dplyr'
| * removing '/usr/local/R/library/dplyr'
| 
| The downloaded source packages are in
|         '/tmp/RtmpPbHqdD/downloaded_packages'
| Updating HTML index of packages in '.Library'
| Making 'packages.html' ... done
| Warning messages:
| 1: In install.packages("dplyr") :
|   installation of package 'Rcpp' had non-zero exit status
| 2: In install.packages("dplyr") :
|   installation of package 'dplyr' had non-zero exit status
| > q();
| 
| Can you point me what should I do further?
| My .Renviron is as follows 
| TZ=CET 
| TERM=vt220 
| TAR=/usr/bin/tar 
| R_UNZIPCMD=/usr/bin/unzip 
| R_ZIPCMD=/usr/bin/zip 
| MAKE=/usr/bin/make 
| LD_LIBRARY_PATH=/usr/lib:/usr/local/R/lib:/lib:/usr/local/lib 
| PAGER=/usr/bin/less 
| R_BZIPCMD=/usr/bin/bzip2 
| R_GZIPCMD=/usr/bin/gzip 
| I made a symlink so that the compilation works. Unfortunately the R modules
| have hard-coded the path to the compiler.
| -bash-4.1# ls -la /opt/SunProd/studio12u3/solarisstudio12.3/bin 
| lrwxrwxrwx   1 root     root          26 Feb  4 15:22 /opt/SunProd/studio12u3/
| solarisstudio12.3/bin -> /opt/solarisstudio12.4/bin 
| 
| Can someone point me which compiler options/configure arguments are needed so
| that the conversion and compilation is successful?
| Thanks!
| 
| _______________________________________________
| Rcpp-devel mailing list
| Rcpp-devel at lists.r-forge.r-project.org
| https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org


More information about the Rcpp-devel mailing list