conda-forge / r-igraph-feedstock

A conda-smithy repository for r-igraph.
BSD 3-Clause "New" or "Revised" License
2 stars 10 forks source link

openblas doesn't install #19

Closed jerlich closed 2 years ago

jerlich commented 3 years ago

Issue:

When installed r-igraph the openblas dependency doesn't install, so on running, produces this error:

> library(igraph)
Error: package or namespace load failed for ‘igraph’ in dyn.load(file, DLLpath
 = DLLpath, ...):
 unable to load shared object '/Users/jerlich/opt/miniconda3/envs/rstan/lib/R/
library/igraph/libs/igraph.dylib':
  dlopen(/Users/jerlich/opt/miniconda3/envs/rstan/lib/R/library/igraph/libs/ig
raph.dylib, 6): Library not loaded: @rpath/libopenblasp-r0.3.7.dylib
  Referenced from: /Users/jerlich/opt/miniconda3/envs/rstan/lib/R/library/igra
ph/libs/igraph.dylib
  Reason: image not found

I tried to reinstall r-igraph:

╰─$ conda install -c conda-forge r-igraph
Collecting package metadata (current_repodata.json): done
Solving environment: done

# All requested packages already installed.

Then I found a stack overflow question about opencv that had the same issue and they recommended directly installing openblas, so I did as follows.

╰─$ conda install -c conda-forge openblas=0.3.7

and everything worked afterwards.


Details about conda and system ( conda info ):

``` $ conda info active environment : rstan active env location : /Users/jerlich/opt/miniconda3/envs/rstan shell level : 2 user config file : /Users/jerlich/.condarc populated config files : /Users/jerlich/.condarc conda version : 4.9.2 conda-build version : not installed python version : 3.7.6.final.0 virtual packages : __osx=10.15.7=0 __unix=0=0 __archspec=1=x86_64 base environment : /Users/jerlich/opt/miniconda3 (writable) channel URLs : https://repo.anaconda.com/pkgs/main/osx-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/r/osx-64 https://repo.anaconda.com/pkgs/r/noarch package cache : /Users/jerlich/opt/miniconda3/pkgs /Users/jerlich/.conda/pkgs envs directories : /Users/jerlich/opt/miniconda3/envs /Users/jerlich/.conda/envs platform : osx-64 user-agent : conda/4.9.2 requests/2.24.0 CPython/3.7.6 Darwin/19.6.0 OSX/10.15.7 UID:GID : 501:20 netrc file : None offline mode : False ```
mfansler commented 2 years ago

openblas shouldn't be an explicit dependency. Any blas implementation should work. For example, I have no issue with any of the following:

## unspecified
mamba create -yn foo r-igraph
mamba run -n foo R -s -e "library('igraph')"

## accelerate
mamba create -yn foo r-igraph 'blas=*=*accelerate*'
mamba run -n foo R -s -e "library('igraph')"

## blis
mamba create -yn foo r-igraph 'blas=*=*blis*'
mamba run -n foo R -s -e "library('igraph')"

## mkl
mamba create -yn foo r-igraph 'blas=*=*mkl*'
mamba run -n foo R -s -e "library('igraph')"

## netlib
mamba create -yn foo r-igraph 'blas=*=*netlib*'
mamba run -n foo R -s -e "library('igraph')"

## openblas
mamba create -yn foo r-igraph 'blas=*=*openblas*'
mamba run -n foo R -s -e "library('igraph')"

Given the channel configuration shown in conda info and that the report seems to be for installing into existing environment (rather than creating new environment), this could be a channel mixing issue rather than a package build issue.

Unless there is further supporting evidence (e.g., full conda list or YAML of broken environment), I'd recommend closing.

mfansler commented 2 years ago

I'm closing this as not reproducible. Happy to reopen if there are details for reproduction added.