Re: Building Guilemacs
If someone wanted to rebase the emacs side of the guile-emacs fork... I think that would be great :) Wilfred Hughes writes: > Digging some more, I think the issue is > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=24065 . Emacs trunk is > depending on undefined C behaviour, which gcc 5 has started optimising, > breaking the code. > > I've updated https://www.emacswiki.org/emacs/GuileEmacsBuild to note this. > You can work around with -fno-builtin-malloc or simply compile with clang > (my current solution). > > Emacs trunk has fixed this (in 4b1436b702d56eedd27a0777fc7232cdfb7ac4f6 > IIUC), but I believe that commit does not exist in the guile-emacs fork. > > Wilfred > > On 4 September 2016 at 04:48, Stefan Husmann> wrote: > >> Wilfred Hughes writes: >> >> > I've had a play with the AUR packages too. The guile4emacs PKGBUILD works >> > perfectly, but the guile-emacs build process segfaults when >> bootstrap-emacs >> > attempts to load calendar/cal-loaddefs.el: >> > >> > make[2]: Leaving directory >> > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' >> > if test "yes" = "yes"; then \ >> > rm -f bootstrap-emacs; \ >> > ln temacs bootstrap-emacs; \ >> > else \ >> > ./temacs --batch --load loadup bootstrap || exit 1; \ >> > test "X" = X || -zex emacs; \ >> > mv -f emacs bootstrap-emacs; \ >> > fi >> > make -C ../lisp autoloads EMACS="../src/bootstrap-emacs" >> > make[2]: Entering directory >> > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' >> > EMACSLOADPATH= '../src/bootstrap-emacs' -batch --no-site-file >> > --no-site-lisp -l autoload \ >> >--eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \ >> >--eval "(setq generated-autoload-file (expand-file-name >> > (unmsys--file-name \"calendar/cal-loaddefs.el\")))" \ >> >-f batch-update-autoloads ./calendar >> > make[2]: *** [Makefile:466: calendar/cal-loaddefs.el] Segmentation fault >> > (core dumped) >> > make[2]: Leaving directory >> > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' >> > make[1]: *** [Makefile:805: ../lisp/loaddefs.el] Error 2 >> > make[1]: Leaving directory >> > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/src' >> > make: *** [Makefile:376: src] Error 2 >> > ==> ERROR: A failure occurred in build(). >> > Aborting... >> > >> > Any suggestions? >> > >> > On 30 August 2016 at 20:32, Wilfred Hughes wrote: >> > >> Hello, >> >> I can confirm this, but currently have no ideas what is going on >> here. This definitely used to work, but gcc was updated since then. >> >> Sorry for inconveniance. I will try to dig deeper into it. >> >> Best Regards >> >> Stefan >>
Re: Building Guilemacs
Digging some more, I think the issue is http://debbugs.gnu.org/cgi/bugreport.cgi?bug=24065 . Emacs trunk is depending on undefined C behaviour, which gcc 5 has started optimising, breaking the code. I've updated https://www.emacswiki.org/emacs/GuileEmacsBuild to note this. You can work around with -fno-builtin-malloc or simply compile with clang (my current solution). Emacs trunk has fixed this (in 4b1436b702d56eedd27a0777fc7232cdfb7ac4f6 IIUC), but I believe that commit does not exist in the guile-emacs fork. Wilfred On 4 September 2016 at 04:48, Stefan Husmannwrote: > Wilfred Hughes writes: > > > I've had a play with the AUR packages too. The guile4emacs PKGBUILD works > > perfectly, but the guile-emacs build process segfaults when > bootstrap-emacs > > attempts to load calendar/cal-loaddefs.el: > > > > make[2]: Leaving directory > > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' > > if test "yes" = "yes"; then \ > > rm -f bootstrap-emacs; \ > > ln temacs bootstrap-emacs; \ > > else \ > > ./temacs --batch --load loadup bootstrap || exit 1; \ > > test "X" = X || -zex emacs; \ > > mv -f emacs bootstrap-emacs; \ > > fi > > make -C ../lisp autoloads EMACS="../src/bootstrap-emacs" > > make[2]: Entering directory > > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' > > EMACSLOADPATH= '../src/bootstrap-emacs' -batch --no-site-file > > --no-site-lisp -l autoload \ > >--eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \ > >--eval "(setq generated-autoload-file (expand-file-name > > (unmsys--file-name \"calendar/cal-loaddefs.el\")))" \ > >-f batch-update-autoloads ./calendar > > make[2]: *** [Makefile:466: calendar/cal-loaddefs.el] Segmentation fault > > (core dumped) > > make[2]: Leaving directory > > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' > > make[1]: *** [Makefile:805: ../lisp/loaddefs.el] Error 2 > > make[1]: Leaving directory > > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/src' > > make: *** [Makefile:376: src] Error 2 > > ==> ERROR: A failure occurred in build(). > > Aborting... > > > > Any suggestions? > > > > On 30 August 2016 at 20:32, Wilfred Hughes wrote: > > > Hello, > > I can confirm this, but currently have no ideas what is going on > here. This definitely used to work, but gcc was updated since then. > > Sorry for inconveniance. I will try to dig deeper into it. > > Best Regards > > Stefan >
Re: Building Guilemacs
Wilfred Hugheswrites: > I've had a play with the AUR packages too. The guile4emacs PKGBUILD works > perfectly, but the guile-emacs build process segfaults when bootstrap-emacs > attempts to load calendar/cal-loaddefs.el: > > make[2]: Leaving directory > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' > if test "yes" = "yes"; then \ > rm -f bootstrap-emacs; \ > ln temacs bootstrap-emacs; \ > else \ > ./temacs --batch --load loadup bootstrap || exit 1; \ > test "X" = X || -zex emacs; \ > mv -f emacs bootstrap-emacs; \ > fi > make -C ../lisp autoloads EMACS="../src/bootstrap-emacs" > make[2]: Entering directory > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' > EMACSLOADPATH= '../src/bootstrap-emacs' -batch --no-site-file > --no-site-lisp -l autoload \ >--eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \ >--eval "(setq generated-autoload-file (expand-file-name > (unmsys--file-name \"calendar/cal-loaddefs.el\")))" \ >-f batch-update-autoloads ./calendar > make[2]: *** [Makefile:466: calendar/cal-loaddefs.el] Segmentation fault > (core dumped) > make[2]: Leaving directory > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' > make[1]: *** [Makefile:805: ../lisp/loaddefs.el] Error 2 > make[1]: Leaving directory > '/home/wilfred/aur/guile-emacs-git/src/guilemacs/src' > make: *** [Makefile:376: src] Error 2 > ==> ERROR: A failure occurred in build(). > Aborting... > > Any suggestions? > > On 30 August 2016 at 20:32, Wilfred Hughes wrote: > Hello, I can confirm this, but currently have no ideas what is going on here. This definitely used to work, but gcc was updated since then. Sorry for inconveniance. I will try to dig deeper into it. Best Regards Stefan
Re: Building Guilemacs
I've had a play with the AUR packages too. The guile4emacs PKGBUILD works perfectly, but the guile-emacs build process segfaults when bootstrap-emacs attempts to load calendar/cal-loaddefs.el: make[2]: Leaving directory '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' if test "yes" = "yes"; then \ rm -f bootstrap-emacs; \ ln temacs bootstrap-emacs; \ else \ ./temacs --batch --load loadup bootstrap || exit 1; \ test "X" = X || -zex emacs; \ mv -f emacs bootstrap-emacs; \ fi make -C ../lisp autoloads EMACS="../src/bootstrap-emacs" make[2]: Entering directory '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' EMACSLOADPATH= '../src/bootstrap-emacs' -batch --no-site-file --no-site-lisp -l autoload \ --eval "(setq generate-autoload-cookie \";;;###cal-autoload\")" \ --eval "(setq generated-autoload-file (expand-file-name (unmsys--file-name \"calendar/cal-loaddefs.el\")))" \ -f batch-update-autoloads ./calendar make[2]: *** [Makefile:466: calendar/cal-loaddefs.el] Segmentation fault (core dumped) make[2]: Leaving directory '/home/wilfred/aur/guile-emacs-git/src/guilemacs/lisp' make[1]: *** [Makefile:805: ../lisp/loaddefs.el] Error 2 make[1]: Leaving directory '/home/wilfred/aur/guile-emacs-git/src/guilemacs/src' make: *** [Makefile:376: src] Error 2 ==> ERROR: A failure occurred in build(). Aborting... Any suggestions? On 30 August 2016 at 20:32, Wilfred Hugheswrote: > > I think the variables you mentioned are for building in your home > > directory only. If you build system-wide, for instance under /usr/local > > -- and your mail makes me think you do so -- you should not need them. > > I wanted to build them in my home directory. I already have Guile installed > and I didn't want to get things confused. > > > I have made some packaging recipes for Arch Linux, and there it works > > without specifing these variables. > > > > https://aur.archlinux.org/packages/guile-emacs-git/ (for emacs) > > https://aur.archlinux.org/packages/guile4emacs-git/ (for guile) > > Oh, that's really useful, thanks. I'll have a look at those for > reference (and I've documented them on the GuileEmacsBuild wiki > build). >
Re: Building Guilemacs
> I think the variables you mentioned are for building in your home > directory only. If you build system-wide, for instance under /usr/local > -- and your mail makes me think you do so -- you should not need them. I wanted to build them in my home directory. I already have Guile installed and I didn't want to get things confused. > I have made some packaging recipes for Arch Linux, and there it works > without specifing these variables. > > https://aur.archlinux.org/packages/guile-emacs-git/ (for emacs) > https://aur.archlinux.org/packages/guile4emacs-git/ (for guile) Oh, that's really useful, thanks. I'll have a look at those for reference (and I've documented them on the GuileEmacsBuild wiki build).
Re: Building Guilemacs
Wilfred Hughes writes: > Hi folks > > I fancied exploring Guile with Emacs, so I've been trying to build Guile > and Emacs as documented in https://www.emacswiki.org/emacs/GuileEmacsBuild . Excellent! Happy to hear of your interest. > I've successfully built the wip-elisp branch of the main guile repo. The > wiki page discusses http://git.hcoop.net/?p=bpt/guile.git and > http://git.savannah.gnu.org/cgit/guile.git/log/?h=wip-elisp . I understand > that the latter is a rebase of the hcoop commits on Guile 2.1. > > However, I've also noticed there's a wip-bpt-elisp branch in the main guile > repo. This has the newest commits, but it seems to based on an older guile > version. > > Which branch should I use? wip-bpt-elisp has commits from years ago; wip-elisp is rebased on top of relatively-recent master, with updated ChangeLog. This was based on the recent work of robin's from http://git.savannah.gnu.org/cgit/guile.git/log/?h=wip-elisp So, you want wip-elisp in origin. That's the most up to date. > I've also failed to compile the Emacs branch that uses Guile. I'm getting > the error: > > gcc -c -Demacs -I. -I. -I../lib -I./../lib [many includes elided...] > -I/usr/local/include/guile/2.2 -g3 -O2 vm-limit.c > In file included from vm-limit.c:21:0: > lisp.h:33:22: fatal error: libguile.h: No such file or directory > #include > ^ > compilation terminated. > > This rather looks like I've screwed up with autoconf somehow. I've set the > environment variables suggested by the wiki page: I don't have time to look into this part, maybe someone else can help you out!
Building Guilemacs
Hi folks I fancied exploring Guile with Emacs, so I've been trying to build Guile and Emacs as documented in https://www.emacswiki.org/emacs/GuileEmacsBuild . I've successfully built the wip-elisp branch of the main guile repo. The wiki page discusses http://git.hcoop.net/?p=bpt/guile.git and http://git.savannah.gnu.org/cgit/guile.git/log/?h=wip-elisp . I understand that the latter is a rebase of the hcoop commits on Guile 2.1. However, I've also noticed there's a wip-bpt-elisp branch in the main guile repo. This has the newest commits, but it seems to based on an older guile version. Which branch should I use? I've also failed to compile the Emacs branch that uses Guile. I'm getting the error: gcc -c -Demacs -I. -I. -I../lib -I./../lib [many includes elided...] -I/usr/local/include/guile/2.2 -g3 -O2 vm-limit.c In file included from vm-limit.c:21:0: lisp.h:33:22: fatal error: libguile.h: No such file or directory #include ^ compilation terminated. This rather looks like I've screwed up with autoconf somehow. I've set the environment variables suggested by the wiki page: ACLOCAL_PATH=/home/wilfred/guile-emacs/guile/share/aclocal PKG_CONFIG_PATH=/home/wilfred/guile-emacs/guile/lib/pkgconfig LD_RUN_PATH=/home/wilfred/guile-emacs/guile/lib so am I missing something? Thanks Wilfred