Skip to content
Back to formatted view

Raw Message

Message-ID: <E3E52404-38F5-47E5-A464-457157F69715@kaust.edu.sa>
Date: 2019-09-25T08:29:20Z
From: Sameh M. Abdulah
Subject: [R-pkg-devel]  Package or namespace load failed: undefined symbol
In-Reply-To: <CAFQwRQzXnvSN2JWT0sZfeWMKQ5HbYLofoCyZKLF1GfJcenTy7g@mail.gmail.com>

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?


Thanks
Sameh

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

    On Tue, Sep 24, 2019 at 12:10 PM Sameh M. Abdulah
    <sameh.abdulah at 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.
    
    cheerio
    ralf