Opened 13 years ago
Closed 13 years ago
#2943 closed task (wontfix)
slang find ncurses5-config in /tools
Reported by: | Gilles Espinasse | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Book | Version: | SVN |
Severity: | blocker | Keywords: | |
Cc: |
Description
chap5 ncurses is build without --enable-widec
chap6 ncurses is build with --enable-widec
If slang is later compiled, slang-2.2.4 configure search first for ncurses5-config, then if not found search for the wide version (with wrong ncurses5w-config name, not right ncursesw5-config but that's another story)
This result in ncurses5-config to be found in /tools. That work by luck, but is ugly.
The simpliest change is to add in chap6 a symlink from ncursesw5-config to ncurses5-config. No risk. I find later that's what CLFS is doing (but with same file name error as slang with wrong ncursesw5-config name)
Attached patch do that.
Attachments (1)
Change History (6)
by , 13 years ago
Attachment: | chap6-ncurses.patch added |
---|
comment:1 by , 13 years ago
After rebooting into LFS, /tools should not be in the PATH or library path. It should, in fact, be deleted.
Try following the note at the bottom of the ncurses page.http://www.linuxfromscratch.org/lfs/view/development/chapter06/ncurses.html
I'm inclined to close this as WONTFIX, but will give you a chance to respond.
comment:2 by , 13 years ago
After rebooting into LFS, /tools should not be in the PATH or library path. It should, in fact, be deleted.
LFS mostly don't do both to my understanding.
First rebooting is a nightmare for scripting, I don't find where it is actually recommended on LFS book, but that was just a quick grep search. jhalf do not that.
Secondly you can't remove /tools from PATH until packages actually only build on chap5 like tcl/expect/dejagnu/check are rebuild later. Actually LFS don't rebuild them or did I miss something?
I read the note on chap6.4 for ncurses to recompile a non-wide ncurses.
ncurses{w,}5-config is a script, so a symlink from the wide to the non-wide version is all needed for the config file to be found by a program that search first for the non-wide version (and find that on the PATH). Recompiling ncurses for that is totally overkill. The only change is in the name as ncurses/misc/Makefile show
install.libs :: $(DESTDIR)$(bindir) ncurses-config $(INSTALL_SCRIPT) ncurses-config $(DESTDIR)$(bindir)/$(NCURSES_CONFIG)
comment:3 by , 13 years ago
S-Lang is a BLFS program. You should be rebooting at least once after building the LFS packages. At that point, /tools is no longer necessary.
I think you have a specific problem that you can fix, but we don't need to address it in LFS.
comment:4 by , 13 years ago
I am not rebooting between LFS and BLFS like package compilation :
chap5 is only recompiled when needed and packaged after his own build to be reused on later build,
chap6 and BLFS are compiled in one go, that's fast enought, it take need 120 mn on an amd xp2800 when not running tests ( with ccache and make -j1 to have a reproductible log).
It's acceptable for me if krb5 link to /tools tcl for his own tests. I am not inclined to rebuild tcl on BLFS just to be able to remove /tools from PATH after LFS.
But I think it is ugly to find one part of ncurses from chap5 compilation found when that same package is compiled in chap6. The issue is that PATH priority order does not work here because of the difference for ncurses files names from chap5 to chap6. The config symlink simply fix that issue and I personally think that it belong to LFS as ncurses is compiled on chap6 and already have other symlinks to ease wide/non wide detection. Plus until a new slang version is released with fixed name for wide ncurses config, the symlink is the only way to find the file compiled in chap6.
Feel free to close.
comment:5 by , 13 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Fix finding ncurse config file