rcastelo / GSVA

Gene set variation analysis
190 stars 39 forks source link

GSVA.so: undefined symbol: match5 #184

Closed bbimber closed 1 week ago

bbimber commented 1 month ago

Hello,

I'm trying to install GSVA (which is a dependency of the escape R package) through the bioconductor devel branch, which pulls 1.53.6. It's the src build, from: https://bioconductor.org/packages/3.20/bioc/src/contrib/GSVA_1.53.6.tar.gz. This is on ubuntu 22.04.

During install, it fails with this error:

2024-08-05T23:02:21.0298157Z ##[error]Error: package or namespace load failed for ‘GSVA’ in dyn.load(file, DLLpath = DLLpath, ...):
2024-08-05T23:02:21.0306475Z  unable to load shared object '/home/runner/work/_temp/Library/00LOCK-GSVA/00new/GSVA/libs/GSVA.so':
2024-08-05T23:02:21.0307600Z   /home/runner/work/_temp/Library/00LOCK-GSVA/00new/GSVA/libs/GSVA.so: undefined symbol: match5

It seems like that code was touched in the last couple of weeks here: https://github.com/rcastelo/GSVA/commit/9726003e98dc546dd5ed09188660b63d0cc65299.

Have you seen this error? Perhaps I have some dependency mismatch? Thanks for any suggestions.

rcastelo commented 1 month ago

Hi, the version 1.53.6 version is the "development" version and for that precise reason the code may change every now and then. The development version is where we add features. To have a more stable experience, please use the "release" version 1.52.x, which only changes when we fix a bug or improve documentation. To install the release version of GSVA, please follow the instructions at https://bioconductor.org/packages/GSVA.

bbimber commented 1 month ago

@rcastelo, yes i understand that. we nonetheless run the test suites of our packages against bioc devel precisely to see where potential issues could arise.

I guess just consider this a report of a potential upcoming installation issue.

rcastelo commented 1 month ago

I see, this is fine. One of the last changes in GSVA is calling directly one of the functions of the internal R API, which is the one that is causing the error you see in your case, but which has not caused any problem in our end. Could you tell us how did you install GSVA in your computer? (via R CMD INSTALL, via some packager manager, etc.)

bbimber commented 1 month ago

Sure - our module depends on escape, which depends on GSVA. remotes::installdependencies() is what we call, and it resolves everything. From the logs, it pulls from bioc devel:

https://bioconductor.org/packages/3.20/bioc/src/contrib/GSVA_1.53.6.tar.gz

rcastelo commented 3 weeks ago

Dear @bbimber

The problem you described has been fixed in GSVA devel version 1.53.9.