-
-
Notifications
You must be signed in to change notification settings - Fork 25
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
libGL Error with Ubuntu 22.04 #95
Comments
What version of GCC is Ubuntu 22.04 using? |
|
|
It seems like it is using |
@hmaarrfk, can you run |
apt-packages.txt |
@hmaarrfk , to fully reproduce what you're seeing, I probably will need the contents of your From AMI
rebooted the vm, fired up a vncserver, installed mambaforge and reran what Mark gave us in the OP for repro instructions. I see the error message about
That happens while the dynamic linker is trying to link&load It looks like the Ubuntu 22.04 readelf -d swrast_dri.so output
And I definitely see the Here's the full output running with |
I guess a good question would be why the linker isn't linking against the libLLVM-13.so we provide? I don't see
I'm going to go look at the clang recipes to see what's up with that. |
It could also be a bug with ubuntu. I'm somewhat testing out the waters before starting to install ubuntu 22.04 on all our computers. I can't seem to find much documentation on It isn't stated in https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html and I can't find documentation from LLVM (though i'm new to using LLVM anyway). |
Looks like the @isuruf which of our packages (if any) are supposed to be supplying the
Maybe, but it seems like we are missing a symlink in our package. |
|
It looks like Ubuntu is ending up with a different SONAME in libLLVM-13.so than we do. This is strange. |
I haven't had a chance to read it all, but it seem quite related to: ValveSoftware/steam-runtime#478 |
Ugh. I guess in their package, the debian folks have a patch that appends .1 onto the shared library SONAME https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/-/blob/11/debian/patches/0044-soname.diff and it looks like they have been doing this for awhile (the last edit to that patch was ~2 years ago). Looks like it was originally added in https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/-/commit/2009781b418f26cb44848187fa749dcde9fb0d08 and there's not really a reason given in the commit message although, looking at the details of the commit, they had been moving the library filename around to add the .1 suffix prior to that but the actual SONAME stored in the ELF didn't have the .1 suffix before that commit. Looks like they started adding the .1 suffix to their libLLVM before they moved the package recipe into https://salsa.debian.org/pkg-llvm-team/llvm-toolchain So, I retract what I said about needing to tweak https://github.com/conda-forge/llvmdev-feedstock/blob/e779e84bfa61bf2fdf62ff3660b2dc2579ed9c53/recipe/install_llvm.sh#L16-L18. We aren't dropping a symlink that LLVM thinks we should have, the debian folks are imposing their own definition of SONAME on libLLVM. |
I guess what ubuntu is doing isn't any worse than Centos/RHEL:
|
This issue is that we are not shipping |
Thanks for chiming in @isuruf |
@isuruf, I started looking at opening a PR to update the recipe to provide
I'll create a PR that targets the rc channel with the latest snapshot of gcc12 branch. |
Ah. Never mind then. @hmaarrfk, your only option is to delete |
And I guess after looking at https://conda-forge.org/docs/maintainer/knowledge_base.html#pre-release-version-sorting again that I should name the version 12.0.1dev20220403? Seems a little strange that Ubuntu is shipping pre-release libstdc++ in 22.04 given that gcc 12 won't release before 22.04 comes out of beta. |
Yeah, looking at what it would take to create a dev version of the ctng_compilers_feedstock, I'd rather hold off until gcc12 is released in a few months... |
hmm. Ok. I understand and likely agree that I jumped the boat too early. Would a solution for me be to: |
|
Can i maybe depend on the user_agent?
|
Not at the moment. |
You can create an empty |
Thank you all for your help troubleshooting this. I'm not sure if we will be able to miss this bug. I think many people will install ubuntu 22.04 in late april. Well given the constraints of time, our desired effort to support experimental gcc, I'm going to upload my own libstdcxx-ng to my channel. Users that want that can copy the file can do so from It was generated with the following meta package:
name: libstdcxx-ng
version: 12.0.1+ubuntu2204
build:
number: 0
skip: True # [not linux]
requirements:
host:
- __glibc=2.35=0
about:
summary: Dummy files for libstdc++ for compatibility with Ubuntu 22.04
extra:
recipe-maintainers:
- hmaarrfk Then ran with:
|
gcc 12 will be released in late April, so we can just wait. |
@ShantanuKodgirwar can you post your environment (i.e. the output of conda list?) and your exact error? Thanks! |
Sure. Although I am actually using a poetry virtual environment. So I'll give that list. First of all the error message which is really same as OP.
Here is the result of
|
If you are using If you want to debug your problem, I suggest to run your code with |
I swapped up the environment with a conda environment and I face the same error. |
Then can you provide the conda list and the output of |
I am sorry. I am not well versed with libGL. I tried to write
The output of
|
You need to write |
Ahhh. Gotcha. :) The full error message after the command gives this
|
The relevant message is:
From the version numbers, I guess you are using the |
I have the same issue just trying to plot with matplotlib on a Windows 11, WSL2 installed Python:
And I get the error message:
|
As mentioned in |
$ conda list packages in environment at /home/homero/software/miniconda3:Name Version Build Channel_libgcc_mutex 0.1 main |
$ python te.py |
te.py is the file with the code I mentioned in #95 (comment) |
@homerobse, you are not using conda-forge. Please open an issue with anaconda where you get the packages. |
Thanks for looking into it. Can you give me a little more detail of how to fix it? What exactly should I change to be using conda-forge and how can I do that? This error happens both in my base conda environment and in others. |
Please read this doc |
Thank you. I have done that and it works for environments that are not the base. How can I change my base environment to use libGL from conda-forge? |
If you are not interested to use the |
Thanks. I will take a look. Regarding starting an issue at Anaconda: which repository from among https://github.com/Anaconda-Platform should I use to start an issue? |
I have found a way that doesn't involve using mamba. After adding conda-forge channel by It solved my problem at the |
I received a similar error when calling
This was the error I received even though the plot gets displayed:
The solution I found is in this stack overflow post: and it's simply to edit the
|
This resolved the issue for me. I'm running wsl2, with ubuntu 22.10, and just installed the latest version of anaconda on the system. |
Thanks @pwaltman gcc --version |
Thank you so much @pwaltman. After hours of searching this was the solution to my problem. Running Open3D Visualizer using Windows 10, WSL2. I had the following error message even though
|
Thanks @pwaltman I use:gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 |
Comment:
Solution to issue cannot be found in the documentation.
Issue
It seems that Ubuntu 22.04 doesn't play well with openGL from conda-forge.
While the plot shows up, other hardware accelerate stuff (like using vispy) doesn't work. I didn't know where else to post this so I figured I would post it to matplotlib since it seems to have rather high visibility into these issues.
Installed packages
Environment info
xref: conda-forge/matplotlib-feedstock#318
My solution was to delete the files
And let things fall back on the the
libstdc++.so
provided by ubuntu. seems to work :/The text was updated successfully, but these errors were encountered: