Closed gabm closed 4 years ago
Basically the rpath is not set for libGL.so
and others
on build 102:
objdump -x libGL.so | grep RPATH
RPATH $ORIGIN/../../../../lib
but on build 103 its empty
objdump -x libGL.so | grep RPATH
@isuruf Should we turn binary relocation back on?
No. the recipe is wrong. - xorg-libxext # [linux]
should be turned in to a CDT.
Ok. We have that one already built so should be an easy fix.
Can you explain why here or what is going on or how that fixes it?
I guess the general rule is to not link stuff in the sysroot to builds outside of the sysroot?
Yeah, a bit of clarification might be useful here.
I suppose @beckermr is right, link nothing from sysroot to outside, it should be self-contained...
So the rule would be:
Is that so? @isuruf
CDT packages should link with CDT packages. Qt was relying on CDT packages linking with conda packages which is not guaranteed to work.
Meanwhile I confirmed your fix: with the following recipe it works:
requirements:
build:
- {{ compiler("c") }}
- {{ compiler("cxx") }}
- {{ cdt('mesa-libgl-devel') }} # [linux]
- {{ cdt('mesa-dri-drivers') }} # [linux]
- {{ cdt('libselinux') }} # [linux]
- {{ cdt('libxdamage') }} # [linux]
- {{ cdt('libxfixes') }} # [linux]
- {{ cdt('libxxf86vm') }} # [linux]
- {{ cdt('libxext') }} # [linux]
- cmake
- make # [unix]
host:
- qt
run:
- qt
Okay, thank you for clarification!
I just remembered this docs page exists too: https://conda-forge.org/docs/maintainer/knowledge_base.html#libgl
looks like we have converged on the correct solution
Issue: A build that depends on qt and worked before merging #23 broke on linux-64 for me. The recipe looks like this:
The build fails with:
The resolved envrionment between yesterday (when it worked) and today (that it failed) differes in
Environment (
conda list
):Details about
conda
and system (conda info
):