Skip to content

EMEWS installation of R with graphics support

Notifications You must be signed in to change notification settings

emews/emews-r-x

Repository files navigation

emews-r-x

OBSOLETE: This has been merged back to emews-r-base !

A simple Anaconda package with unmodified R from SVN for use with EMEWS.

Only necessary for platform osx-arm64, due to a memory error in the official Anaconda release. Still a problem as of 2024-12-12.

See the projects for emews-r and emews-rinside.

Remember to use capabilities() to check features.

Using R from SVN r85879 .

User installation

The end user should be able to simply:

$ conda install -c swift-t emews-r-x

This will install R in the given Anaconda.

This should default to the latest version (see below).

The user can then run:

$ ./install-apps.sh

to install the "application" libraries farver and ggplot2.

Versions for X and other features

Our original emews-r was built with:

--enable-R-shlib
--disable-java
--without-readline
--without-tcltk
--without-cairo
--without-jpeglib
--without-libtiff
--without-ICU
--with-included-gettext
--without-x
--without-recommended-packages
--without-aqua

This project tries to re-enable these features as needed for ggplot2 and other graphical applications.

In priority order from top priority (1) to lowest:

emews-r-x==1

Drops --without-x.
Works, tested by jozik .

emews-r-x==2

Drops --without-aqua.
Uploaded, untested.

emews-r-x==3

Drops --without-readline.
Uploaded, untested.

emews-r-x==4

Drops --without-cairo.
Cairo seems to be important for plotting file formats.

emews-r-x==5

Force installation of clangxx to address issue when building packages with C++

emews-r-x==6
  1. Move to R release tag 4.4.3 .

  2. Add activate.sh to address .libPaths() issue

  3. Added package clangxx at runtime

  4. Ready for testing

Usage

  1. Install a build Miniconda

  2. Run setup-conda.sh

  3. Run conda-build.sh

Notes

Remember to: . Update PLATFORM .. in conda-build.sh .. in meta.yaml . Update meta.yaml:source:path: . Install xcrun

For SSH

  1. Use ssh -X

  2. Set ForwardX11Trusted yes

Interactive builds (for humans)

  1. Install a fresh Anaconda

  2. $ ./human-setup.sh

  3. $ ./human-build.sh R_SVN WORK
    where R_SVN is the R SVN checkout and WORK is a temporary build directory for R

R configuration

We had to hack R 4.4.3 to get it to build on GitHub Actions due to a false installation of cairo-xlib. Apply this patch to m4/cairo.m4:139:

-      if "${PKG_CONFIG}" --exists cairo-xlib; then
+      # EMEWS-R-X: Force no cairo-xlib on GitHub Actions
+      # if "${PKG_CONFIG}" --exists cairo-xlib; then
+      echo GITHUB_ACTIONS $GITHUB_ACTIONS
+      if test -z "$GITHUB_ACTIONS" && "${PKG_CONFIG}" --exists cairo-xlib; then

This forces cairo-xlib off under GITHUB_ACTIONS==true . This is needed because pkg-config is installed under Homebrew and finds something, but it does not work.

To run autoconf, you must:

  1. configure R with --enable-maintainer-mode

  2. make configure

Troubleshooting

libxml errors

Reinstall conda- this is probably a Mac /tmp auto-delete issue

GitHub Actions

conda-incubator/setup-miniconda installs Python at /Users/runner/miniconda3 .

We want to run in this Python.

About

EMEWS installation of R with graphics support

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published