Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 302400 - toolchain-prefix-wrapper plugin thingy should not filter libpath on Interix
Summary: toolchain-prefix-wrapper plugin thingy should not filter libpath on Interix
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: x86 Interix
: High normal (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-27 06:18 UTC by Greg Turner
Modified: 2010-01-27 19:51 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
dont filter libpaths on interix (binutils-config-2-interix-libpath.patch,653 bytes, patch)
2010-01-27 06:19 UTC, Greg Turner
Details | Diff
ebuild patch (binutils-config-2-r00.1_ebuild.patch,467 bytes, patch)
2010-01-27 06:19 UTC, Greg Turner
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Greg Turner 2010-01-27 06:18:30 UTC
In sys-devel/binutils-config, in ld/gnuplugin.c (~ line 130), library paths are removed if they are provided by -rpath to ld.  However, this is apparently ng on Interix, where apparently -rpath foo_dir does not imply -Lfoo_dir.  The end result is that libtool builds fail to relink during portage staging ("cannot find -lfoobarbaz").

Perhaps this is because Interix uses an ancient ld.  I hope I have understood the problem correctly... regardless, the enclosed patches fix it, whatever the true etiology :)

Reproducible: Always

Steps to Reproduce:
i.e.: emerge orbit
Actual Results:  
cannot find -lgmodule-2.0 or similar during install phase ("please relink with above options").

Expected Results:  
success
Comment 1 Greg Turner 2010-01-27 06:19:24 UTC
Created attachment 217545 [details, diff]
dont filter libpaths on interix
Comment 2 Greg Turner 2010-01-27 06:19:58 UTC
Created attachment 217547 [details, diff]
ebuild patch
Comment 3 Markus Duft (RETIRED) gentoo-dev 2010-01-27 08:57:00 UTC
hey :) thanks for the patch. i'm thinking about resolving this problem somewhere else (sys-devel/binutils brings a shell script wrapper specifically for interix, look at sys-devel/binutils/files/2.18-ldwrap-interix.sh, and/or the binutils-2.18 ebuild).

also, i suspect that something must have gone wrong somewhere:
 1) it always worked, until now (i just had the same problem, when i saw the bug)
 2) in the binutils ebuild, there is a comment about inserting the PREFIX as
    search dir in the linker scripts, but it is not done (anymore?).

... searching the files history ... :) hmm... nothing found. could be that this part is missing ever since. i added something. could you update binutils, and try again?
Comment 4 Markus Duft (RETIRED) gentoo-dev 2010-01-27 08:58:34 UTC
aww... i just realized what caused this problem, and why this is not with every single package: older libtool (older than 2.2.6) did not relink on interix! pfff... a very well hidden bug ;) should be fixed with the linker scripts now though...
Comment 5 Fabian Groffen gentoo-dev 2010-01-27 19:42:52 UTC
Erhm, there is nothing Interix specific here.  This is just a bug introduced in the last version because we tried to optimize things here.  The "don't add" block should be removed completely, because no platform I know implicitly adds -L for -rpath/-R entries.
Comment 6 Fabian Groffen gentoo-dev 2010-01-27 19:51:50 UTC
presumably fixed in binutils-config-2-r00.2.ebuild