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

Curl error: symbol lookup error #25

Closed
ghost opened this issue Jul 21, 2019 · 6 comments
Closed

Curl error: symbol lookup error #25

ghost opened this issue Jul 21, 2019 · 6 comments

Comments

@ghost
Copy link

ghost commented Jul 21, 2019

I encountered the following problem when installing Windows DLL's and components, such as galliumnine standalone:

[user@fedora-silverblue ~]$ protontricks-flat --gui
winetricks GUI enabled, using zenity 3.30.0
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20190615-next - sha256sum: 2d3311f8cc0783b747c4e074008e701f2ce844765ba53d2fd4d27126d1df2383 with wine-4.2 and WINEARCH=win64
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename
------------------------------------------------------
Github down? version '' doesn't appear to be a valid version
------------------------------------------------------
winetricks GUI enabled, using zenity 3.30.0
Executing w_do_call galliumnine
Executing load_galliumnine 
Executing cd /home/user/.var/app/com.valvesoftware.Steam/cache/winetricks/galliumnine
Downloading https://github.com/iXit/wine-nine-standalone/releases/download//gallium-nine-standalone-.tar.gz to /home/user/.var/app/com.valvesoftware.Steam/cache/winetricks/galliumnine
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename
Executing cd /home/user/.var/app/com.valvesoftware.Steam/cache/winetricks/galliumnine
Downloading https://web.archive.org/web/2000/https://github.com/iXit/wine-nine-standalone/releases/download//gallium-nine-standalone-.tar.gz to /home/user/.var/app/com.valvesoftware.Steam/cache/winetricks/galliumnine
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename
------------------------------------------------------
Downloading https://web.archive.org/web/2000/https://github.com/iXit/wine-nine-standalone/releases/download//gallium-nine-standalone-.tar.gz failed
------------------------------------------------------

I have tried downgrading the following so far: protontricks to the release 1.2.2, winetricks to the point release 20190615, and org.freedesktop.Platform to the commit 5c0dd88790d99d5aee62c9a471a9e38b1b7ccbe6b3f9e144dfc9169821755990 (I'm using Flatpak Steam).
I have also done a clean installation of Fedora Workstation 30 in a virtual machine to check if something on my installation of Fedora Silverblue 30 causes the error in question, but the issue persisted. However, I do not recall encountering this error 10 days ago when I was still using Fedora Workstation 30. I'm looking forward to hearing any clue as to what is to blame even though it might not be in this project's scope to solve it.

@Matoking
Copy link
Owner

Matoking commented Jul 24, 2019

This seems to be out-of-scope for both Protontricks and winetricks, and probably has to do with how curl is installed inside the Flatpak sandbox. I'm guessing libcurl (shared library) and curl (the binary) are both available inside the sandbox, but have different versions.

If you can run protontricks-flat -c "curl --version" <any valid appid here> inside the sandbox, it should print a line like this:

curl 7.65.1 (x86_64-pc-linux-gnu) libcurl/7.65.1 OpenSSL/1.1.1c zlib/1.2.11 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh2/1.8.2 nghttp2/1.36.0

If the version number in curl 7.65.1 is different than the version number in libcurl/7.65.1, that's probably the reason for the error you're seeing.

@ghost
Copy link
Author

ghost commented Jul 24, 2019

Certainly. Nevertheless, I'm determined to find out the cause of this error. I've already contacted Flatpak guys about this error, but they (one person who addressed it) hinted at something else.

As for your hint, I'm getting this output instead:

$ protontricks-flat -c "curl --version" 38400
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename

However, when I start a new shell within the sandbox, and run curl --version, I get the expected output:

$ flatpak run --command=bash com.valvesoftware.Steam
[📦 com.valvesoftware.Steam ~]$ curl --version
curl 7.65.1-DEV (x86_64-unknown-linux-gnu) libcurl/7.65.1-DEV GnuTLS/3.6.7 (NSS/3.43) (OpenSSL/1.1.1c) zlib/1.2.11 libidn2/2.0.5
Release-Date: [unreleased]
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS Debug GSS-API HTTPS-proxy IDN IPv6 Kerberos Largefile libz MultiSSL NTLM NTLM_WB SPNEGO SSL TLS-SRP UnixSockets

But then if I run protontricks with the said shell, the error still persists:

[📦 com.valvesoftware.Steam ~]$ .local/bin/protontricks --gui
winetricks GUI enabled, using zenity 3.30.0
------------------------------------------------------
You are using a 64-bit WINEPREFIX. Note that many verbs only install 32-bit versions of packages. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Using winetricks 20190615-next - sha256sum: 2d3311f8cc0783b747c4e074008e701f2ce844765ba53d2fd4d27126d1df2383 with wine-4.2 and WINEARCH=win64
curl: symbol lookup error: curl: undefined symbol: curl_mime_filename
------------------------------------------------------
Github down? version '' doesn't appear to be a valid version
------------------------------------------------------
winetricks GUI enabled, using zenity 3.30.0

@Matoking
Copy link
Owner

Matoking commented Aug 4, 2019

Sorry for the late reply. I looked into this a bit more and looks like curl loads the shared library provided by Steam Runtime, which has the wrong version. Disabling Steam Runtime for Protontricks inside Flatpak seems to solve the issue.

Try opening your ~/.bashrc and edit the protontricks-flat alias to this:

alias protontricks-flat='flatpak run --env=WINETRICKS=$HOME/winetricks --env=STEAM_RUNTIME=0 --command=.local/bin/protontricks com.valvesoftware.Steam'

Open a new terminal and then check if the command works again.

@ghost
Copy link
Author

ghost commented Aug 4, 2019

It works indeed. Thanks!

@ghost
Copy link
Author

ghost commented Aug 4, 2019

On an unrelated note, I would replace .local/bin/pipx install protontricks with .local/share/python/bin/pipx install protontricks on the wiki page concerning usage with Flatpak Steam. While it's a separate issue, I don't think it deserves more attention.

@Matoking
Copy link
Owner

Matoking commented Aug 5, 2019

On an unrelated note, I would replace .local/bin/pipx install protontricks with .local/share/python/bin/pipx install protontricks on the wiki page concerning usage with Flatpak Steam. While it's a separate issue, I don't think it deserves more attention.

Yeah, I noticed that the path had changed the last time I tried out the Flatpak version of Steam. I've made both changes to the wiki page now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant