If I build lush with -O2 it works. I guess -Os somehow optimizes away or hides the definition of 'stat', so that dynamically loaded modules that uses it can not be linked. But that is just a guess. Reproducible: Always Steps to Reproduce: 1. emerge lush with CFLAGS containing -Os 2. start lush 3. type (libload "libc/stdio") Actual Results: ? (libload "libc/stdio") [stdio.lsh] [idx-macros.lsh] Dynamically loaded module could not be made executable. The following symbols are used but not defined: stat Expected Results: ? (libload "libc/stdio") [stdio.lsh] [idx-macros.lsh] = "/usr/share/lush/lsh/libc/stdio.lsh" gcc version 4.3.4
Why is this a gentoo bug?
(In reply to comment #1) > Why is this a gentoo bug? I think some gentoo packages override CFLAGS and enforce e.g. -O2 during the build. I have no idea if that is appropriate for lush, but I think just having the explanation and a workaround in the bug tracker where others can find it if they fail to emerge lush is worthwhile. I just wanted to try lush. If I ever start using it more seriously I can investigate and send a more elaborate report of whatever I find to wherever it should go.
Hm, now I think that I can understand you. Thank you for reporting this, and it will stay in bugzilla as a reference. Please paste your emerge --info output, and I will try to reproduce the error.
Created attachment 225563 [details] emerge --info
RESOLVED, WONTFIX. Package removed from the main tree. For more information, please see bug #337963 .