Hi Richard,
On 2025-05-21 13:34, Richard Clark wrote:
FYI: We were also bitten by this. We had to reinstall the OS and switch to Mint to make it go away. Perhaps consider a fix that will make the error unnecessary. KISS Principle should apply everywhere!
A reinstall wouldn't have been necessary (let alone switching distributions). Just calling `make` from the root of the source (or object) trees would have sufficed. The error itself is actually a useful feature because it prevents sporadic bogus errors on highly parallel builds, if people forget to specify dependencies in the Control file.
However, seeing that this check is causing more issues than it solves I decided to restrict it to those global builds. There it is always ensured that the dependency graph is up-to-date anyways. And there is no expectation that dependencies are automatically build.
So that should restrict the error to cases where there really might be a problem. The change will likely hit the public release in a few days after finalizing internal review and QA.
Best regards,
- Marcus
Richard
-----Original Message----- From: Marcus Hähnel marcus+l4@distos.org Sent: Wednesday, May 21, 2025 3:53 AM To: Tianhao Wang shrik3@mailbox.org Cc: l4-hackers@os.inf.tu-dresden.de Subject: Re: fail to build package with l4re snapshot
Hi,
On 2025-05-20 18:56, Tianhao Wang via l4-hackers wrote:
[…] 4. and try to build it
$ cd myfirstpkg $ make O=/PATH/TO/SNAPSHOT/obj/l4/x86error output:
[myfirstpkg] ... Building Dependencies path/to/src/l4/mk/binary.inc:396: *** /tmp/myfirstpkg/Makefile:'stdlibs compiler-rt' in REQUIRES_LIBS in Makefile but not in Control file requires. Stop. make: *** [path/to/src/l4/mk/binary.inc:195: path/to/obj/l4/x86/ext-pkg/tmp/myfirstpkg/OBJ-x86_gen-std-l4f] Error 2
I attempted to add file `Control` to the package root conataining the following but it doesn't work.
requires: stdlibs compiler-rtAm I doing anything wrong in adding a new package? Sorry for the newbie question, I'm learning L4RE :)
You actually did the right thing here! stdlibs should even suffice, since it pulls in the compiler-rt. However, for the L4Re buildsystem to pick up the new Control file you need to call make from the root directory of your l4re source tree at least once. An oldconfig should suffice to rebuild the dependency structure.
So just call `make oldconfig` in the directory `path/to/src/l4/` and you should be all set.
I hope that helped! I'll think about if I can improve that error message and / or maybe make this more intuitive and automated.
Best regards and have fun trying out L4Re!
- Marcus
PS: Also have a look on l4re.org! We have guides and first steps added there that can often help. And if not please let us know what you are missing.
cheers, wth
l4-hackers mailing list -- l4-hackers@os.inf.tu-dresden.de To unsubscribe send an email to l4-hackers-leave@os.inf.tu-dresden.de