Thanks for the feedback. I don't remember making such mods, and I am using
the latest Rcpp, but to be safe I reinstalled Rtools43 and R 4.3.0 and the
problem is resolved! Sorry about the false alarm.
Actually, I had two different installations of Rcpp, one under Program
Files\R\R-4.3.0, and
one under the directory pointed to by R_LIBS_USER (c:\w\R\4.3). I think R
now uses some
directory under \Users\name\AppData for user packages by default. There
may have been
a small change with 4.3 in the way
R_LIBS and R_LIBS_USER are handled, in that the latter must be used to get
local packages
NOT to be installed under \Users\name\AppData.
Dominick
On Tue, May 30, 2023 at 3:03?PM Kevin Ushey <kevinushey at gmail.com> wrote:
I'm also not able to reproduce, but I see a different linker invocation:
g++ -shared -static-libgcc -o sourceCpp_3.dll tmp.def file43185fe94049.o
-LC:/rtools43/x86_64-w64-mingw32.static.posix/lib/x64
-LC:/rtools43/x86_64-w64-mingw32.static.posix/lib -LC:/R/R-43~1.0/bin/x64
-lR
In particular, yours is passing both '-std=gnu++17' and '-s'. Have you
modified your R Makevars file, or R installation's etc/Makeconf?
On Tue, May 30, 2023 at 11:43?AM Alexander Ilich <ailich at usf.edu> wrote:
What version of Rcpp are you using? With R 4.3 and Rcpp 1.0.10 I have no
issues.
library(Rcpp)
Rcpp::sourceCpp(code='
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::export()]]
SEXP cpptest(NumericVector v) {
return v;
}'
)
cpptest(1:5)
#> [1] 1 2 3 4 5
R.version
#> _
#> platform x86_64-w64-mingw32
#> arch x86_64
#> os mingw32
#> crt ucrt
#> system x86_64, mingw32
#> status
#> major 4
#> minor 3.0
#> year 2023
#> month 04
#> day 21
#> svn rev 84292
#> language R
#> version.string R version 4.3.0 (2023-04-21 ucrt)
#> nickname Already Tomorrow
packageVersion("Rcpp")
#> [1] '1.0.10'
------------------------------
*From:* Rcpp-devel <rcpp-devel-bounces at lists.r-forge.r-project.org> on
behalf of Dominick Samperi <djsamperi at gmail.com>
*Sent:* Tuesday, May 30, 2023 2:27 PM
*To:* rcpp-devel <Rcpp-devel at r-forge.wu-wien.ac.at>
*Subject:* [Rcpp-devel] Rcpp::sourceCpp Problem with R 4.3 update
Looks like the recent update to R 4.3 broke Rcpp::sourceCpp.
Here is a simple example...
library(Rcpp)
Rcpp::sourceCpp(code='
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::export()]]
SEXP cpptest(NumericVector v) {
return v;
}'
)
cpptest(1:5)
This works without problems under R 4.2.3, but under R 4.3 I get...
using C++ compiler: 'G__~1.EXE (GCC) 12.2.0'
C:\rtools43\x86_64-w64-mingw32.static.posix\bin/ld.exe: internal error:
aborting at ../../binutils-2.40/ld/ldlang.c:527 in compare_section
C:\rtools43\x86_64-w64-mingw32.static.posix\bin/ld.exe: please report
this bug
collect2.exe: error: ld returned 1 exit status
g++ -std=gnu++17 -I"c:/PROGRA~1/R/R-43~1.0/include" -DNDEBUG
-I"C:/PROGRA~1/R/R-43~1.0/library/Rcpp/include"
-I"C:/Users/djsam/AppData/Local/Temp/RtmpKEsaiY/sourceCpp-x86_64-w64-mingw32-1.0.10"
-I"C:/rtools43/x86_64-w64-mingw32.static.posix/include" -O2 -Wall
-mfpmath=sse -msse2 -mstackrealign -c filebb0108a7dbf.cpp -o
filebb0108a7dbf.o
g++ -std=gnu++17 -shared -s -static-libgcc -o sourceCpp_2.dll tmp.def
filebb0108a7dbf.o -LC:/rtools43/x86_64-w64-mingw32.static.posix/lib/x64
-LC:/rtools43/x86_64-w64-mingw32.static.posix/lib
-Lc:/PROGRA~1/R/R-43~1.0/bin/x64 -lR
Error in Rcpp::sourceCpp(code = "\n #include <Rcpp.h>\n using
namespace Rcpp;\n // [[Rcpp::export()]]\n SEXP cpptest(NumericVector v)
{\n return v;\n }") :
Error occurred building shared library.
Thanks,
Dominick
*[EXTERNAL EMAIL]* DO NOT CLICK links or attachments unless you
recognize the sender and know the content is safe.