Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AppImage error libcairo.so.2: undefined symbol: FT_Get_Transform on openSUSE #1322

Closed
padreputativo opened this issue Feb 2, 2025 · 13 comments
Labels
state:Done This issue has been resolved/dismissed type:Bug Something isn't working

Comments

@padreputativo
Copy link

Describe the bug
I can't run the AppImage.

To Reproduce
Run the AppImage on openSUSE Leap.

And get this error.

./Video2X-x86_64.AppImage: symbol lookup error: /tmp/.mount_Video2Z9eDoh/usr/bin/../lib/libcairo.so.2: undefined symbol: FT_Get_Transform

Expected behavior
It should run normally, use the system libraries, or have its own libraries to do so.

Actual behavior
It shows an error.

Environment:

  • OS: openSUSE Leap 15.6
  • GPU: GeForce GTX 1050 Ti
  • Video2X Version: 6.4.0

Full command
./Video2X-x86_64.AppImage

@padreputativo padreputativo added the type:Bug Something isn't working label Feb 2, 2025
@github-actions github-actions bot added the state:Backlog This issue will be worked on in the future label Feb 2, 2025
@k4yt3x
Copy link
Owner

k4yt3x commented Feb 4, 2025

Can you try installing libfreetype6?

@padreputativo
Copy link
Author

I have it installed, but it doesn't seem to find it. It's here:

/usr/lib/libfreetype.so.6
/usr/lib/libfreetype.so.6.17.4
/usr/lib64/libfreetype.so
/usr/lib64/libfreetype.so.6
/usr/lib64/libfreetype.so.6.17.4

@k4yt3x
Copy link
Owner

k4yt3x commented Feb 4, 2025

I wonder if it's because of the openSUSE lib paths. Can you try:

LD_LIBRARY_PATH="/usr/lib64:$LD_LIBRARY_PATH" ./Video2X-x86_64.AppImage

If that still doesn't work, debug it with:

LD_DEBUG=libs ./Video2X-x86_64.AppImage 2>&1 | grep -i "freetype"

See what it prints. You can also check freetype's version. It needs to be newer than 2.10.0.

@padreputativo
Copy link
Author

padreputativo commented Feb 4, 2025

More errors appear, and those libraries are also present:

Image

@k4yt3x
Copy link
Owner

k4yt3x commented Feb 4, 2025

Hmm I guess setting LD_LIBRARY_PATH prevents it from searching the bundled libraries. It looks like it tried the correct lib directory though. Does /usr/lib64/libfreetype.so.6 exist?

@k4yt3x
Copy link
Owner

k4yt3x commented Feb 4, 2025

Oh right nvm you posted that above. It does exist. Maybe it's just too old then.

@k4yt3x
Copy link
Owner

k4yt3x commented Feb 4, 2025

The official libfreetype6 package has the version 2.13.2, which should be enough given FT_Get_Transform was introduced in 2.10.0 or something. Can you check your libfreetype6 version?

@padreputativo
Copy link
Author

The version of Freetype is 6.17.4, and the rest of the libraries are exactly the required ones. I have tried running it by adding different directories, but it seems unable to find them. In the end, after discussing with GPT, I thought that maybe it can't find the library because the program that verifies where the libraries are is missing. When I checked if they existed, GPT told me to use "ldconfig," but despite having it installed, it doesn't work directly since it's in /sbin/ and requires sudo. I don't know what AppImage uses to "find" the libraries.

@padreputativo
Copy link
Author

Correction, the version is 2.10.4-150000.4.15.1

@k4yt3x
Copy link
Owner

k4yt3x commented Feb 6, 2025

Ah that explains. I double checked and FT_Get_Transform is added in FreeType 2.11. The library you have is just too old. I do see from openSUSE's package repo that the latest is 2.13.2, at least for Tumbleweed. Maybe try upgrading that package or consider a newer version of the distro?

Image

@padreputativo
Copy link
Author

I'm using openSUSE Leap, and I understand that it always uses the "most stable" versions of packages to minimize issues. I guess I can try updating it anyway and see if I get lucky.

@padreputativo
Copy link
Author

Solved!! Many thanks!!

@k4yt3x k4yt3x changed the title Problems running the AppImage on openSUSE AppImage error libcairo.so.2: undefined symbol: FT_Get_Transform on openSUSE Feb 6, 2025
@k4yt3x
Copy link
Owner

k4yt3x commented Feb 6, 2025

Great to hear that. I've updated the title so it's easier for other people with similar issues to find this thread. Ultimately, this is linuxdeploy's issue where it chooses to exclude libfreetype6, so a compatible version has to be available on the host.

@k4yt3x k4yt3x closed this as completed Feb 6, 2025
@github-actions github-actions bot added state:Done This issue has been resolved/dismissed and removed state:Backlog This issue will be worked on in the future labels Feb 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
state:Done This issue has been resolved/dismissed type:Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants