question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

undefined symbol: g_date_copy when loading sharp with debian 9

See original GitHub issue

Hi, When I try to require(“sharp”), I get the following error :

Error: /home/www/mysite/node_modules/sharp/build/Release/../../vendor/lib/libgobject-2.0.so.0: undefined symbol: g_date_copy
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:718:18)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at bindings (/home/www/mysite/node_modules/bindings/bindings.js:84:48)
    at Object.<anonymous> (/home/www/mysite/node_modules/sharp/lib/constructor.js:10:34)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at Object.<anonymous> (/home/www/mysite/node_modules/sharp/lib/index.js:3:15)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)

I didn’t install libvips on my system and ran a simple npm install to launch my project, here are some details.

  "engines": {
    "node": "10.14.2"
  },
  "dependencies": {
    "apollo-server-express": "^2.1.0",
    "aws-sdk": "^2.331.0",
    "axios": "^0.18.0",
    "body-parser": "^1.18.3",
    "cookie-parser": "~1.4.3",
    "cors": "^2.8.4",
    "dataloader-sequelize": "^1.7.2",
    "debug": "~2.6.9",
    "express": "~4.16.0",
    "express-graphql": "^0.6.12",
    "firebase-admin": "^6.0.0",
    "graphql": "^0.13.2",
    "graphql-relay": "^0.5.5",
    "graphql-sequelize": "^9.0.4",
    "http-errors": "~1.6.2",
    "jade": "~1.11.0",
    "jsonwebtoken": "^8.3.0",
    "minimist": "^1.2.0",
    "module-alias": "^2.1.0",
    "moment": "^2.22.2",
    "moment-timezone": "^0.5.21",
    "morgan": "~1.9.0",
    "node-sass-middleware": "0.11.0",
    "passport": "^0.4.0",
    "passport-jwt": "^4.0.0",
    "password-generator": "^2.2.0",
    "pdf-fill-form": "^4.1.0",
    "pg": "^7.4.3",
    "pg-hstore": "^2.3.2",
    "phone": "^2.2.0",
    "sequelize": "^4.38.0",
    "sequelize-cli": "^4.0.0",
    "sharp": "^0.20.8",
    "sleep": "^5.1.1",
    "string": "^3.3.3",
    "tunnel": "0.0.6",
    "uuid": "^3.3.2"
  },


