On 12 Feb 2018, at 15:18, John Paul Adrian Glaubitz
> On 02/12/2018 04:16 PM, Holger Levsen wrote:
>> Downgrading the bug to normal, though I guess you can also close it. The
>> openjdk packages have the same issue. (But maybe you want to keep it
>> open to implement a message to the user saying "arg, /proc not mounted,
>> but we need it, aborting" or some such.)
> The Rust compiler has the same issue. Without /proc, it won't be able
> to find it's shared libraries. I'm not 100% sure, but I guess it's
> an issue when using dlopen() to load the libraries afterwards, but I never
> bothered to look into the details.
Ok, found it: _dl_get_origin tries to readlink /proc/self/exe to find the value
of $ORIGIN, falling back on the (empty) LD_ORIGIN_PATH environment variable
when that fails; I assume it does this instead of using readlink on the value of
AT_EXECFN in auxv due to the possible race condition.
This isn't really a bug in ghc, as it's a system limitation, though I guess for
Debian we could avoid the use of $ORIGIN as we know where ghc will be
installed, though given ghc-stageX are executed during the build that might be
awkward without either re-linking or setting LD_LIBRARY_PATH (or equivalent).