* Error when compiling file using Bigloo Scheme [not found] <20220707155649.zmegt2ncimhroxxx.ref@localhost> @ 2022-07-07 15:56 ` Sam Lee 2022-07-08 14:25 ` zimoun 0 siblings, 1 reply; 5+ messages in thread From: Sam Lee @ 2022-07-07 15:56 UTC (permalink / raw) To: guix-devel I installed Bigloo version 4.3g using Guix, but there is always an error when trying to compile a Scheme program: $ bigloo myfile.scm /usr/bin/ld: cannot find -lunistring collect2: error: ld returned 1 exit status Contents of myfile.scm: (module mymodule (main start)) (define (start argv) (display "Hello!") (newline)) Is there something wrong with Bigloo's package definition in Guix? I tried to "solve" the problem by installing libunistring-dev on my OS (sudo apt-get install libunistring-dev). But I get a different error: --8<---------------cut here---------------start------------->8--- $ bigloo myfile.scm /usr/bin/ld: warning: libpcre.so.1, needed by /gnu/store/nnkm3cg8k28c3i2vsclwhkzp3jd6cgxr-bigloo-4.3g/lib/bigloo/4.3g/libbigloo_s-4.3g.so, may conflict with libpcre.so.3 /usr/bin/ld: /gnu/store/nnkm3cg8k28c3i2vsclwhkzp3jd6cgxr-bigloo-4.3g/lib/bigloo/4.3g/libbigloo_s-4.3g.so: undefined reference to `fstat@GLIBC_2.33' /usr/bin/ld: /gnu/store/nnkm3cg8k28c3i2vsclwhkzp3jd6cgxr-bigloo-4.3g/lib/bigloo/4.3g/libbigloo_s-4.3g.so: undefined reference to `lstat@GLIBC_2.33' /usr/bin/ld: /gnu/store/nnkm3cg8k28c3i2vsclwhkzp3jd6cgxr-bigloo-4.3g/lib/bigloo/4.3g/libbigloo_s-4.3g.so: undefined reference to `stat@GLIBC_2.33' collect2: error: ld returned 1 exit status --8<---------------cut here---------------end--------------->8--- ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Error when compiling file using Bigloo Scheme 2022-07-07 15:56 ` Error when compiling file using Bigloo Scheme Sam Lee @ 2022-07-08 14:25 ` zimoun 2022-07-08 15:42 ` Sam Lee 0 siblings, 1 reply; 5+ messages in thread From: zimoun @ 2022-07-08 14:25 UTC (permalink / raw) To: Sam Lee, guix-devel Hi, On jeu., 07 juil. 2022 at 15:56, Sam Lee <samlee746@yahoo.com> wrote: > $ bigloo myfile.scm > /usr/bin/ld: cannot find -lunistring > collect2: error: ld returned 1 exit status Indeed, bigloo requires some packages. This works for me: --8<---------------cut here---------------start------------->8--- $ guix shell -C bigloo libunistring gcc-toolchain libgc pcre \ -- bigloo /tmp/myfile.scm --8<---------------cut here---------------end--------------->8--- where myfile.scm is the same as yours. > (module mymodule > (main start)) > > (define (start argv) > (display "Hello!") > (newline)) Note that it outputs nothing, right? Well, “guix shell -C” is for being sure all the packages required by the bigloo compiler are inside the environment. For regular usage, you can just use “guix shell --pure” or without any special option, or even install all the packages in a profile. Cheers, simon ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Error when compiling file using Bigloo Scheme 2022-07-08 14:25 ` zimoun @ 2022-07-08 15:42 ` Sam Lee 2022-07-08 16:53 ` Liliana Marie Prikler 0 siblings, 1 reply; 5+ messages in thread From: Sam Lee @ 2022-07-08 15:42 UTC (permalink / raw) To: zimoun; +Cc: guix-devel On 2022-07-08 16:25 +0200, zimoun wrote: > On jeu., 07 juil. 2022 at 15:56, Sam Lee <samlee746@yahoo.com> wrote: > > > $ bigloo myfile.scm > > /usr/bin/ld: cannot find -lunistring > > collect2: error: ld returned 1 exit status > > Indeed, bigloo requires some packages. This works for me: > > --8<---------------cut here---------------start------------->8--- > $ guix shell -C bigloo libunistring gcc-toolchain libgc pcre \ > -- bigloo /tmp/myfile.scm > --8<---------------cut here---------------end--------------->8--- Thank you for providing a workaround. When I install Bigloo using Guix, shouldn't all of Bigloo's dependencies be installed by Guix? Why do I need to manually install additional packages? Is there something wrong with Bigloo's package definition in Guix? ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Error when compiling file using Bigloo Scheme 2022-07-08 15:42 ` Sam Lee @ 2022-07-08 16:53 ` Liliana Marie Prikler 2022-07-11 7:29 ` zimoun 0 siblings, 1 reply; 5+ messages in thread From: Liliana Marie Prikler @ 2022-07-08 16:53 UTC (permalink / raw) To: Sam Lee, zimoun; +Cc: guix-devel Am Freitag, dem 08.07.2022 um 15:42 +0000 schrieb Sam Lee: > On 2022-07-08 16:25 +0200, zimoun wrote: > > On jeu., 07 juil. 2022 at 15:56, Sam Lee <samlee746@yahoo.com> > > wrote: > > > > > $ bigloo myfile.scm > > > /usr/bin/ld: cannot find -lunistring > > > collect2: error: ld returned 1 exit status > > > > Indeed, bigloo requires some packages. This works for me: > > > > --8<---------------cut here---------------start------------->8--- > > $ guix shell -C bigloo libunistring gcc-toolchain libgc pcre \ > > -- bigloo /tmp/myfile.scm > > --8<---------------cut here---------------end--------------->8--- > > Thank you for providing a workaround. > > When I install Bigloo using Guix, shouldn't all of Bigloo's > dependencies be installed by Guix? Why do I need to manually install > additional packages? Is there something wrong with Bigloo's package > definition in Guix? We don't typically propagate packages, especially not gcc-toolchain. You should be able to swap that out for any other toolchain, e.g. another version of gcc-toolchain or perhaps even clang-toolchain. I'm not sure about libunistring, libgc and pcre. There is a somewhat similar bug in libgccjit not finding its own object files, which I find rather silly; search paths definitely need adjusting imho. Cheers ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Error when compiling file using Bigloo Scheme 2022-07-08 16:53 ` Liliana Marie Prikler @ 2022-07-11 7:29 ` zimoun 0 siblings, 0 replies; 5+ messages in thread From: zimoun @ 2022-07-11 7:29 UTC (permalink / raw) To: Liliana Marie Prikler, Sam Lee; +Cc: guix-devel On Fri, 08 Jul 2022 at 18:53, Liliana Marie Prikler <liliana.prikler@gmail.com> wrote: > We don't typically propagate packages, especially not gcc-toolchain. > You should be able to swap that out for any other toolchain, e.g. > another version of gcc-toolchain or perhaps even clang-toolchain. I'm > not sure about libunistring, libgc and pcre. There is a somewhat > similar bug in libgccjit not finding its own object files, which I find > rather silly; search paths definitely need adjusting imho. Well, indeed the convention is to not propagate some packages. For instance, it is similar with Haskell: the installation of GHC “guix shell ghc” is not enough to have a working Haskell environment; it is also required other packages as gcc-toolchain. As I wrote elsewhere [1], I think Guix should provide ready-to-use “compiler” toolsuite. Other said, something like “bigloo-toolchain” or “haskell-toolchain” or etc. First, it eases the usuability; hiding plumbing details. Second, it eases the “swap out”; the application of a transformation appears to me much easier because all is explicit instead of having beforehand an implicit knowledge on the “compiler” itself. Somehow, it was the rationale behind gcc-toolchain or gfortran-toolchain. Cheers, simon 1: <https://yhetil.org/guix/CAJ3okZ0i0DjQMzgJ9WwzDC2tKc8WeTZxqW46KH+vq9zKbgBzhQ@mail.gmail.com> ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-07-11 7:32 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <20220707155649.zmegt2ncimhroxxx.ref@localhost> 2022-07-07 15:56 ` Error when compiling file using Bigloo Scheme Sam Lee 2022-07-08 14:25 ` zimoun 2022-07-08 15:42 ` Sam Lee 2022-07-08 16:53 ` Liliana Marie Prikler 2022-07-11 7:29 ` zimoun
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/guix.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.