[Rcpp-devel] building shared library error with sourceCpp
Dirk Eddelbuettel
edd at debian.org
Sat Dec 28 02:32:34 CET 2019
Hi Fatima,
On 27 December 2019 at 20:16, Fatima Batool wrote:
| Hi all,
|
| Could anyone please advice what is going on in the following error and how
| can I fix it?
|
| sourceCpp("/Users/fatimabatool/documents/New/Rcodes/trial.cpp")
| clang++ -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include"
| -DNDEBUG
| -I"/Library/Frameworks/R.framework/Versions/3.6/Resources/library/Rcpp/include"
| -I"/Users/fatimabatool/Documents/New/Rcodes" -isysroot
| /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -I/usr/local/include
| -fPIC -Wall -g -O2 -c trial.cpp -o trial.o
| Error in sourceCpp("/Users/fatimabatool/documents/New/Rcodes/trial.cpp") :
| Error 1 occurred building shared library.
| clang: warning: no such sysroot directory:
| '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk' [-Wmissing-sysroot]
| In file included from trial.cpp:9:
| In file included from /Users/fatimabatool/Documents/New/Rcodes/trial.hpp:12:
| /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/stdio.h:108:15:
| fatal error: 'stdio.h' file not found
| #include_next <stdio.h>
| ^~~~~~~~~
| 1 error generated.
| make: *** [trial.o] Error 1
|
|
| I was able to source all .cpp files before system updates. I have recently
| updated my MacOS to Catalina (10.15.2) and using Xcode 11.3. I am working
| in R Action of the Toe. Using version 1.0.3 of Rcpp. I have clang version
| 4.0.1.
|
| I have Library/Developer but no ../CommandLineTools/SDKs/MAcOSX.sdk
| subdirectories exist there.
Not a macOS user myself but please consider
a) this older issue
https://github.com/RcppCore/Rcpp/issues/922
b) this resource page for macOS it mentions
https://thecoatlessprofessor.com/programming/cpp/r-compiler-tools-for-rcpp-on-macos/
c) pertinent entries in the Rcpp FAQ
We have seen this '#include_next <somefile.h>' error before, and I believe it
means your installation is imcomplete. Sadly, on macOS it seems to require
quite a few steps to get everything set up...
As always, a good simple test is to see if
Rcpp::evalCpp("2 + 2")
comes back without error and shows the expected answer...
Dirk
--
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org
More information about the Rcpp-devel
mailing list