Giter Club home page Giter Club logo

Comments (7)

NehaAr avatar NehaAr commented on August 30, 2024 1

@vissarion ..The interface is working fine.. I directly installed all the dependencies via RStudio. I am facing no issues in the installation.

from volesti.

linktorahulraj avatar linktorahulraj commented on August 30, 2024

hello @vissarion ,
I want to work on this issue please assign me.

from volesti.

linktorahulraj avatar linktorahulraj commented on August 30, 2024

hello @vissarion , I want to work on this issue please assign me.

hello @vissarion , this may solve this issue, please look at it

The C++ compiler needs to be told to look at this root path instead of /usr/include. This can be done by setting the CPLUS_INCLUDE_PATH env variable. We have to also include LLVM’s normal include path because this is where it should search first.

#Adjust your llvm and CLT include paths to match your setup
export CPLUS_INCLUDE_PATH=/usr/local/opt/llvm/include/c++/v1:/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include

This should fix any fatal error: minimum_ellipsoid/khach.h file not found errors.
We might still run into linker errors like ld: library not found for -lxxx The linker also needs to be told to look for libraries in the CommandLineTools/Xcode paths by setting the LIBRARY_PATH env variable.

export LIBRARY_PATH=$LIBRARY_PATH:/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/lib

Make sure to add these export statements to the .bash_rc, .zshrc, .bash_profile, or whatever shell you use, to make these adjusted environment variables available in all terminals.

from volesti.

rsjian avatar rsjian commented on August 30, 2024

I found the issue. See:

PKG_CPPFLAGS= -I../../external/boost -I../../external/LPsolve_src/run_headers -I../../external/minimum_ellipsoid -I../../include

#include <minimum_ellipsoid/khach.h>

The include flag -I../../external/minimum_ellipsoid which should be -I../../external. There also needs to be an additional change from

to #include "minimum_ellipsoid/khach.h"

I then ran into another issue where colamd.h was being found in /usr/local/include instead of src/external/lpsolve/headers/include so I rewrote the following two lines

LP_SOLVE_CPPFLAGS=$(CPPFLAGS) -I../../headers/include \
-I$(R_INCLUDE_DIR) \

as

LP_SOLVE_CPPFLAGS=-I../../headers/include \
                  $(CPPFLAGS) \
                  -I$(R_INCLUDE_DIR) \

Afterwards I followed the following steps to install the package

  1. running in R console install.packages(c('rcmdcheck', 'devtools', 'Rcpp', 'RcppEigen', 'BH', 'testthat', 'downloader', 'xfun')) followed by setwd("/Users/rjian/volesti/cran_gen")
  2. running genCRANpkg.R
  3. running in R console setwd("/Users/rjian/volesti/cran_gen/cran_package") followed by devtools::install()

The context for running these steps instead of the instructions in the docs

Rscript -e 'Rcpp::compileAttributes()'
    R CMD INSTALL --no-multiarch --with-keep.source .

is that

Rproj_externals/lp_solve/liblp_solve.a:
@(cd Rproj_externals/lp_solve && $(MAKE) liblp_solve.a \
no longer works because of the changes in #183 which removed the directory Rproj_externals (containing the lp_solve source) from the repo and replaced it with a download in genCRANpkg.R

In retrospect maybe I should've just tried installing from master instead of develop, I'm not even trying to make any changes to the R interface.

from volesti.

vissarion avatar vissarion commented on August 30, 2024

Indeed the correct way of building and running the R interface is via genCRANpkg.R and this should be updated in the docs.

from volesti.

NehaAr avatar NehaAr commented on August 30, 2024

can i also work on this issue

from volesti.

NehaAr avatar NehaAr commented on August 30, 2024

I am able to install the complete interface. I am using Rstudio version 4.22

from volesti.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.