maptiler / tileserver-gl

Vector and raster maps with GL styles. Server side rendering by MapLibre GL Native. Map tile server for MapLibre GL JS, Android, iOS, Leaflet, OpenLayers, GIS via WMTS, etc.
https://tileserver.readthedocs.io/en/latest/
Other
2.12k stars 614 forks source link

libicu60 dependancy is not available with ubuntu 24 #1290

Open amsanket22 opened 1 week ago

amsanket22 commented 1 week ago

node:internal/modules/cjs/loader:1454 return process.dlopen(module, path.toNamespacedPath(filename)); ^

Error: libicui18n.so.70: cannot open shared object file: No such file or directory at Module._extensions..node (node:internal/modules/cjs/loader:1454:18) at Module.load (node:internal/modules/cjs/loader:1208:32) at Module._load (node:internal/modules/cjs/loader:1024:12) at Module.require (node:internal/modules/cjs/loader:1233:19) at require (node:internal/modules/helpers:179:18) at Object. (/home/ubuntu/tileserver-gl/node_modules/@maplibre/maplibre-gl-native/platform/node/index.js:5:12) at Module._compile (node:internal/modules/cjs/loader:1358:14) at Module._extensions..js (node:internal/modules/cjs/loader:1416:10) at Module.load (node:internal/modules/cjs/loader:1208:32) at Module._load (node:internal/modules/cjs/loader:1024:12) { code: 'ERR_DLOPEN_FAILED' }

Node.js v20.15.0

acalcutt commented 1 week ago

The current maplibre-native is built on Ubuntu 22.04, so it requires the libicu from that version https://maptiler-tileserver.readthedocs.io/en/latest/installation.html#npm

From the documentation it looks like it needs libicu70 which is in ubuntu 22.04 https://maptiler-tileserver.readthedocs.io/en/latest/installation.html#ubuntu-22-04-x64-arm64 https://github.com/maplibre/maplibre-native/tree/main/platform/node#installing

acalcutt commented 1 week ago

by the way, this change happened in v4.8.0. This is when maplibre-native was changed from ubuntu 20.04 to 22.04 being required.