I'm struggling to set up Org-Roam on a minimal GUIX set-up. There is an attempt to compile Compiling EmacSQL SQL binary
which throws an error No EmacSQL SQLite binary available
. I have installed both gcc and clang and the correct path (ie. the same as is returned by which gcc
) is found using eg. (executable-find "clang")
(the code tries gcc before clang so I have tried removing the former with the same results). With apologies, I am typing out a couple of lines of the *Backtrace* as my GUIX is a very minimal writing set-up but the first two lines are the following:
error("No EmacSQL SQLite binary available, aborting")
emacsql-sqlite-ensure-binary()
This error is thrown by, for example, running (org-roam-node-find)
The *Backtrace* shows a call to make-instance(emacsql-sqlite-connection :file "~/.emacs.d/org-roam.db")
followed by a number of calls such as apply(#f(compiled-function (&rest args) #<bytecode [...])(#<emacs-sqlite-connection emacsql-sqlite-connection-[...]> (:file "~/.emacs.d/org-roam.db"))
.
A file named emacsql-sqlite.elc (7.4k) exists in a directory in .emacs.d/elpa/emacsql-sqlite-20230118.2015
. Another directory exists in .emacs.d/elpa/ named emacsql-20230118.2020.
These directories are repopulated upon running (org-roam-node-find)
when they are deleted or moved.
Internet searches have thrown up problems with Windows and Mac OS all of which appear to be resolved by installing gcc or clang.