eddelbuettel / rcpptoml

Rcpp Bindings to C++ parser for TOML files
GNU General Public License v2.0
36 stars 9 forks source link

compilation aborted for parse.cpp #52

Closed cb4github closed 1 year ago

cb4github commented 1 year ago

Trying to build ~ on our campus cluster.

cat /etc/centos-release CentOS Linux release 7.4.1708 (Core)

icpc -v icpc version 19.0.1.144 (gcc version 8.5.0 compatibility)

cat ~/.R/Makevars MAKEFLAGS = -j20

the following attempt to avoid missing CXX17 definition in R config

CXX17 = icpc CXX17STD = -std=c++17 CXX17FLAGS = -fPIC -qopenmp -O3 -ipo -xHost -multiple-processes -flto CXX17PICFLAGS = -fpic

icpc -std=c++17 -I"/share/apps/R/4.1.1-intel/lib64/R/include" -DNDEBUG -I../inst/include -DTOML_ENABLE_FLOAT16=0 -I'/lustre/project/hpcstaff/<user>/R/Library/Rcpp/include' -I/usr/local/include -fpic -fPIC -qopenmp -O3 -ipo -xHost -multiple-processes -flto -c parse.cpp -o parse.o In file included from ../inst/include/toml++/toml.h(45), from parse.cpp(22): ../inst/include/toml++/impl/make_node.h(15): warning #1292: unknown attribute "returns_nonnull" TOML_ATTR(returns_nonnull) ^

In file included from ../inst/include/toml++/toml.h(63), from parse.cpp(22): ../inst/include/toml++/impl/node.h(936): internal error: assertion failed at: "shared/cfe/edgcpfe/class_decl.c", line 3662

                    return do_visit(static_cast<Func&&>(visitor), *this);
                                                                        ^

compilation aborted for parse.cpp (code 4) make: [parse.o] Error 4 make: Waiting for unfinished jobs.... ERROR: compilation failed for package ‘RcppTOML’

Please let me know if I can supply more information. Thanks. Best, CB

eddelbuettel commented 1 year ago

While I am unsure about the specifics of icpc compiler, I suspect you case is a standard case of CentOS 7 being too old. We usually recommend either devtoolset from RH, or picking an older release of RcppTOML that does not require C++17.

You can search the previous (closed) issues. RcppTOML is otherwise fine on current toolchains. From CRAN:

image

So that ball is in your corner I am afraid.

eddelbuettel commented 1 year ago

Closing for lack of follow-up. If you think something needs to be added, please open a new issue, ideally with reproducible examples.