ludo@gnu.org (Ludovic Courtès) writes: > Kei Kebreau skribis: > >> + ;; Ensure that Maxima will have access to GCC and its required >> + ;; components at runtime. > > In fact, if it’s an optional feature, it would be better to take GCC & > co. from $PATH, because GCC is a huge dependency. (Same for the gcl > change.) > > Thoughts? > I started on this patchset because Guix's Maxima cannot graph functions. This feature relies on GCL's 'compile' function. The 'compile' function seems to be a Common Lisp standard since at least the publication of the CLtL2 standard. Maxima assumes (correctly) that this function is present and relies on it for various base functionalities (compiling Maxima math functions to compiled Lisp functions, graphing, etc.). I turns out that fixing the underlying issue with GCL removes the need for GCC's presence at runtime, but binutils is still necessary due to Maxima using the 'compile' function from GCL directly. This stems from the GCC package not finding the binutils at runtime, i.e. guix environment --pure --ad-hoc gcc -- gcc hello-world.c returns gcc: error trying to exec 'as': execvp: No such file or directory but guix environment --pure --ad-hoc gcc -- gcc -S hello-world.c compiles hello-world.c to its assembly language equivalent. Whether or not this is intended is unclear to me. FWIW, if the GCC package itself has access to the binutils at runtime, wrapping GCL and Maxima is unnecessary. > Ludo’.