unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Build failure with --with-x-toolkit=no
@ 2024-03-27  9:19 martin rudalics
  2024-03-27 11:19 ` Po Lu
  0 siblings, 1 reply; 17+ messages in thread
From: martin rudalics @ 2024-03-27  9:19 UTC (permalink / raw)
  To: emacs-devel

When attempting to build master on Debian bookworm with gcc 12.2.0 using

CFLAGS='-O0 -g3 -no-pie -Wno-missing-braces' ../configure --with-gif=ifavailable --with-tiff=ifavailable --with-gnutls=no --without-pop --enable-gcc-warnings=warn-only --with-x-toolkit=no --enable-checking=yes --enable-check-lisp-object-type=yes

I'm currently getting

   CCLD     temacs
   GEN      ../etc/DOC
/usr/bin/ld: ../oldXMenu/libXMenu11.a(Activate.o): in function `XMenuActivate':
/home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Activate.c:631: undefined reference to `rpl_free'
/usr/bin/ld: ../oldXMenu/libXMenu11.a(Destroy.o): in function `XMenuDestroy':
/home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Destroy.c:61: undefined reference to `rpl_free'
/usr/bin/ld: /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Destroy.c:68: undefined reference to `rpl_free'
/usr/bin/ld: /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Destroy.c:134: undefined reference to `rpl_free'
/usr/bin/ld: ../oldXMenu/libXMenu11.a(XDestAssoc.o): in function `XDestroyAssocTable':
/home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/XDestAssoc.c:45: undefined reference to `rpl_free'
/usr/bin/ld: ../oldXMenu/libXMenu11.a(XDestAssoc.o):/home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/XDestAssoc.c:50: more undefined references to `rpl_free' follow
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:743: temacs] Fehler 1
make[2]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none/src“ wird verlassen
make[1]: *** [Makefile:554: src] Fehler 2
make[1]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none“ wird verlassen
make[1]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none“ wird betreten
***
*** "make all" failed with exit status 2.
***
*** You could try to:
*** - run "make bootstrap", which might fix the problem
*** - run "make V=1", which displays the full commands invoked by make,
***   to further investigate the problem
***
make[1]: *** [Makefile:418: advice-on-failure] Fehler 2
make[1]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none“ wird verlassen
make: *** [Makefile:374: all] Fehler 2

Any ideas?

Thanks, martin

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-27  9:19 Build failure with --with-x-toolkit=no martin rudalics
@ 2024-03-27 11:19 ` Po Lu
  2024-03-28  9:44   ` martin rudalics
  0 siblings, 1 reply; 17+ messages in thread
From: Po Lu @ 2024-03-27 11:19 UTC (permalink / raw)
  To: martin rudalics; +Cc: emacs-devel

martin rudalics <rudalics@gmx.at> writes:

> When attempting to build master on Debian bookworm with gcc 12.2.0 using
>
> CFLAGS='-O0 -g3 -no-pie -Wno-missing-braces' ../configure
> --with-gif=ifavailable --with-tiff=ifavailable --with-gnutls=no
> --without-pop --enable-gcc-warnings=warn-only --with-x-toolkit=no
> --enable-checking=yes --enable-check-lisp-object-type=yes
>
> I'm currently getting
>
>   CCLD     temacs
>   GEN      ../etc/DOC
> /usr/bin/ld: ../oldXMenu/libXMenu11.a(Activate.o): in function `XMenuActivate':
> /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Activate.c:631: undefined reference to `rpl_free'
> /usr/bin/ld: ../oldXMenu/libXMenu11.a(Destroy.o): in function `XMenuDestroy':
> /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Destroy.c:61: undefined reference to `rpl_free'
> /usr/bin/ld: /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Destroy.c:68: undefined reference to `rpl_free'
> /usr/bin/ld: /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/Destroy.c:134: undefined reference to `rpl_free'
> /usr/bin/ld: ../oldXMenu/libXMenu11.a(XDestAssoc.o): in function `XDestroyAssocTable':
> /home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/XDestAssoc.c:45: undefined reference to `rpl_free'
> /usr/bin/ld: ../oldXMenu/libXMenu11.a(XDestAssoc.o):/home/martin/emacs-git/trunk/obj-none/oldXMenu/../../oldXMenu/XDestAssoc.c:50: more undefined references to `rpl_free' follow
> collect2: error: ld returned 1 exit status
> make[2]: *** [Makefile:743: temacs] Fehler 1
> make[2]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none/src“ wird verlassen
> make[1]: *** [Makefile:554: src] Fehler 2
> make[1]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none“ wird verlassen
> make[1]: Verzeichnis „/home/martin/emacs-git/trunk/obj-none“ wird betreten

This suggests that the Gnulib headers included during the compilation of
oldXMenu are inconsistent with the libgnu.a to which temacs is being
linked.  Is this a clean build of Emacs?




^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-27 11:19 ` Po Lu
@ 2024-03-28  9:44   ` martin rudalics
  2024-03-28 10:25     ` Eli Zaretskii
  0 siblings, 1 reply; 17+ messages in thread
