Opened 8 years ago
Closed 7 years ago
#1121 closed task (fixed)
Build target fs musl at the start of chapter 5
Reported by: | Andrew Bradford | Owned by: | Andrew Bradford |
---|---|---|---|
Priority: | major | Milestone: | CLFS Embedded 1.0.0 |
Component: | BOOK | Version: | CLFS Embedded GIT |
Keywords: | Cc: |
Description
In chapter 5, after creating the passwd and log files (http://clfs.org/view/clfs-embedded/arm/final-system/creatingfiles.html) we should build musl again and install into the targetfs then.
This will remove the need to copy over libraries at the end of the book (http://clfs.org/view/clfs-embedded/arm/cleanup/copylibs.html). Instead, we would just copy the entire targetfs out and delete the static libs and header files before writing to the target.
This will require using gcc's --sysroot=<targetfs directory> option when setting the toolchain vars (http://clfs.org/view/clfs-embedded/arm/cross-tools/toolchain.html).
This will also fix the issue of musl's loader symlink being deleted by the second pass of building GCC. When GCC's second pass installs, it basically does an ldconfig which will remove stale symlinks, and since musl's loader symlink is an absolute one which points to a (possibly) nonexistent location on the build host, it'll get removed. By installing directly into the targetfs, we'll avoid this, as the loader symlink isn't needed for the cross-tools set of tools.
This should be all fixed up now: http://git.clfs.org/?p=clfs-embedded.git;a=commitdiff;h=4d9350dee0d652a166f532945862327611d628ad;hp=1dfe239904de2fdc9ba43efc698d0e9b7af0d251