Compilation/linking error during Ch. 6.15 ( Readline 8.0)
by peristaltic from LinuxQuestions.org on (#566K9)
Hello all --
I am currently working through LFS - Version 9.1-systemd.
My host system is Linux Mint 19.3 Cinnamon.
I have had no problems until chapter 6.15 (Readline 8.0)
After executing this make command:
Code:make SHLIB_LIBS="-L/tools/lib -lncursesw"I get the following error message (excerpt of the entire command output):
Code:rm -f libreadline.so.8.0
gcc -shared -Wl,-soname,libreadline.so.8.0 -L./lib/termcap -Wl,-rpath,/usr/lib -Wl,-soname,`basename libreadline.so.8.0 .0` -o libreadline.so.8.0 readline.so vi_mode.so funmap.so keymaps.so parens.so search.so rltty.so complete.so bind.so isearch.so display.so signals.so util.so kill.so undo.so macro.so input.so callback.so terminal.so text.so nls.so misc.so history.so histexpand.so histfile.so histsearch.so shell.so mbutil.so tilde.so colors.so parse-colors.so xmalloc.so xfree.so compat.so -L/tools/lib -lncursesw
/tools/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lncursesw
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:177: libreadline.so.8.0] Error 1
make[1]: Leaving directory '/sources/readline-8.0/shlib'
make: *** [Makefile:219: shared] Error 2I've deleted the source tree and started from scratch. Same thing. I installed libncursesw5-dev on my host system then reentered the chroot and still no luck.
I've read the FAQ and searched the internet and found this post from the mailing list a few years back.
https://lfs-dev.linuxfromscratch.nar...find-lncursesw
Pretty much identical to my problem. But I don't know what the solution is, or if it's in that post I have no idea how to find it. Maybe it has something to do with this wacky path (/tools/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld). I don't want to just try stuff randomly out of fear of breaking something.
Thanks for any ideas or solutions.


I am currently working through LFS - Version 9.1-systemd.
My host system is Linux Mint 19.3 Cinnamon.
I have had no problems until chapter 6.15 (Readline 8.0)
After executing this make command:
Code:make SHLIB_LIBS="-L/tools/lib -lncursesw"I get the following error message (excerpt of the entire command output):
Code:rm -f libreadline.so.8.0
gcc -shared -Wl,-soname,libreadline.so.8.0 -L./lib/termcap -Wl,-rpath,/usr/lib -Wl,-soname,`basename libreadline.so.8.0 .0` -o libreadline.so.8.0 readline.so vi_mode.so funmap.so keymaps.so parens.so search.so rltty.so complete.so bind.so isearch.so display.so signals.so util.so kill.so undo.so macro.so input.so callback.so terminal.so text.so nls.so misc.so history.so histexpand.so histfile.so histsearch.so shell.so mbutil.so tilde.so colors.so parse-colors.so xmalloc.so xfree.so compat.so -L/tools/lib -lncursesw
/tools/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lncursesw
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:177: libreadline.so.8.0] Error 1
make[1]: Leaving directory '/sources/readline-8.0/shlib'
make: *** [Makefile:219: shared] Error 2I've deleted the source tree and started from scratch. Same thing. I installed libncursesw5-dev on my host system then reentered the chroot and still no luck.
I've read the FAQ and searched the internet and found this post from the mailing list a few years back.
https://lfs-dev.linuxfromscratch.nar...find-lncursesw
Pretty much identical to my problem. But I don't know what the solution is, or if it's in that post I have no idea how to find it. Maybe it has something to do with this wacky path (/tools/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld). I don't want to just try stuff randomly out of fear of breaking something.
Thanks for any ideas or solutions.