GNU bug report logs - #15260
cannot build in a directory with non-ascii characters

Previous Next

Package: emacs;

Reported by: Glenn Morris <rgm <at> gnu.org>

Date: Tue, 3 Sep 2013 17:47:02 UTC

Severity: wishlist

Found in version 24.3

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #25 received at 15260 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 15260 <at> debbugs.gnu.org
Subject: Re: bug#15260: cannot build in a directory with non-ascii characters
Date: Fri, 25 Oct 2013 17:25:05 +0300
> From: Glenn Morris <rgm <at> gnu.org>
> Cc: 15260 <at> debbugs.gnu.org
> Date: Thu, 24 Oct 2013 14:35:15 -0400
> 
> Eli Zaretskii wrote:
> 
> >   case "$var" in
> >     *[[^\ -~]]*) AC_MSG_ERROR([Emacs cannot be built or installed in a directory whose name contains non-ASCII characters: $var]) ;;
> >   esac
> >
> > This is quite drastic. 
> 
> I don't think so. The alternative is a cryptic failure during the build stage.
> 
> > Do we understand what is the underlying technical reason for the
> > build failures? 
> 
> Something to do with failure to find files, just as it was 6 years ago.
> http://lists.gnu.org/archive/html/emacs-devel/2007-05/msg00984.html
> 
> The immediate problem for me is a dump failure:
> 
>     Finding pointers to doc strings...
>     Finding pointers to doc strings...done
>     Dumping under the name emacs
>     emacs: Can't open /path/to/non-ascii/src/temacs for reading: No such file
>     or directory
>     make[1]: *** [bootstrap-emacs] Error 1

Does the change below help?

> Why not make a non-ASCII directory and try it yourself...

It requires too much setup on my part (this cannot be simulated on
Windows without too much hassle).  But I will do that if there's no
easier way.  I just thought that some analysis has been done already.

=== modified file 'src/emacs.c'
--- src/emacs.c	2013-10-20 16:47:42 +0000
+++ src/emacs.c	2013-10-25 14:21:47 +0000
@@ -2044,11 +2044,15 @@ You must run Emacs in batch mode in orde
 
   CHECK_STRING (filename);
   filename = Fexpand_file_name (filename, Qnil);
+  filename = ENCODE_FILE (filename);
   if (!NILP (symfile))
     {
       CHECK_STRING (symfile);
       if (SCHARS (symfile))
-	symfile = Fexpand_file_name (symfile, Qnil);
+	{
+	  symfile = Fexpand_file_name (symfile, Qnil);
+	  symfile = ENCODE_FILE (symfile);
+	}
     }
 
   tem = Vpurify_flag;





This bug report was last modified 11 years and 202 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.