[R-pkg-devel] Package or namespace load failed: undefined symbol

Sameh M. Abdulah @@meh@@bdu|@h @end|ng |rom k@u@t@edu@@@
Wed Sep 25 10:29:20 CEST 2019

Thanks Ralf

I am installing OpenBLAS because I need LAPACKE libraries which I cannot find on the current version of OpenBLAS on CRAN. 

I add the libraries directory in my package to the PKG_CONFIG_PATH. Is this enough for the system to use my OpenBLAS library?


On 9/25/19, 10:23 AM, "Ralf Stubner" <ralf.stubner using gmail.com> wrote:

    On Tue, Sep 24, 2019 at 12:10 PM Sameh M. Abdulah
    <sameh.abdulah using kaust.edu.sa> wrote:
    > I am uploading my R package to CRAN. One of the dynamic libraries the package requires depends on LAPACKE library which usually integrated with BLAS and CBLAS in the same .so file (as I understand). CRAN has OpenBLAS already installed on the system. However, this OpenBLAS library does not maintain implementation of LAPACKE library. Thus, I have modified my configure file to install a standalone OpenBLAS library to use it.
    > The problem that my installation has successfully passed, however, CRAN fails in loading my package giving me this error:
    > /srv/hornik/tmp/CRAN/exageostatr.Rcheck/exageostatr/lib/libcoreblas.so: undefined symbol: LAPACKE_slarfb_work
    This looks as if you are building OpenBLAS as a /dynamic/ library
    installed in your package directory. This cannot work since the
    run-time linker will not search your package directory for dynamic
    libraries. You could build OpenBLAS as a /static/ library instead.
    However, I am unsure why you want to build OpenBLAS in the first
    place, since any R package can reliably link with the BLAS and LAPACK
    versions used by R. See WRE on Makevars, BLAS_LIBS etc. for details.

More information about the R-package-devel mailing list