From: martin rudalics @ 2024-03-28  9:44 UTC (permalink / raw)
  To: Po Lu; +Cc: emacs-devel

 > This suggests that the Gnulib headers included during the compilation of
 > oldXMenu are inconsistent with the libgnu.a to which temacs is being
 > linked.  Is this a clean build of Emacs?

It's an out of tree build, whether it's "clean" I can't tell.  Last year
building the release version worked on this machine with an older
compiler and autoconf.  Now building the release version fails as well.
An almost identical set-up works on another machine so it seems that only
this machine has the problem.  I have no idea yet how to search for the
cause of it.

Thanks, martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-28  9:44   ` martin rudalics
@ 2024-03-28 10:25     ` Eli Zaretskii
  2024-03-29  7:58       ` martin rudalics
  0 siblings, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2024-03-28 10:25 UTC (permalink / raw)
  To: martin rudalics; +Cc: luangruo, emacs-devel

> Date: Thu, 28 Mar 2024 10:44:13 +0100
> Cc: emacs-devel <emacs-devel@gnu.org>
> From: martin rudalics <rudalics@gmx.at>
> 
>  > This suggests that the Gnulib headers included during the compilation of
>  > oldXMenu are inconsistent with the libgnu.a to which temacs is being
>  > linked.  Is this a clean build of Emacs?
> 
> It's an out of tree build, whether it's "clean" I can't tell.  Last year
> building the release version worked on this machine with an older
> compiler and autoconf.  Now building the release version fails as well.
> An almost identical set-up works on another machine so it seems that only
> this machine has the problem.  I have no idea yet how to search for the
> cause of it.

If you build it in a newly-created directory, does it also fail?

Did you try "git clean -fdx" in the source tree (assuming you build
from Git)?



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-28 10:25     ` Eli Zaretskii
@ 2024-03-29  7:58       ` martin rudalics
  2024-03-29 10:50         ` Eli Zaretskii
  0 siblings, 1 reply; 17+ messages in thread
From: martin rudalics @ 2024-03-29  7:58 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: luangruo, emacs-devel

 > If you build it in a newly-created directory, does it also fail?

I did that meanwhile and it does not fail any more.  Po Lo presumably
meant to do precisely that but I was too dense to understand him.

 > Did you try "git clean -fdx" in the source tree (assuming you build
 > from Git)?

I never use that because it kills the other build directories too (I
have nine).

Moreover I have a private note that tells me to avoid that because it
"may make the build fail for lacking gnutls libs".  I obviously forgot
what failed back then ...

