Closed tony352 closed 3 years ago
"Of course." All CRAN packages will.
Now, you have access to such a machine, I don't. So I would rely on you to lead some debugging. (Also, as a matter of protocol around here, attaching a docx file is pretty bad. Posting logs somewhere would be better.) Also you may want to check with Eigen project upstream -- they tend to push hardware hard and this version may not be ready. See https://eigen.tuxfamily.org/
That's great news--thank you! I'm happy to help in an away I can on debugging--I'm not a developer, but let me know what I can do and I'll do my best to make it happen.
Thank you also for letting me know re the docx file. My apologies. I did this because, when I raised a similar request for the EpiNow2 package, the length of the file was too long for Github to accept. I tried using RTF but this wasn't accepted and I saw that Docx was.
I'll be sure to post any logs directly going future--learning as I go!
On Tue, 23 Feb 2021 at 22:57, Dirk Eddelbuettel notifications@github.com wrote:
"Of course." All CRAN packages will.
Now, you have access, I don't. So I would rely on you to lead some debugging. (Also, as a matter of protocol around, attaching a docx file is pretty bad. Posting logs somewhere would be better.)
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-784572746, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK3UQ5XXMYWFPBAIUSTTAQXE7ANCNFSM4YDLNY2Q .
Yes, I realized that of course too -- CRAN makes us keep (Rcpp)Eigen (and BH) very verbose which is irritating. If you know how you can silence it some -- file ~/.R/Makevars
can take user-local flags like -Wno-deprecated-declarations -Wno-parentheses -Wno-ignored-attributes -Wno-unused-function
which you could assign to CXX11FLAGS
. If this seems too foreign don't worry.
Hi Dirk,
I'm not sure if this is the right syntax, but I've added the text below to the end of the Makevars file: CXX11FLAGS = -Wno-deprecated-declarations -Wno-parentheses -Wno-ignored-attributes -Wno-unused-function
Let me know if that's not right and I'll amend accordingly.
I tried compiling RccpEigen and below is the log that I got (which looks like the previous log, meaning I probably got the CXX11FLAGS wrong in Makevars.
If those are the right flags, let me know what other tests you want me to do and I'll send you the output.
Thank you!
Stripped from your comment, included below:
Thanks @Enchufa2 for cleaning that up. A lot of #pragma
comments, maybe a conditional directive is not fully right yet.
But the killer is at the end (and I removed some of the spurious empty lines):
ld: warning: directory not found for option '-L/opt/R/arm64/gfortran/lib'
ld: library not found for -lgfortran
clang: *error: *linker command failed with exit code 1 (use -v to see
invocation)
make: *** [RcppEigen.so] Error 1
ERROR: compilation failed for package ‘RcppEigen’
You simply do not have your system ready. No RcppEigen without Fortran no matter how fancy or new the cpu.
Wow, that's odd. I definitely installed GFortran from here: https://github.com/fxcoudert/gfortran-for-macOS/releases
Here's the version installed on my set:
GNU Fortran (GCC) 11.0.0 20201205 (experimental)
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
I've also successfully installed RcppParallel -- does it also use Fortran to compile?
On Wed, 24 Feb 2021 at 13:12, Dirk Eddelbuettel notifications@github.com wrote:
Thanks @Enchufa2 https://github.com/Enchufa2 for cleaning that up. A lot of #pragma comments, maybe a conditional directive is not fully right yet.
But the killer is at the end (and I removed some of the spurious empty lines):
ld: warning: directory not found for option '-L/opt/R/arm64/gfortran/lib'
ld: library not found for -lgfortran
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
make: *** [RcppEigen.so] Error 1
ERROR: compilation failed for package ‘RcppEigen’
You simply do not have your system ready. No RcppEigen without Fortran no matter how fancy or new the cpu.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-785064836, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK2Q7G5ZXQFMZBK6O3DTAT3MBANCNFSM4YDLNY2Q .
Please debug locally. As we mentioned, we do not have the type of machine you have issues on. RcppEigen has a pretty vanilla src/Makevars
with essentially just
PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
so it seems your R house is not in order. Maybe r-sig-mac has answers -- Fortran doesn't even work out of the box for on Intel chips os :man_shrugging: over here...
Thank you--yes, I'll check with r-sig-mac and see if they might also point me in the right direction.
For Makevars, can I just check the syntax I need to use to reduce the verbose descriptions? You noted
If you know how you can silence it some -- file ~/.R/Makevars can take user-local flags like -Wno-deprecated-declarations -Wno-parentheses -Wno-ignored-attributes -Wno-unused-function which you could assign to CXX11FLAGS.
I wasn't quite sure how to input this, so I added the following line:
CXX11FLAGS = -Wno-deprecated-declarations -Wno-parentheses -Wno-ignored-attributes -Wno-unused-function
Is that right?
then do I also add:
PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
Thank you again--I'll check with r-sig-mac as noted but just want to get these parts right first.
On Wed, 24 Feb 2021 at 13:44, Dirk Eddelbuettel notifications@github.com wrote:
Please debug locally. As we mentioned, we do not have the type of machine you have issues on. RcppEigen has a pretty vanilla src/Makevars with essentially just
PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
so it seems your R house is not in order. Maybe r-sig-mac has answers -- Fortran doesn't even work out of the box for on Intel chips os 🤷♂️ over here...
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-785084712, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK4SNJ6HJBS2QXHRVM3TAT7DRANCNFSM4YDLNY2Q .
That has been covered quite a few times (but takes a few paragraphs each time) so maybe you could start here
Thank you--I'll go there to get this set up right :).
On Wed, 24 Feb 2021 at 14:07, Dirk Eddelbuettel notifications@github.com wrote:
That has been covered quite a few times (but takes a few paragraphs each time) so maybe you could start here
- https://stackoverflow.com/questions/22555526/set-cxxflags-in-rcpp-makevars/22557294#22557294
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-785099752, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK6KVLFRDTNT6A3VQ6TTAUBZ3ANCNFSM4YDLNY2Q .
Excellent. And don't feel shy hitting us with questions.
One strategy I always like is to ensure similar-but-simpler packages work. RcppArmadillo comes to mind for also linking with Fortran.
Thank you Dirk! Again, apologies for the very sharp learning curve on my part--but I'll keep digging and keep you all posted when I get a bit further. I'll also try RcppArmadillo to see how that goes.
The Makevars guidance on stackoverflow was helpful--I see that, for the CXX11FLAGS, I was basically on the right track but needed to use "+=" instead of "=", so that these settings supersede others (e.g., that might have been set in individual packages).
I will get there :)
On Wed, 24 Feb 2021 at 14:16, Dirk Eddelbuettel notifications@github.com wrote:
Excellent. And don't feel shy hitting us with questions.
One strategy I always like is to ensure similar-but-simpler packages work. RcppArmadillo comes to mind for also linking with Fortran.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-785105507, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK6ZRK324LOL3LXSLALTAUC3JANCNFSM4YDLNY2Q .
Technically from R itself in its $RHOME/etc/Makeconf
-- those values come first, then your and yes the +=
is important -- good catch. The package comes last in a 'new namespace' using PKG_*
variables. Then it all gets glued together in a Makefile
made by R from these pieces.
Hi Dirk,
Good news--I managed to get it to compile! I took a bit of a crude approach to doing it--certainly not the 'right' way--but it worked, and the library loaded in my development version of R.
As you noted, the problem was the path for the Fortran library. When I installed GFortran, it installed into the following path: /usr/local/gfortran
However, the installer was looking in the following path:
ld: warning: directory not found for option '-L/opt/R/arm64/gfortran/lib'
I'm not sure what "-L" refers to here, but I gathered it was: /opt/R/arm64/gfortran
So I simply copied my gfortran folder to /opt/R/arm64/gfortran.
It still gives the following warning, but I'm not sure which 'lib' files it is looking for:
ld: warning: directory not found for option '-L/opt/R/arm64/lib'
The question for me now is where the configuration file is that's going to (what I believe is) /opt/R/arm64. (On the other end, the GFortran installer also doesn't give me a choice of folder--it simply installs in the /usr/local folder).
I'm guessing it's the configuration file for the package that you referred to--so I will look into that next for my own learning. The good news is, though, that, with the Fortran path, RcppEigen compiled :).
Thank you!
** package ‘RcppEigen’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
clang++ -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I'/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include' -I/opt/R/arm64/include -I../inst/include -fPIC -falign-functions=64 -Wall -g -O2 -c RcppEigen.cpp -o RcppEigen.o
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:1:
In file included from ../inst/include/Eigen/Core:540:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:2:
In file included from ../inst/include/Eigen/LU:47:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:3:
In file included from ../inst/include/Eigen/Cholesky:12:
In file included from ../inst/include/Eigen/Jacobi:29:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:3:
In file included from ../inst/include/Eigen/Cholesky:43:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:4:
In file included from ../inst/include/Eigen/QR:15:
In file included from ../inst/include/Eigen/Householder:27:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:4:
In file included from ../inst/include/Eigen/QR:48:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:5:
In file included from ../inst/include/Eigen/SVD:48:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:6:
In file included from ../inst/include/Eigen/Geometry:58:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:7:
In file included from ../inst/include/Eigen/Eigenvalues:58:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:26:
In file included from ../inst/include/Eigen/SparseCore:66:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:27:
In file included from ../inst/include/Eigen/OrderingMethods:71:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:29:
In file included from ../inst/include/Eigen/SparseCholesky:43:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:32:
In file included from ../inst/include/Eigen/SparseQR:34:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:33:
In file included from ../inst/include/Eigen/IterativeLinearSolvers:46:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:32:
In file included from ../inst/include/Eigen/CholmodSupport:45:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:35:
In file included from ../inst/include/unsupported/Eigen/KroneckerProduct:34:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:39:
In file included from ../inst/include/unsupported/Eigen/Polynomials:135:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:40:
In file included from ../inst/include/unsupported/Eigen/SparseExtra:51:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppEigen.cpp:22:
In file included from ../inst/include/RcppEigen.h:26:
In file included from /Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include/Rcpp.h:57:
*/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include/Rcpp/DataFrame.h:136:18: *warning:
unused variable 'data' [-Wunused-variable]*
SEXP data = Parent::get__();
^*
19 warnings generated.
clang++ -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I'/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include' -I/opt/R/arm64/include -I../inst/include -fPIC -falign-functions=64 -Wall -g -O2 -c RcppExports.cpp -o RcppExports.o
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:1:
In file included from ../inst/include/Eigen/Core:540:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:2:
In file included from ../inst/include/Eigen/LU:47:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:3:
In file included from ../inst/include/Eigen/Cholesky:12:
In file included from ../inst/include/Eigen/Jacobi:29:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:3:
In file included from ../inst/include/Eigen/Cholesky:43:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:4:
In file included from ../inst/include/Eigen/QR:15:
In file included from ../inst/include/Eigen/Householder:27:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:4:
In file included from ../inst/include/Eigen/QR:48:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:5:
In file included from ../inst/include/Eigen/SVD:48:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:6:
In file included from ../inst/include/Eigen/Geometry:58:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:7:
In file included from ../inst/include/Eigen/Eigenvalues:58:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:26:
In file included from ../inst/include/Eigen/SparseCore:66:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:27:
In file included from ../inst/include/Eigen/OrderingMethods:71:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:29:
In file included from ../inst/include/Eigen/SparseCholesky:43:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:32:
In file included from ../inst/include/Eigen/SparseQR:34:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:33:
In file included from ../inst/include/Eigen/IterativeLinearSolvers:46:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:32:
In file included from ../inst/include/Eigen/CholmodSupport:45:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:35:
In file included from ../inst/include/unsupported/Eigen/KroneckerProduct:34:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:39:
In file included from ../inst/include/unsupported/Eigen/Polynomials:135:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:40:
In file included from ../inst/include/unsupported/Eigen/SparseExtra:51:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from RcppExports.cpp:4:
In file included from ./../inst/include/RcppEigen.h:26:
In file included from /Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include/Rcpp.h:57:
*/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include/Rcpp/DataFrame.h:136:18: *warning:
unused variable 'data' [-Wunused-variable]*
SEXP data = Parent::get__();
^*
19 warnings generated.
clang++ -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I'/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include' -I/opt/R/arm64/include -I../inst/include -fPIC -falign-functions=64 -Wall -g -O2 -c fastLm.cpp -o fastLm.o
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:1:
In file included from ../inst/include/Eigen/Core:540:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:2:
In file included from ../inst/include/Eigen/LU:47:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:3:
In file included from ../inst/include/Eigen/Cholesky:12:
In file included from ../inst/include/Eigen/Jacobi:29:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:3:
In file included from ../inst/include/Eigen/Cholesky:43:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:4:
In file included from ../inst/include/Eigen/QR:15:
In file included from ../inst/include/Eigen/Householder:27:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:4:
In file included from ../inst/include/Eigen/QR:48:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:5:
In file included from ../inst/include/Eigen/SVD:48:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:6:
In file included from ../inst/include/Eigen/Geometry:58:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:30:
In file included from ../inst/include/Eigen/Dense:7:
In file included from ../inst/include/Eigen/Eigenvalues:58:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:26:
In file included from ../inst/include/Eigen/SparseCore:66:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:27:
In file included from ../inst/include/Eigen/OrderingMethods:71:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:29:
In file included from ../inst/include/Eigen/SparseCholesky:43:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:32:
In file included from ../inst/include/Eigen/SparseQR:34:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:31:
In file included from ../inst/include/Eigen/Sparse:33:
In file included from ../inst/include/Eigen/IterativeLinearSolvers:46:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:32:
In file included from ../inst/include/Eigen/CholmodSupport:45:
../inst/include/Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:35:
In file included from ../inst/include/unsupported/Eigen/KroneckerProduct:34:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:39:
In file included from ../inst/include/unsupported/Eigen/Polynomials:135:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:25:
In file included from ../inst/include/RcppEigenForward.h:40:
In file included from ../inst/include/unsupported/Eigen/SparseExtra:51:
*../inst/include/unsupported/Eigen/../../Eigen/src/Core/util/ReenableStupidWarnings.h:14:30: *warning:
pragma diagnostic pop could not pop, no matching push [-Wunknown-pragmas]*
^*
In file included from fastLm.cpp:23:
In file included from ./fastLm.h:25:
In file included from ../inst/include/RcppEigen.h:26:
In file included from /Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include/Rcpp.h:57:
*/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include/Rcpp/DataFrame.h:136:18: *warning:
unused variable 'data' [-Wunused-variable]*
SEXP data = Parent::get__();
^*
19 warnings generated.
clang -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I'/Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/Rcpp/include' -I/opt/R/arm64/include -fPIC -falign-functions=64 -Wall -g -O2 -c init.c -o init.o
clang++ -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/opt/R/arm64/lib -o RcppEigen.so RcppEigen.o RcppExports.o fastLm.o init.o -L/Library/Frameworks/R.framework/Resources/lib -lRlapack -L/Library/Frameworks/R.framework/Resources/lib -lRblas -L/opt/R/arm64/gfortran/lib/gcc/aarch64-apple-darwin20.2.0/11.0.0 -L/opt/R/arm64/gfortran/lib -lgfortran -lemutls_w -lm -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
ld: warning: directory not found for option '-L/opt/R/arm64/lib'
installing to /Library/Frameworks/R.framework/Versions/4.1-arm64/Resources/library/00LOCK-RcppEigen/00new/RcppEigen/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
The downloaded source packages are in
‘/private/var/folders/kt/wk55fndj0d7ch9gzjzy1f1mw0000gn/T/RtmpYnBHQm/downloaded_packages’
library(RcppEigen)
On Wed, 24 Feb 2021 at 14:53, Dirk Eddelbuettel notifications@github.com wrote:
Technically from R itself in its $RHOME/etc/Makeconf -- those values come first, then your and yes the += is important -- good catch. The package comes last in a 'new namespace' using PKG_* variables. Then it all gets glued together in a Makefile made by R from these pieces.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-785130841, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRKZR2UV3ZNDXZVKIMZLTAUHGJANCNFSM4YDLNY2Q .
The Fortran library location is "global" for R and applies to all packages. If I remember my (very casual as a non-macOS user) reading of macOS error reports / tips then I think one is supposed to nail that down in the very file I coincidentally already pointed you to -- ~/.R/Makevars
.
But yes, the very very good news -- thanks to your diligent work -- is that RcppEigen per se has zero issues with the M1.
Right, I can set it up in Makevars--that's good to know!
Thank you for bearing with me -- so glad to say all is working! In fact, Im running a query now with EpiNow2 to calculate Rt levels on the M1. So far so good!
On Wed, 24 Feb 2021 at 17:15, Dirk Eddelbuettel notifications@github.com wrote:
The Fortran library location is "global" for R and applies to all packages. If I remember my (very casual as a non-macOS user) reading of macOS error reports / tips then I think one is supposed to nail that down in the very file I coincidentally already pointed you to -- ~/.R/Makevars.
But yes, the very very good news -- thanks to your diligent work -- is that RcppEigen per se has zero issues with the M1.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-785233613, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK2XK22PXTE54UHPLP3TAUX4DANCNFSM4YDLNY2Q .
@tony352 Could you please post your Makevars file here? I'm having the same issue, and setting FLIBS=-L/usr/local/gfortran/lib
doesn't seem to work.
Hi Andrew, here are the contents of my Makevars file:
CC=clang CXX=clang++ CXX11FLAGS += -Wno-deprecated-declarations -Wno-parentheses -Wno-ignored-attributes -Wno-unused-function
I 'fixed' my problem with a really crude approach--my Fortran compiler (GFortran) installed into a folder that R didn't expect, and so I copied the gfortran folder into the location it searched for when trying to compile.
GFortran installed in the following path: /usr/local/gfortran
I copied it into this path: /opt/R/arm64/gfortran
I then tried to compile again (quitting/restarting R and the Terminal for good measure) and that worked.
I hope this helps--let me know if you need anything further and I'll do my best to help!
Tony
On Sat, 13 Mar 2021 at 00:00, Andrew Ellis @.***> wrote:
@tony352 https://github.com/tony352 Could you please post your Makevars file here? I'm having the same issue, and setting FLIBS=-L/usr/local/gfortran/lib doesn't seem to work.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/RcppCore/RcppEigen/issues/96#issuecomment-797820663, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQRDRK3FNMURIDJNLSDJL6TTDKTJ3ANCNFSM4YDLNY2Q .
I am (belatedly) going to close this as the package works on every platform tested by CRAN, including arm64:
RcppEigen ARM64 installation log.docx
Hi, I have a MacBook Pro with Apple Silicon, and am trying to compile the RcppEigen package using the development version of R v4.1.0 for ARM64. I'm planning to use this for analytics for the COVID19 pandemic using the EpiNow2 package, which uses RcppEigen among other packages.
I was able to successfully compile the RcppParallel package but got errors when compiling the RcppEigen package. Are there plans to adapt this to work with the new Macs?
I've attached a log of the installation for your reference, I case it's helpful.