1. building 4.6 gives build error
$ make crossgcc-x64 BUILDGCC_OPTIONS=-b CPUS=16 $ make
...
HOSTCC cbfstool/lz4hc.o HOSTCC cbfstool/lz4frame.o /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c: In function 'LZ4F_decompress': /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c:1092:33: error: this statement may fall through [-Werror=implicit-fallthrough=] dctxPtr->dStage = dstage_storeHeader; ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c:1095:9: note: here case dstage_storeHeader: ^~~~ cc1: all warnings being treated as errors util/cbfstool/Makefile.inc:133: recipe for target 'build/util/cbfstool/lz4frame.o' failed make: *** [build/util/cbfstool/lz4frame.o] Error 1
2. built from git master (588ccaa9), crossgcc without -b this time as the build didn't complain about it. seabios doesn't detect my hard drive. I have an older coreboot seabios build that does, so it's probably a software issue.
3. building 4.5 gives build error
configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+. Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify their locations.
I can probably figure that out but if someone knows off the top of their head.
-- Ian Kelling | Senior Systems Administrator, Free Software Foundation GPG Key: B125 F60B 7B28 7FF6 A2B7 DF8F 170A F0E2 9542 95DF https://fsf.org | https://gnu.org
Hi Ian,
Ian Kelling:
- building 4.6 gives build error
$ make crossgcc-x64 BUILDGCC_OPTIONS=-b CPUS=16 $ make
...
HOSTCC cbfstool/lz4hc.o HOSTCC cbfstool/lz4frame.o
/nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c: In function 'LZ4F_decompress': /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c:1092:33: error: this statement may fall through [-Werror=implicit-fallthrough=] dctxPtr->dStage = dstage_storeHeader; ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c:1095:9: note: here case dstage_storeHeader: ^~~~ cc1: all warnings being treated as errors util/cbfstool/Makefile.inc:133: recipe for target 'build/util/cbfstool/lz4frame.o' failed make: *** [build/util/cbfstool/lz4frame.o] Error 1
It's not that you technically ~can't~ build Crossgcc-x64, but that Crossgcc-i386 is generally used. Some boards (quite a few in fact) still use 32-bit-specific code and routines, so I'd recommend not using Crossgcc-x64.
- built from git master (588ccaa9), crossgcc without -b this time as
the build didn't complain about it. seabios doesn't detect my hard drive. I have an older coreboot seabios build that does, so it's probably a software issue.
You should debug this with an EHCI debug dongle, and compare the two logs. A bug report might be helpful if you can reproduce this.
- building 4.5 gives build error
configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+. Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify their locations.
I can probably figure that out but if someone knows off the top of their head.
When I've encountered something like this, it usually arises when you've selected "build with any toolchain" in your config, and then it realizes you've not got the required dependencies. If you've successfully build Crossgcc, then you have no need to select that option, so I'd recommend disabling it.
Maybe it arose from the fact you've build Crossgcc-x64 and it is looking specifically for Crossgcc-i386. Someone else should clarify that.
-- Ian Kelling | Senior Systems Administrator, Free Software Foundation GPG Key: B125 F60B 7B28 7FF6 A2B7 DF8F 170A F0E2 9542 95DF https://fsf.org | https://gnu.org
Best, Duncan
Dear Ian,
Welcome to coreboot!
Am Samstag, den 09.09.2017, 16:31 -0700 schrieb Ian Kelling:
- building 4.6 gives build erro
$ make crossgcc-x64 BUILDGCC_OPTIONS=-b CPUS=16 $ make […] HOSTCC cbfstool/lz4hc.o HOSTCC cbfstool/lz4frame.o /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c: In function 'LZ4F_decompress': /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c:1092:33: error: this statement may fall through [-Werror=implicit-fallthrough=] dctxPtr->dStage = dstage_storeHeader; ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ /nocow/t/coreboot-4.6/util/cbfstool/lz4/lib/lz4frame.c:1095:9: note: here case dstage_storeHeader: ^~~~ cc1: all warnings being treated as errors util/cbfstool/Makefile.inc:133: recipe for target 'build/util/cbfstool/lz4frame.o' failed make: *** [build/util/cbfstool/lz4frame.o] Error 1
Something is wrong with your environment. The error is fixed by commit 54fd92bc (util/cbfstool/lz4frame.c: Add comment to fall through). But as I remember, and as the commit message applaudably documents, this warning is only shown with GCC 7. The coreboot toolchain of the coreboot 4.6 release still uses GCC 6(?), but definitely not 7. I suggest you delete `.xcompile`, and if that doesn’t work, please start from scratch, and give more information. Building with `make V=1` will also show you, what programs get called.
[…]
Thanks,
Paul
The error is fixed by commit 54fd92bc (util/cbfstool/lz4frame.c: Add comment to fall through).
Looks like I'm too late for that commit, but in general, please do not just hack around in the LZ4 files. That code was pulled in verbatim from the upstream source -- if there are issues with it, please instead send a patch to https://github.com/lz4/lz4 and resync our code base to there once it has landed.
Dear Ian,
Am Samstag, den 09.09.2017, 16:31 -0700 schrieb Ian Kelling:
[…]
- built from git master (588ccaa9),
That commit is from April, isn’t it. So it’s pretty outdated.
crossgcc without -b this time as the build didn't complain about it. SeaBIOS doesn't detect my hard drive. I have an older coreboot SeaBIOS build that does, so it's probably a software issue.
I am not aware of any SeaBIOS regressions in this area. But as you didn’t send any logs, which is one of the beauties of using coreboot and SeaBIOS, and don’t even mention the used revisions, it’s hard to help you. Please use the serial console to capture the messages as SeaBIOS, to my knowledge, doesn’t support sending messages over EHCI debug.
Thanks,
Paul
PS: Your signature separator misses a space at the end, so the MUA doesn’t detect the signature, and doesn’t remove it from the reply automatically.
[1] https://en.wikipedia.org/wiki/Signature_block#Signatures_in_Usenet_ postings