ll node_modules/sharp/vendor/lib/
total 16668
drwxr-xr-x 3 jb jb    4096 déc.  19 11:52 cmake
drwxr-xr-x 3 jb jb    4096 déc.  19 11:52 gdk-pixbuf-2.0
drwxr-xr-x 3 jb jb    4096 déc.  19 11:52 gio
drwxr-xr-x 3 jb jb    4096 déc.  19 11:52 glib-2.0
lrwxrwxrwx 1 jb jb      22 déc.  19 11:52 libcairo.so -> libcairo.so.2.11400.12
lrwxrwxrwx 1 jb jb      22 déc.  19 11:52 libcairo.so.2 -> libcairo.so.2.11400.12
-rwxr-xr-x 1 jb jb 1005776 janv. 10  2018 libcairo.so.2.11400.12
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libcroco-0.6.so -> libcroco-0.6.so.3.0.1
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libcroco-0.6.so.3 -> libcroco-0.6.so.3.0.1
-rwxr-xr-x 1 jb jb  246576 janv. 10  2018 libcroco-0.6.so.3.0.1
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 libexif.so -> libexif.so.12.3.3
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 libexif.so.12 -> libexif.so.12.3.3
-rwxr-xr-x 1 jb jb  288432 janv. 10  2018 libexif.so.12.3.3
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 libexpat.so -> libexpat.so.1.6.7
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 libexpat.so.1 -> libexpat.so.1.6.7
-rwxr-xr-x 1 jb jb  198874 janv. 10  2018 libexpat.so.1.6.7
drwxr-xr-x 3 jb jb    4096 déc.  19 11:52 libffi-3.2.1
lrwxrwxrwx 1 jb jb      15 déc.  19 11:52 libffi.so -> libffi.so.6.0.4
lrwxrwxrwx 1 jb jb      15 déc.  19 11:52 libffi.so.6 -> libffi.so.6.0.4
-rwxr-xr-x 1 jb jb   32032 janv. 10  2018 libffi.so.6.0.4
lrwxrwxrwx 1 jb jb      23 déc.  19 11:52 libfontconfig.so -> libfontconfig.so.1.10.1
lrwxrwxrwx 1 jb jb      23 déc.  19 11:52 libfontconfig.so.1 -> libfontconfig.so.1.10.1
-rwxr-xr-x 1 jb jb  315712 janv. 10  2018 libfontconfig.so.1.10.1
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libfreetype.so -> libfreetype.so.6.16.0
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libfreetype.so.6 -> libfreetype.so.6.16.0
-rwxr-xr-x 1 jb jb  825520 janv. 10  2018 libfreetype.so.6.16.0
lrwxrwxrwx 1 jb jb      29 déc.  19 11:52 libgdk_pixbuf-2.0.so -> libgdk_pixbuf-2.0.so.0.3611.0
lrwxrwxrwx 1 jb jb      29 déc.  19 11:52 libgdk_pixbuf-2.0.so.0 -> libgdk_pixbuf-2.0.so.0.3611.0
-rwxr-xr-x 1 jb jb  179056 janv. 10  2018 libgdk_pixbuf-2.0.so.0.3611.0
lrwxrwxrwx 1 jb jb      15 déc.  19 11:52 libgif.so -> libgif.so.7.0.0
lrwxrwxrwx 1 jb jb      15 déc.  19 11:52 libgif.so.7 -> libgif.so.7.0.0
-rwxr-xr-x 1 jb jb   37736 janv. 10  2018 libgif.so.7.0.0
lrwxrwxrwx 1 jb jb      22 déc.  19 11:52 libgio-2.0.so -> libgio-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      22 déc.  19 11:52 libgio-2.0.so.0 -> libgio-2.0.so.0.5501.0
-rwxr-xr-x 1 jb jb 1872560 janv. 10  2018 libgio-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      23 déc.  19 11:52 libglib-2.0.so -> libglib-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      23 déc.  19 11:52 libglib-2.0.so.0 -> libglib-2.0.so.0.5501.0
-rwxr-xr-x 1 jb jb 1525224 janv. 10  2018 libglib-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      26 déc.  19 11:52 libgmodule-2.0.so -> libgmodule-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      26 déc.  19 11:52 libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.5501.0
-rwxr-xr-x 1 jb jb   12608 janv. 10  2018 libgmodule-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      26 déc.  19 11:52 libgobject-2.0.so -> libgobject-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      26 déc.  19 11:52 libgobject-2.0.so.0 -> libgobject-2.0.so.0.5501.0
-rwxr-xr-x 1 jb jb  346056 janv. 10  2018 libgobject-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      20 déc.  19 11:52 libgsf-1.so -> libgsf-1.so.114.0.42
lrwxrwxrwx 1 jb jb      20 déc.  19 11:52 libgsf-1.so.114 -> libgsf-1.so.114.0.42
-rwxr-xr-x 1 jb jb  296696 janv. 10  2018 libgsf-1.so.114.0.42
lrwxrwxrwx 1 jb jb      26 déc.  19 11:52 libgthread-2.0.so -> libgthread-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      26 déc.  19 11:52 libgthread-2.0.so.0 -> libgthread-2.0.so.0.5501.0
-rwxr-xr-x 1 jb jb    5168 janv. 10  2018 libgthread-2.0.so.0.5501.0
lrwxrwxrwx 1 jb jb      24 déc.  19 11:52 libharfbuzz.so -> libharfbuzz.so.0.10704.0
lrwxrwxrwx 1 jb jb      24 déc.  19 11:52 libharfbuzz.so.0 -> libharfbuzz.so.0.10704.0
-rwxr-xr-x 1 jb jb  684776 janv. 10  2018 libharfbuzz.so.0.10704.0
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libjpeg.so -> libjpeg.so.8.1.2
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libjpeg.so.8 -> libjpeg.so.8.1.2
-rwxr-xr-x 1 jb jb  509040 janv. 10  2018 libjpeg.so.8.1.2
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 liblcms2.so -> liblcms2.so.2.0.8
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 liblcms2.so.2 -> liblcms2.so.2.0.8
-rwxr-xr-x 1 jb jb  424304 janv. 10  2018 liblcms2.so.2.0.8
lrwxrwxrwx 1 jb jb      20 déc.  19 11:52 liborc-0.4.so -> liborc-0.4.so.0.28.0
lrwxrwxrwx 1 jb jb      20 déc.  19 11:52 liborc-0.4.so.0 -> liborc-0.4.so.0.28.0
-rwxr-xr-x 1 jb jb  619632 janv. 10  2018 liborc-0.4.so.0.28.0
lrwxrwxrwx 1 jb jb      24 déc.  19 11:52 libpango-1.0.so -> libpango-1.0.so.0.4100.0
lrwxrwxrwx 1 jb jb      24 déc.  19 11:52 libpango-1.0.so.0 -> libpango-1.0.so.0.4100.0
-rwxr-xr-x 1 jb jb  336488 janv. 10  2018 libpango-1.0.so.0.4100.0
lrwxrwxrwx 1 jb jb      29 déc.  19 11:52 libpangocairo-1.0.so -> libpangocairo-1.0.so.0.4100.0
lrwxrwxrwx 1 jb jb      29 déc.  19 11:52 libpangocairo-1.0.so.0 -> libpangocairo-1.0.so.0.4100.0
-rwxr-xr-x 1 jb jb   57600 janv. 10  2018 libpangocairo-1.0.so.0.4100.0
lrwxrwxrwx 1 jb jb      27 déc.  19 11:52 libpangoft2-1.0.so -> libpangoft2-1.0.so.0.4100.0
lrwxrwxrwx 1 jb jb      27 déc.  19 11:52 libpangoft2-1.0.so.0 -> libpangoft2-1.0.so.0.4100.0
-rwxr-xr-x 1 jb jb   95048 janv. 10  2018 libpangoft2-1.0.so.0.4100.0
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libpixman-1.so -> libpixman-1.so.0.34.0
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libpixman-1.so.0 -> libpixman-1.so.0.34.0
-rwxr-xr-x 1 jb jb  779536 janv. 10  2018 libpixman-1.so.0.34.0
lrwxrwxrwx 1 jb jb      19 déc.  19 11:52 libpng16.so -> libpng16.so.16.34.0
lrwxrwxrwx 1 jb jb      19 déc.  19 11:52 libpng16.so.16 -> libpng16.so.16.34.0
-rwxr-xr-x 1 jb jb  235304 janv. 10  2018 libpng16.so.16.34.0
lrwxrwxrwx 1 jb jb      11 déc.  19 11:52 libpng.so -> libpng16.so
lrwxrwxrwx 1 jb jb      19 déc.  19 11:52 librsvg-2.so -> librsvg-2.so.2.42.0
lrwxrwxrwx 1 jb jb      19 déc.  19 11:52 librsvg-2.so.2 -> librsvg-2.so.2.42.0
-rwxr-xr-x 1 jb jb 1170544 janv. 10  2018 librsvg-2.so.2.42.0
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libtiff.so -> libtiff.so.5.3.0
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libtiff.so.5 -> libtiff.so.5.3.0
-rwxr-xr-x 1 jb jb  484776 janv. 10  2018 libtiff.so.5.3.0
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libvips-cpp.so -> libvips-cpp.so.42.8.1
lrwxrwxrwx 1 jb jb      21 déc.  19 11:52 libvips-cpp.so.42 -> libvips-cpp.so.42.8.1
-rwxr-xr-x 1 jb jb  181504 janv. 10  2018 libvips-cpp.so.42.8.1
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 libvips.so -> libvips.so.42.8.1
lrwxrwxrwx 1 jb jb      17 déc.  19 11:52 libvips.so.42 -> libvips.so.42.8.1
-rwxr-xr-x 1 jb jb 2484904 janv. 10  2018 libvips.so.42.8.1
lrwxrwxrwx 1 jb jb      19 déc.  19 11:52 libwebpmux.so -> libwebpmux.so.3.0.1
lrwxrwxrwx 1 jb jb      19 déc.  19 11:52 libwebpmux.so.3 -> libwebpmux.so.3.0.1
-rwxr-xr-x 1 jb jb   46504 janv. 10  2018 libwebpmux.so.3.0.1
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libwebp.so -> libwebp.so.7.0.1
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libwebp.so.7 -> libwebp.so.7.0.1
-rwxr-xr-x 1 jb jb  599392 janv. 10  2018 libwebp.so.7.0.1
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libxml2.so -> libxml2.so.2.9.7
lrwxrwxrwx 1 jb jb      16 déc.  19 11:52 libxml2.so.2 -> libxml2.so.2.9.7
-rwxr-xr-x 1 jb jb  955552 janv. 10  2018 libxml2.so.2.9.7
lrwxrwxrwx 1 jb jb      14 déc.  19 11:52 libz.so -> libz.so.1.2.11
lrwxrwxrwx 1 jb jb      14 déc.  19 11:52 libz.so.1 -> libz.so.1.2.11
-rwxr-xr-x 1 jb jb  110543 janv. 10  2018 libz.so.1.2.11
-rw-r--r-- 1 jb jb     222 janv. 10  2018 xml2Conf.sh

