JCMais / node-libcurl

libcurl bindings for Node.js
https://npmjs.org/package/node-libcurl
MIT License
666 stars 118 forks source link

Breaking change in v2.3.4 #329

Closed ddolcimascolo closed 2 years ago

ddolcimascolo commented 2 years ago

Hi @JCMais

With v2.3.4 I now have this error message at runtime

Error: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found (required by /usr/share/stordata/collectors/node_modules/node-libcurl/lib/binding/node_libcurl.node)

It reminds me of https://github.com/JCMais/node-libcurl/issues/278 but this time build and packaging works fine. For the record, we package and run on Debian Stretch (9).

Do you know what might be wrong?

Thanks, David

JCMais commented 2 years ago

Hi @ddolcimascolo, GitHub has removed support for Ubuntu 16, which was the version used previously to build the prebuilt binaries.

I had to upgrade otherwise there would be no need to have the prebuilt binaries on *nix, but I forgot about this GLIBC issue.

Do you know if it is possible to support older glibc versions when building with Ubuntu 18? I think the best way would be to use a container in this case, when building.

This will probably be the latest version of the addon with support for older glibc, I think I will do a major bump in the next version to avoid having those issues again in the future.

Does building from source work?

ddolcimascolo commented 2 years ago

I'll try to build from source and keep you posted.

ddolcimascolo commented 2 years ago

And for the record about the build, that's what we do to support Debian 9 (until middle of this year when it'll go EOL): build the Debian package in a container built after debian:stretch

JCMais commented 2 years ago

@ddolcimascolo could you check if the prebuilt binaries are working for you now? I tested using docker and it seems to be working.

This should not happen again in the future as I will be using a container to build the Linux binaries moving forward.

ddolcimascolo commented 2 years ago

Hi @JCMais

It's OK now. Thx for fixing!

Cheers, David