[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Add PCB.
From: |
Mark H Weaver |
Subject: |
Re: [PATCH] Add PCB. |
Date: |
Wed, 11 Mar 2015 12:39:08 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) |
address@hidden (Taylan Ulrich "Bayırlı/Kammer") writes:
> address@hidden (Ludovic Courtès) writes:
>
>> Ricardo Wurmus <address@hidden> skribis:
>>
>>> In packaging PCB I noticed that our Mesa package loads a few libraries
>>> with dlopen() but does not use absolute paths to store items. In the
>>> case of PCB, dlopen("libudev.so.0") fails and causes "pcb" die on
>>> startup with a segfault. To prevent this until the Mesa package is
>>> fixed I wrapped the executable.
>>
>> OK. Feel free to fix MESA eventually. :-)
>
> Is anyone working on this? Otherwise I'll look into it because I
> noticed mplayer2 has the same issue.
>
> Some basic help is appreciated by the way. How do we generally handle
> dlopen() uses in Guix?
>
> Does our rpath stuff not fix the issue, and why?
dlopen doesn't consult rpaths.
> When the argument is a literal string, I suppose we can patch it to be
> an absolute pathname.
Yes, when we can do this, it is usually the preferred approach.
> And when it's parameterized? E.g. when a program
> uses a private wrapper function around dlopen(), then I guess I should
> track all uses of that wrapper function?
Ideally, yes. However, it may not always be possible.
> How about when the program dlopen()s a library of its own? Should it be
> made an absolute path to the package's output directory?
Ideally, yes.
Thanks!
Mark