I’m running the project with a debian stretch (9) with node 10.14

15:13:43 root@ [~] # dpkg -l|grep glib
ii  libglib2.0-0:amd64                 2.50.3-2                       amd64        GLib library of C routines
ii  libglib2.0-bin                     2.50.3-2                       amd64        Programs for the GLib library
ii  libglib2.0-data                    2.50.3-2                       all          Common files for GLib library
ii  libglib2.0-dev                     2.50.3-2                       amd64        Development files for the GLib library
15:13:48 root@ [~] # node -v
v10.14.2
15:14:37 root@ [~] # npm -v
6.4.1

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:5 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
quentin-lptcommented, Jan 2, 2019

This debian stretch is a fresh install, no upgrade from older versions.

The problem was the system libglib2 version :

ii  libglib2.0-0:amd64                 2.50.3-2                       amd64        GLib library of C routines
ii  libglib2.0-bin                     2.50.3-2                       amd64        Programs for the GLib library
ii  libglib2.0-data                    2.50.3-2                       all          Common files for GLib library
ii  libglib2.0-dev                     2.50.3-2                       amd64        Development files for the GLib library

we had to manualy upgrade libglib2 package to debian sid version :

ii  libglib2.0-0:amd64                 2.58.1-2                       amd64        GLib library of C routines
ii  libglib2.0-bin                     2.58.1-2                       amd64        Programs for the GLib library
ii  libglib2.0-data                    2.58.1-2                       all          Common files for GLib library
ii  libglib2.0-dev:amd64               2.58.1-2                       amd64        Development files for the GLib library
ii  libglib2.0-dev-bin                 2.58.1-2                       amd64        Development utilities for the GLib library

