peekxc / Mapper

R package for computing the Mapper construction from Topological Data Analysis

Home Page:http://peekxc.github.io/Mapper/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cannot install current Mapper Version

DPSEve opened this issue · comments

I am unable to install the current Mapper package. I am able to install the current version of simplex tree, and run the quickstart cod without issues. I am also able to install older versions of simplextree and Mapper (from August 2019), and run them without issue. However, when I try to install the current version of Mapper I receive the following error.

gromov_hausdorff.cpp:5:10: fatal error: utilities.h: No such file or directory
#include "utilities.h"
      ^~~~~~~~~~~~~
compilation terminated.
make: *** [C:/PROGRA~1/R/R-40~1.2/etc/i386/Makeconf:229: gromov_hausdorff.o] Error 1
ERROR: compilation failed for package 'Mapper'
* removing 'C:/Users/theex/Documents/R/win-library/4.0/Mapper'
Error: Failed to install 'Mapper' from GitHub:
(converted from warning) installation of package ‘C:/Users/theex/AppData/Local/Temp/RtmpUPw7wr/file30dc450044d0   /Mapper_0.9.2.tar.gz’ had non-zero exit status

That's the tail end of it at least. I am running R 4.0.2, Rcpp version 1.0.5

For reference, this is the simplextree commit that should still be compatible with Mapper.

Hi @DPSEve, yes sorry the current version of Mapper needs a lot of changes to its internal API, as simplextree has been revamped since I last committed to this package. So for the time being, you have to use the older version of simplextree (which @corybrunson linked), or use the newer version of simplextree and just compute the cover by hand.

Part of this has to do with the new nerve functionality in simplextree. Since the Mapper construction is essentially a nerve complex built over preimages, if you have a list of those preimages you can get the essential elements of the Mapper construction using simplextree alone. This is what I plan to incorporate into a new version of the Mapper package at some point, removing the need for extra cover classes.

I have a midterm coming up, but I can try to see if I can piece together a new branch of the Mapper package that utilizes the newer CRAN-version of simplextree soon. It shouldn't be too hard, since simplextree actually does all the heavy lifting now.

@DPSEve I had the same issue when trying to install the current version. But I want to ask you, How did you install the older version of Mapper? I do not know how to do that and I would like to do so. Thanks in advance.

@aaolaveh When you are using the install_github function, you can specify what commit from the repository you want to install. So, to install the last compatible simplextree package (that Cory linked above) your command would be

devtools:install_github(peekxc/simplextree/@6e34926b3e6c7c990226e23ba075e29e9a374365)

You can browse the past repository by clicking on the "commits" button underneath the green "Code" button on the repository. Navigate to a past commit (I used August 2019 for both Mapper AND simplextree), click, and the long commit number will be there in the upper right.