Thanks to you and Po Lu, martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-29  7:58       ` martin rudalics
@ 2024-03-29 10:50         ` Eli Zaretskii
  2024-03-30  9:36           ` martin rudalics
  0 siblings, 1 reply; 17+ messages in thread
From: Eli Zaretskii @ 2024-03-29 10:50 UTC (permalink / raw)
  To: martin rudalics; +Cc: luangruo, emacs-devel

> Date: Fri, 29 Mar 2024 08:58:56 +0100
> Cc: luangruo@yahoo.com, emacs-devel@gnu.org
> From: martin rudalics <rudalics@gmx.at>
> 
>  > Did you try "git clean -fdx" in the source tree (assuming you build
>  > from Git)?
> 
> I never use that because it kills the other build directories too (I
> have nine).

You could then do "git -fdxn", which would show you the files that
perhaps need to be removed, without actually removing them.



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-29 10:50         ` Eli Zaretskii
@ 2024-03-30  9:36           ` martin rudalics
  2024-03-30  9:44             ` Andreas Schwab
  2024-03-30  9:54             ` tomas
  0 siblings, 2 replies; 17+ messages in thread
From: martin rudalics @ 2024-03-30  9:36 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: luangruo, emacs-devel

 > You could then do "git -fdxn", which would show you the files that
 > perhaps need to be removed, without actually removing them.

When I do git clean -fdxn it, probably correctly, does not descend into
the build directories but just tells me that it would remove them as a
whole (like the info directory, for example).

The great problem I never managed to fix appropriately is that when
removing a build directory as a whole, I also remove previous versions
of emacs builds which, however, I occasionally need to track down in
which version an error appeared first.  So I'd need a regexp to tell git
clean which files it should delete for making builds succeed cleanly and
which ones to keep for future forensics.  Having executables and object
files in the same directory is not helpful in this regard.

martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-30  9:36           ` martin rudalics
@ 2024-03-30  9:44             ` Andreas Schwab
  2024-03-31  8:30               ` martin rudalics
  2024-03-30  9:54             ` tomas
  1 sibling, 1 reply; 17+ messages in thread
From: Andreas Schwab @ 2024-03-30  9:44 UTC (permalink / raw)
  To: martin rudalics; +Cc: Eli Zaretskii, luangruo, emacs-devel

On Mär 30 2024, martin rudalics wrote:

> The great problem I never managed to fix appropriately is that when
> removing a build directory as a whole, I also remove previous versions
> of emacs builds which, however, I occasionally need to track down in
> which version an error appeared first.  So I'd need a regexp to tell git
> clean which files it should delete for making builds succeed cleanly and
> which ones to keep for future forensics.  Having executables and object
> files in the same directory is not helpful in this regard.

Move the build directory outside of the source directory.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-30  9:36           ` martin rudalics
  2024-03-30  9:44             ` Andreas Schwab
@ 2024-03-30  9:54             ` tomas
  2024-03-31  8:31               ` martin rudalics
  1 sibling, 1 reply; 17+ messages in thread
From: tomas @ 2024-03-30  9:54 UTC (permalink / raw)
  To: martin rudalics; +Cc: Eli Zaretskii, luangruo, emacs-devel

[-- Attachment #1: Type: text/plain, Size: 1099 bytes --]

On Sat, Mar 30, 2024 at 10:36:28AM +0100, martin rudalics wrote:
> > You could then do "git -fdxn", which would show you the files that
> > perhaps need to be removed, without actually removing them.
> 
> When I do git clean -fdxn it, probably correctly, does not descend into
> the build directories but just tells me that it would remove them as a
> whole (like the info directory, for example).
> 
> The great problem I never managed to fix appropriately is that when
> removing a build directory as a whole, I also remove previous versions
> of emacs builds which, however, I occasionally need to track down in
> which version an error appeared first.  So I'd need a regexp to tell git
> clean which files it should delete for making builds succeed cleanly and
> which ones to keep for future forensics.  Having executables and object
> files in the same directory is not helpful in this regard.

There's the option -e <pattern> to git-clean, which seems to do precisely
what you want. See also the -i (interactive) option, which lets you test
drive things.

Cheers
-- 
t

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-30  9:44             ` Andreas Schwab
@ 2024-03-31  8:30               ` martin rudalics
  2024-03-31  8:59                 ` Andreas Schwab
  0 siblings, 1 reply; 17+ messages in thread
From: martin rudalics @ 2024-03-31  8:30 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Eli Zaretskii, luangruo, emacs-devel

 > Move the build directory outside of the source directory.

My build directories are outside of the source directory.

martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-30  9:54             ` tomas
@ 2024-03-31  8:31               ` martin rudalics
  0 siblings, 0 replies; 17+ messages in thread
From: martin rudalics @ 2024-03-31  8:31 UTC (permalink / raw)
  To: tomas; +Cc: Eli Zaretskii, luangruo, emacs-devel

 > There's the option -e <pattern> to git-clean, which seems to do precisely
 > what you want. See also the -i (interactive) option, which lets you test
 > drive things.

I'm aware of the -e option.  But before using that, I'd rather write my
own clean function.  And for that purpose I'd have to know which object
files caused my build to fail.

martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-31  8:30               ` martin rudalics
@ 2024-03-31  8:59                 ` Andreas Schwab
  2024-04-01  9:10                   ` martin rudalics
  0 siblings, 1 reply; 17+ messages in thread
From: Andreas Schwab @ 2024-03-31  8:59 UTC (permalink / raw)
  To: martin rudalics; +Cc: Eli Zaretskii, luangruo, emacs-devel

On Mär 31 2024, martin rudalics wrote:

>> Move the build directory outside of the source directory.
>
> My build directories are outside of the source directory.

Then why is git clean a problem?

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-03-31  8:59                 ` Andreas Schwab
@ 2024-04-01  9:10                   ` martin rudalics
  2024-04-01  9:20                     ` Andreas Schwab
  0 siblings, 1 reply; 17+ messages in thread
From: martin rudalics @ 2024-04-01  9:10 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Eli Zaretskii, luangruo, emacs-devel

 > Then why is git clean a problem?

git clean -xdf removes earlier executables which I occasionally need to
find out when a bug was introduced.

martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-04-01  9:10                   ` martin rudalics
@ 2024-04-01  9:20                     ` Andreas Schwab
  2024-04-02  7:49                       ` martin rudalics
  0 siblings, 1 reply; 17+ messages in thread
From: Andreas Schwab @ 2024-04-01  9:20 UTC (permalink / raw)
  To: martin rudalics; +Cc: Eli Zaretskii, luangruo, emacs-devel

On Apr 01 2024, martin rudalics wrote:

> git clean -xdf removes earlier executables which I occasionally need to
> find out when a bug was introduced.

??? You previously said your build directories are outside of the source
directory.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-04-01  9:20                     ` Andreas Schwab
@ 2024-04-02  7:49                       ` martin rudalics
  2024-04-02 16:53                         ` Andreas Schwab
  0 siblings, 1 reply; 17+ messages in thread
From: martin rudalics @ 2024-04-02  7:49 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Eli Zaretskii, luangruo, emacs-devel

 > ??? You previously said your build directories are outside of the source
 > directory.

They are outside the Emacs src directory.  Sorry for being imprecise.
If I moved them outside the Emacs directory, git would not see them.
But how would that eliminate the build error that is the subject of this
thread?

martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-04-02  7:49                       ` martin rudalics
@ 2024-04-02 16:53                         ` Andreas Schwab
  2024-04-03  8:24                           ` martin rudalics
  0 siblings, 1 reply; 17+ messages in thread
From: Andreas Schwab @ 2024-04-02 16:53 UTC (permalink / raw)
  To: martin rudalics; +Cc: Eli Zaretskii, luangruo, emacs-devel

On Apr 02 2024, martin rudalics wrote:

> But how would that eliminate the build error that is the subject of this
> thread?

You would not have any issues with git clean.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: Build failure with --with-x-toolkit=no
  2024-04-02 16:53                         ` Andreas Schwab
@ 2024-04-03  8:24                           ` martin rudalics
  0 siblings, 0 replies; 17+ messages in thread
From: martin rudalics @ 2024-04-03  8:24 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Eli Zaretskii, luangruo, emacs-devel

 >> But how would that eliminate the build error that is the subject of this
 >> thread?
 >
 > You would not have any issues with git clean.

The idea of using git clean was to make the build succeed.  If I moved
the build directory out of the scope of git clean, the build would still
fail.

martin



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2024-04-03  8:24 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-27  9:19 Build failure with --with-x-toolkit=no martin rudalics
2024-03-27 11:19 ` Po Lu
2024-03-28  9:44   ` martin rudalics
2024-03-28 10:25     ` Eli Zaretskii
2024-03-29  7:58       ` martin rudalics
2024-03-29 10:50         ` Eli Zaretskii
2024-03-30  9:36           ` martin rudalics
2024-03-30  9:44             ` Andreas Schwab
2024-03-31  8:30               ` martin rudalics
2024-03-31  8:59                 ` Andreas Schwab
2024-04-01  9:10                   ` martin rudalics
2024-04-01  9:20                     ` Andreas Schwab
2024-04-02  7:49                       ` martin rudalics
2024-04-02 16:53                         ` Andreas Schwab
2024-04-03  8:24                           ` martin rudalics
2024-03-30  9:54             ` tomas
2024-03-31  8:31               ` martin rudalics

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).