dirty solution but after that no more g_date_copy errors

thanks for the support @lovell 😃

0reactions
AndreiCherniaevcommented, Mar 29, 2021

It was the same problem on Ubunto 20.04.2 on Orange Pi 4B. I use pcmanfm and go to /usr/local/lib and find the problem file libglib-2.0.so I see properties and there is “target file” libglib-2.0.so.0.5200.3 Also I see problem file libgobject-2.0.so.0 with “Target file” libgobject-2.0.so.0.5200.3 I delete this two files and also do in console “sudo ln -sf /usr/lib/aarch64-linux-gnu/libgobject-2.0.so.0 /usr/local/lib” After this my Qt 5.15.3 can work with make well! No more “g_date_copy” error. https://medium.com/@Aenon/glib-symbol-lookup-bug-in-debian-or-ubuntu-def678dab5a6

Read more comments on GitHub >

github_iconTop Results From Across the Web

Debian Bug report logs - #998854 undefined symbol
Subject: undefined symbol: _PyUnicode_DecodeUnicodeEscape ... Package: python3.9 Version: 3.9.8-1 Severity: important Control: affects -1 ...
Read more >
PHP8.1 on debian: undefined symbol - Stack Overflow
I installed PHP8.1 with some additional modules. An undefined symbol error is displayed when calling php --version ...
Read more >
GLib undefined symbol bug in Debian | by Xilin Sun - Medium
Solving undefined symbol bug caused by GLib upgrading. ... After a regular software upgrade, my Debian sid refused to start lightdm service.
Read more >
error caused by undefined symbol: glXGetProcAddress
The error means, that your Cairo installation is missing run-time link dependency - judging by the symbol name it's an OpenGL implementation package...
Read more >
Bug#896019: libglib2.0-0: undefined symbol g_date_copy ...
Debian 9 'stretch' (now stable). libglib-2.0.so.0.4200.0 with a timestamp of October 2 2014 looks like it could have come from glib2.0 2.42 ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found