Le 08/11/2022 à 12:39, Wojtek Kosior 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
Perhaps `find /gnu/store/ -name "crt1.o"` will give further hints?
Yes, it is already part of gcc-toolchain (gcc-toolchain-9.4.0/lib/crt1.o)
Adding "-L" flags to gcc does not help
Emmanuel
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.medern...@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.medern...@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