On 5/5/20 5:49 AM, Firas Khalil Khana via lfs-dev wrote:
@Xi,

Thanks for taking the time to explain everything, much appreciated!


> Then it will be stupidly inconvenience typing commands.

It will still get you through until bash is rebuilt again in Chapter 6, with no problems.

That being said, I think Ncurses can't be dropped in Chapter 5 because Python in Chapter 5 depends on it (which is needed to get Chapter 6 Glibc to build).


> There is some circular dependency between bison and gettext so it's impossible
> to build both of them only once. It's #4634.
I've checked this issue and it isn't related to what I've mentioned.
I mentioned that the final list in Chapter 5 won't contain Bison, Gettext and Flex, but instead they will be rebuilt early on in Chapter 6 in correct order (Gettext -> Bison -> Flex (-> Bison (Optional for the circular dependency)), so Bison will get to be built before Gettext and in Chapter 6, so #4634 shouldn't appear. > Pierre just added them so Chap. 6 binutils can link to libfl.so. It's #4631. Again instead of adding more to Chapter 5, just reorder some packages in Chapter 6 to be built early on. In the list I've suggested, both Bison and Flex will be built before binutils so I don't see how #4631 will happen.
> To avoid more ICA issues we don't want to move many things too "early".
I'm afraid I'm not familiar with this term. I couldn't find it in the "Acronyms and Terms" appendix as well. You mean breakages?


> Your distro your rules.
I was just pointing out the existence of hostname (from debian), but keeping coreutils the provider for hostname is better and more logical at this point.


> Also #4634.
Again, 4634 won't happen in the lists I've suggested. There will be no builds of Gettext, Bison and Flex in Chapter 5, and instead they'll be built in the correct order and early on in Chapter 6 (Gettext -> Bison -> Flex (-> Bison for those who want to rebuild Bison again when Flex becomes available)).
> We don't want many packages too be early in Chap. 6.
Why not? Wouldn't it be better and easier to maintain if there were less packages to build, without sacrificing any package but just by simply reordering packages in Chapter 6? Not having to deal with cross packages (like Perl in Chapter 5, for example) is something good.
> But we are using glibc. Again, your distro your rules.
Yes, at this point Python can't be removed from Chapter 5 because it's needed by Glibc in Chapter 6 which is like the third package to be built there.

> We don't want many packages too be early in Chap. 6.
Again why not?

> Wrong. Systemd or eudev depends on lib{uuid,blkid,mount}.so.
Why add Util-linux to Chapter 5, instead of reordering Util-linux to be built before eudev in Chapter 6 then? Again as I said, I think you're doing that to avoid #4637 so I won't argue, but it has to do with how these packages are configured (and that's not the point now).

The other problem is that Util-Linux includes some support files (such as files that go in /usr/lib/tmpfiles.d), that are only installed if systemd is present. However, systemd itself requires Util-Linux (similar to eudev I think, it uses it for libmount and libuuid). The way we've always resolved that is to build Util-Linux in Chapter 5 (previously there were more packages that required it), and then build systemd, and then rebuild Util-Linux afterwards.

- Doug

-- 
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to