From mboxrd@z Thu Jan 1 00:00:00 1970 From: Caleb Ristvedt Subject: bug#35644: emacs module support doesn't work Date: Wed, 11 Mar 2020 05:55:04 +0000 Message-ID: References: <87o94cid7z.fsf@cune.org> <878sk8qhj7.fsf@rohleder.de> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="0000000000005e37f805a08de150" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:44078) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBuLc-0001sF-1T for bug-guix@gnu.org; Wed, 11 Mar 2020 01:56:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBuLa-0004MC-RZ for bug-guix@gnu.org; Wed, 11 Mar 2020 01:56:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:47584) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jBuLa-0004LC-94 for bug-guix@gnu.org; Wed, 11 Mar 2020 01:56:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jBuLa-0000Jf-7D for bug-guix@gnu.org; Wed, 11 Mar 2020 01:56:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <878sk8qhj7.fsf@rohleder.de> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane-mx.org@gnu.org Sender: "bug-Guix" To: mike@rohleder.de Cc: 35644@debbugs.gnu.org --0000000000005e37f805a08de150 Content-Type: text/plain; charset="UTF-8" I can confirm that it now works. I did a bit of looking through the commit history and playing around with 'guix time-machine', and whatever changed to fix it, it wasn't a change that touched gnu/packages/emacs.scm. I know it fell between 7ab5c4e0e8 and 5ce153b110, though. Thanks for bringing this up, I guess we can close this now? - reepca On Tue, Mar 10, 2020 at 4:52 PM wrote: > Caleb Ristvedt writes: > > > > Assuming the above file is named emacs-module-test.c: > > > > ------------------------------- > > $ gcc -fPIC -shared emacs-module-test.c -o hello-module.so > > $ emacs -Q -L . --batch -l hello-module --eval "(message (hello-c))" > > > > => Symbol's function definition is void: hello-c > > ------------------------------- > > > > As far as I can tell, this should work. Our emacs is built with > > '--with-modules', and 'MODULES' is in system-configuration-features. Any > > idea what's going wrong? > > I cant reproduce this, it works for me: > > $ guix environment -C bash --ad-hoc emacs gcc-toolchain > [env]$ gcc -fPIC -shared emacs-module-test.c -o hello-module.so > [env]$ emacs -Q -L . --batch -l hello-module --eval "(message (hello-c))" > TEST MESSAGE! > TEST MESSAGE! > TEST MESSAGE! > Hello Emacs > > > -- > Der Erfolg ist nicht danach zu beurteilen, was ein Mensch im Leben > erreicht hat, sondern nach den Hindernissen, die er auf dem Weg zum > Erfolg ueberwunden hat. > (Booker T. Washington) > --0000000000005e37f805a08de150 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I can confirm that it now works. I did a bit of looking th= rough the commit
history and playing around with 'guix time-machine&= #39;, and whatever changed to fix
it, it wasn't a change that touche= d gnu/packages/emacs.scm. I know it fell
between 7ab5c4e0e8 and 5ce153b1= 10, though.

Thanks for bringing this up, I guess we can close this n= ow?

- reepca

On Tue, Mar 10, 2020 at 4:52 PM <mike@rohleder.de> wrote:
Caleb Ristvedt <caleb.ristvedt@cune.org> wr= ites:
>
> Assuming the above file is named emacs-module-test.c:
>
> -------------------------------
> $ gcc -fPIC -shared emacs-module-test.c -o hello-module.so
> $ emacs -Q -L . --batch -l hello-module --eval "(message (hello-c= ))"
>
> =3D> Symbol's function definition is void: hello-c
> -------------------------------
>
> As far as I can tell, this should work. Our emacs is built with
> '--with-modules', and 'MODULES' is in system-configura= tion-features. Any
> idea what's going wrong?

I cant reproduce this, it works for me:

$ guix environment -C bash --ad-hoc emacs gcc-toolchain
[env]$ gcc -fPIC -shared emacs-module-test.c -o hello-module.so
[env]$ emacs -Q -L . --batch -l hello-module --eval "(message (hello-c= ))"=C2=A0
TEST MESSAGE!
TEST MESSAGE!
TEST MESSAGE!
Hello Emacs


--
Der Erfolg ist nicht danach zu beurteilen, was ein Mensch im Leben
erreicht hat, sondern nach den Hindernissen, die er auf dem Weg zum
Erfolg ueberwunden hat.
(Booker T. Washington)
--0000000000005e37f805a08de150--