[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Error using gcc with trivial-build-system
From: |
Wojtek Kosior |
Subject: |
Re: Error using gcc with trivial-build-system |
Date: |
Tue, 8 Nov 2022 12:39:26 +0100 |
> > Hi,
> >
> > I have little experience with Guix packages, but I ran into a similar
> > issue using guix shell --pure recently, and I believe that you need to
> > add glibc to your dependencies.
> >
> > I suppose that guix shell works for you because you already have glibc
> > available in the active profile. I'd expect guix shell --pure to fail
> > with the same error.
>
> Thanks for your idea but no luck, still the same error with glibc added :-/
>
> Emmanuel
Perhaps `find /gnu/store/ -name "crt1.o"` will give further hints?
Good luck!
Wojtek
-- (sig_start)
website: https://koszko.org/koszko.html
PGP: https://koszko.org/key.gpg
fingerprint: E972 7060 E3C5 637C 8A4F 4B42 4BC5 221C 5A79 FD1A
Meet Kraków saints! #10: blessed Hilary Januszewski
Poznaj świętych krakowskich! #10: błogosławiony Hilary Januszewski
https://pl.wikipedia.org/wiki/Hilary_Januszewski
-- (sig_end)
On Tue, 8 Nov 2022 11:58:41 +0100
Emmanuel Medernach <Emmanuel.Medernach@iphc.cnrs.fr> wrote:
> Le 08/11/2022 à 11:45, Sergiu Ivanov a écrit :
> > Hi,
> >
> > I have little experience with Guix packages, but I ran into a similar
> > issue using guix shell --pure recently, and I believe that you need to
> > add glibc to your dependencies.
> >
> > I suppose that guix shell works for you because you already have glibc
> > available in the active profile. I'd expect guix shell --pure to fail
> > with the same error.
>
> Thanks for your idea but no luck, still the same error with glibc added :-/
>
> Emmanuel
>
>
> > -
> > HTH,
> > Sergiu
> >
> >
> > Emmanuel Medernach <Emmanuel.Medernach@iphc.cnrs.fr>
> > [2022-11-08T11:23:16+0100]:
> >> Hello Guix,
> >>
> >> I have a local package with a compile script that
> >> I need to add to our local GUIX packages.
> >>
> >> I tried to use trivial-build-system with
> >> gcc-toolchain input, all works well when I compile
> >> it manually in a 'guix shell' but when I try to
> >> define a package I ran into this error:
> >>
> >> ld: cannot find crt1.o: No such file or directory
> >> ld: cannot find crti.o: No such file or directory
> >> collect2: error: ld returned 1 exit status
> >>
> >> I cannot produce correct binaries with
> >> gcc-toolchain, here is a minimal package
> >> definition with the above problem. Could you
> >> please tell me how to solve this problem ?
> >>
> >> (define-public SimpleTest
> >> (package
> >> (name "SimpleTest")
> >> (version "0.0.0")
> >> (source
> >> (origin
> >> (method url-fetch)
> >> (uri ".../simpletest.tgz")
> >> (sha256
> >> (base32 "0nx8dgs5n4s1alp8lnp7a96czdll8bb7ljbg152yk7m0mr07728d"))))
> >> (inputs `(("gcc-toolchain" ,gcc-toolchain-9)
> >> ("gzip" ,gzip)
> >> ("tar" ,tar)))
> >> (build-system trivial-build-system)
> >> (arguments
> >> `(#:modules
> >> ((guix build utils))
> >> #:builder
> >> (begin
> >> (use-modules (guix build utils))
> >>
> >> (let* ((source (assoc-ref %build-inputs "source"))
> >> (out (assoc-ref %outputs "out"))
> >> (gzip (assoc-ref %build-inputs "gzip"))
> >> (gunzip-bin (string-append gzip "/bin/gunzip"))
> >> (tar (assoc-ref %build-inputs "tar"))
> >> (tar-bin (string-append tar "/bin/tar"))
> >> (gcc-dir (assoc-ref %build-inputs "gcc-toolchain"))
> >> (gcc-bin (string-append gcc-dir "/bin/gcc")))
> >>
> >> (let* ((packages (alist-delete "source" %build-inputs))
> >> (packages-path (map cdr packages)))
> >> (setenv
> >> "PATH"
> >> (apply
> >> string-append
> >> (getenv "PATH") ":"
> >> (map (lambda (p) (string-append p "/bin:"))
> >> packages-path))))
> >>
> >> ;; (setenv "GCC_EXEC_PREFIX" gcc-dir)
> >> ;; gcc: fatal error: cannot execute 'cc1': execvp: No such
> >> file or directory
> >>
> >> (display (list "gcc-bin" gcc-bin)) (newline)
> >>
> >> (mkdir-p out) (chdir out)
> >> (copy-file source "simpletest.tar.gz")
> >> (invoke gunzip-bin "simpletest.tar.gz")
> >> (invoke tar-bin "xvf" "simpletest.tar")
> >> (delete-file "simpletest.tar")
> >> (chdir "simpletest")
> >> (invoke gcc-bin "simpletest.c" "-o" "simpletest")
> >>
> >> #t))))
> >>
> >> (synopsis "Simple Test")
> >> (description "Simple Test")
> >> (home-page "None")
> >> (license license:gpl3+)))
> >>
> >> Best regards,
> >>
> >> Emmanuel Medernach
>
pgpsKXcxlhBkg.pgp
Description: OpenPGP digital signature