08.02.2024 15:32:44 CET Jesse: > Thanks for taking a look Carlo! > > On 2/7/24 22:37, Carlo Zancanaro wrote: > > Hi Jesse, > > > > I know very little about what you're trying to do, but there's one thing > > that looked wrong to me: > > > > On Wed, Feb 07 2024, Jesse wrote: > >> ... > >> > >> (build-system crosstool-ng) > >> > >> ... > > > > This isn't a build system, right? It's just the package? I think you may > > want crosstool-ng-build-system here.
> > However, now I get this: > > guix build -v3 -L embedded-dev ct-ng-riscv64-unknown-elf > guix build: warning: invalid argument list > guix build: warning: source expression failed to match any pattern > error: crosstool-ng-build-system: unbound variable > hint: Did you forget `(use-modules (embedded-dev build-system > crosstool-ng))'? > > guix build: error: ct-ng-riscv64-unknown-elf: unknown package > > This confuses me a bit because it says that it is an unbound variable > but it is defined in embedded-dev/build-system/crosstool-ng.scm. I > believe I should be importing this module with the "#:use-module > (embedded-dev build-system crosstool-ng)" line in the package file. The > symbol should be exported with: I am just starting to understand how packaging works, but one thing that stands out to me is the #:sample keyword in arguments of the *riscv64* package definition. Where is it defined? Is the source correctly imported? My hypothesis is that guix, upon loading the module in question: 1. fails to parse the #:sample keyword (invalid argument list warning) 2. fails to parse the package definition due to the above (pattern failure) 3. fails to find the package definition due to the above (unbound variable) This problem is educational to me, so give me the benefit of the doubt. Sincerely, Marek Paśnikowski
signature.asc
Description: This is a digitally signed message part.