2

Trying to install the Write! AppImage on Arch Linux with qt5 installed, freetype2 2.9.1 and fontconfig 2:2.13.1+12+g5f5ec56-1

[levi@astize Write!]$ ./write
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Available platform plugins are: xcb.

Reinstalling the application may fix this problem.
Aborted (core dumped)

While running with QT_DEBUG_PLUGINS=1

[levi@astize Write!]$ ./write
QFactoryLoader::QFactoryLoader() checking directory path "/tmp/.mount_unuY6s/usr/plugins/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/tmp/.mount_unuY6s/usr/plugins/platforms/libqxcb.so"
Found metadata in lib /tmp/.mount_unuY6s/usr/plugins/platforms/libqxcb.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "xcb"
        ]
    },
    "className": "QXcbIntegrationPlugin",
    "debug": false,
    "version": 329989
}


Got keys from plugin meta data ("xcb")
QFactoryLoader::QFactoryLoader() checking directory path "/tmp/.mount_unuY6s/usr/bin/platforms" ...
Cannot load library /tmp/.mount_unuY6s/usr/plugins/platforms/libqxcb.so: (/usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var)
QLibraryPrivate::loadPlugin failed on "/tmp/.mount_unuY6s/usr/plugins/platforms/libqxcb.so" : "Cannot load library /tmp/.mount_unuY6s/usr/plugins/platforms/libqxcb.so: (/usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var)"
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Available platform plugins are: xcb.

Reinstalling the application may fix this problem.
Aborted (core dumped)

Any help would be appreciated.

astize
  • 21
  • 1
  • 2

2 Answers2

1

I was struggling with this error after compiling a c++ app in Qt and deploying it to a production machine. Here are some things I did to resolve the issue.

  • Install the Qt libs. Mine were installed in ~/Qt/5.9.8/gcc_64/lib/ on my dev machine. I simply copied this directory to the production machine.

  • Use ldd -v /path/to/your/app to find and resolve issues with missing libs.

  • Set environment vars: LD_LIBRARY_PATH=~/Qt/5.9.8/gcc_64/lib/:/path/to/any/custom/libs/for/your/app QT_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins

0

I think the problem is related to this error:

/usr/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var

You should upgrade your fontconfig library. Try with version 2.13.

Tarod
  • 5,804
  • 5
  • 38
  • 45
  • Hi, thanks for the response! I tried that, unfortunately there was no change. I did however manage to get the program to launch by using `LD_PRELOAD=/usr/lib/libfreetype.so ./RunWrite` What can I do to make this a more stable fix? – astize Dec 14 '18 at 17:14
  • @astize fontconfig has greater versions than 2.13. You could try with some of them. If other versions don't work, I'm afraid the solution is to use that environment variable (`LD_PRELOAD`) – Tarod Dec 17 '18 at 11:09