r-lib / ragg

Graphic Devices Based on AGG
https://ragg.r-lib.org
Other
172 stars 24 forks source link

Cannot update ragg on Mac OS 12.1 (updated today) on #99

Closed jeremy-allen closed 1 year ago

jeremy-allen commented 2 years ago

First chunk is the output of installing ragg:

> install.packages("ragg")

  There is a binary version available but the source version is later:
     binary source needs_compilation
ragg  1.1.3  1.2.1              TRUE

Do you want to install from sources the package which needs compilation? (Yes/no/cancel) Y
installing the source package ‘ragg’

trying URL 'https://mirrors.nics.utk.edu/cran/src/contrib/ragg_1.2.1.tar.gz'
Content type 'application/x-gzip' length 424650 bytes (414 KB)
==================================================
downloaded 414 KB

* installing *source* package ‘ragg’ ...
** package ‘ragg’ successfully unpacked and MD5 sums checked
** using staged installation
Homebrew 3.3.9
Homebrew/homebrew-core (git revision 5e3a3c4b61f; last commit 2021-12-20)
Homebrew/homebrew-cask (git revision 041047ec39; last commit 2021-12-20)
Using PKG_CFLAGS=-I/usr/local/include -I/usr/local/include/freetype2
Using PKG_LIBS=-L/usr/local/lib -lfreetype -lpng16 -ltiff -lz -ljpeg -lbz2
** libs
clang++ -mmacosx-version-min=10.13 -std=gnu++11 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.1/Resources/library/systemfonts/include' -I'/Library/Frameworks/R.framework/Versions/4.1/Resources/library/textshaping/include' -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk  -I./agg/include -I/usr/local/include -I/usr/local/include/freetype2 -fPIC  -Wall -g -O2  -c capture_dev.cpp -o capture_dev.o
In file included from capture_dev.cpp:1:
In file included from ./ragg.h:6:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/unordered_map:435:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__hash_table:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:321:9: error: no member named 'signbit' in the global namespace
using ::signbit;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:322:9: error: no member named 'fpclassify' in the global namespace
using ::fpclassify;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:323:9: error: no member named 'isfinite' in the global namespace; did you mean 'finite'?
using ::isfinite;
      ~~^
/usr/local/include/math.h:752:12: note: 'finite' declared here
extern int finite(double)
           ^
In file included from capture_dev.cpp:1:
In file included from ./ragg.h:6:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/unordered_map:435:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__hash_table:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:324:9: error: no member named 'isinf' in the global namespace
using ::isinf;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:325:9: error: no member named 'isnan' in the global namespace
using ::isnan;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:326:9: error: no member named 'isnormal' in the global namespace
using ::isnormal;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:327:7: error: no member named 'isgreater' in the global namespace; did you mean '::std::greater'?
using ::isgreater;
      ^~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/functional:742:29: note: '::std::greater' declared here
struct _LIBCPP_TEMPLATE_VIS greater : binary_function<_Tp, _Tp, bool>
                            ^
In file included from capture_dev.cpp:1:
In file included from ./ragg.h:6:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/unordered_map:435:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__hash_table:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:328:7: error: no member named 'isgreaterequal' in the global namespace; did you mean '::std::greater_equal'?
using ::isgreaterequal;
      ^~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/functional:771:29: note: '::std::greater_equal' declared here
struct _LIBCPP_TEMPLATE_VIS greater_equal : binary_function<_Tp, _Tp, bool>
                            ^
In file included from capture_dev.cpp:1:
In file included from ./ragg.h:6:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/unordered_map:435:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__hash_table:18:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:329:9: error: no member named 'isless' in the global namespace
using ::isless;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:330:9: error: no member named 'islessequal' in the global namespace
using ::islessequal;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:331:9: error: no member named 'islessgreater' in the global namespace
using ::islessgreater;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:332:9: error: no member named 'isunordered' in the global namespace
using ::isunordered;
      ~~^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/cmath:333:9: error: no member named 'isunordered' in the global namespace
using ::isunordered;
      ~~^
In file included from capture_dev.cpp:4:
In file included from ./AggDeviceCapture.h:4:
In file included from ./AggDevice.h:5:
In file included from ./text_renderer.h:12:
In file included from ./agg/include/agg_font_freetype.h:24:
In file included from /usr/local/include/freetype2/freetype/freetype.h:24:
In file included from /usr/local/include/freetype2/freetype/config/ftconfig.h:58:
In file included from /usr/local/include/freetype2/freetype/config/mac-support.h:33:
/usr/local/include/AvailabilityMacros.h:246:5: warning: 'TARGET_OS_OSX' is not defined, evaluates to 0 [-Wundef-prefix=TARGET_OS_]
#if TARGET_OS_OSX
    ^
/usr/local/include/AvailabilityMacros.h:248:7: warning: 'TARGET_OS_MACCATALYST' is not defined, evaluates to 0 [-Wundef-prefix=TARGET_OS_]
#elif TARGET_OS_MACCATALYST
      ^
2 warnings and 13 errors generated.
make: *** [capture_dev.o] Error 1
ERROR: compilation failed for package ‘ragg’
* removing ‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library/ragg’
* restoring previous ‘/Library/Frameworks/R.framework/Versions/4.1/Resources/library/ragg’
Warning in install.packages :
  installation of package ‘ragg’ had non-zero exit status

The downloaded source packages are in
    ‘/private/var/folders/lt/0451st4s2gz8pwbv60my_rrc0000gn/T/Rtmp0sO3p5/downloaded_packages’

Next is r session info:

> sessionInfo()
R version 4.1.1 (2021-08-10)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Big Sur 10.16

Matrix products: default
LAPACK: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_4.1.1 tools_4.1.1

Context

Today I successfully updated all packages in RStudio except for ragg. My mac is on OS 12.1. My R session info says running under OS 10.16. I am not sure what that mismatch means or if it is ok.

Before doing all the above I tried following the instructions at https://thecoatlessprofessor.com/programming/cpp/r-compiler-tools-for-rcpp-on-macos/ to restore my R tool chain. I even uninstalled and reinstalled command line tools. I also tried installing ragg while my .R/Makevars existed and without that Makevars file. The contents of that Makevars file is:

# clang: start
CFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
CCFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
CXXFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
CPPFLAGS=-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
# clang: end
hugosiuyh commented 2 years ago

any updates?

thomasp85 commented 1 year ago

Hmm... these errors seems to come from deep within the standard libs. I must admit having a hard time figuring out what is wrong, but my first stab would be to reinstall Freetype with the same toolchain as you want to install ragg with

thomasp85 commented 1 year ago

@jeremy-allen are you still experiencing these issues?

jeremy-allen commented 1 year ago

well, I am installing binaries these days, so I have no issues