Subject: Re: bug#77520: 30.1.50; Installed emacs is loading loadup.el from source

From: Lynn Winebarger <[email-masked]>
Date: Fri, 4 Apr 2025 22:26:23 -0400

On Fri, Apr 4, 2025 at 10:14 PM Lynn Winebarger <[email-masked]> wrote:
>
> On Fri, Apr 4, 2025 at 8:54 PM Lynn Winebarger <[email-masked]> wrote:
> >
> > On Fri, Apr 4, 2025 at 3:24 PM Lynn Winebarger <[email-masked]> wrote:
> > >
> > > On Fri, Apr 4, 2025 at 3:34 AM Eli Zaretskii <[email-masked]> wrote:
> > > >
> > > > > From: Lynn Winebarger <[email-masked]>
> > > > > Date: Thu, 3 Apr 2025 21:28:05 -0400
> > > > >
> > > > > When I run './src/emacs-30.1.50 -Q' from the build directory, I get the
> > > > > expected behavior.  I install the built emacs using "make install" into
> > > > > /usr/local with some version-specific directories configured (see the
> > > > > options) so I can have multiple major versions of emacs installed.  When
> > > > > I run '/usr/local/bin/emacs-30.1.50 -Q', the following is displayed in
> > > > > the terminal window:
> > > > > ------
> > > > > Loading loadup.el (source)...
> > > > > Dump mode: nil
> > > >
> > > > This means Emacs cannot find its pdumper file.  You need to figure out
> > > > why.  Crystal ball says you used some non-standard procedure for
> > > > installing the built Emacs, so the pdumper file is either not
> > > > installed or is installed under the name different from what EMacs
> > > > looks for.
> > >
> > > Other than specifying version-specific paths in the configure (details
> > > in bug report), I just used "make -j $(nproc)" and "sudo make
> > > install".
> > > I've used this approach for a while to maintain separate lisp
> > > libraries and documentation while installing multiple versions of
> > > emacs. (newlines added to shell output for visual clarity).
> > >
> > > ----------------------
> > > owinebar@dev1:~/projects/emacs/emacs-30> ls /usr/local/bin/emacs*
> > > /usr/local/bin/emacs        /usr/local/bin/emacs-28.3
> > > /usr/local/bin/emacs-29.3.50  /usr/local/bin/emacs-30.1.50
> > > /usr/local/bin/emacsclient  /usr/local/bin/emacs-29.0.91
> > > /usr/local/bin/emacs-30.0.50
> > >
> > > owinebar@dev1:~/projects/emacs/emacs-30> ls /usr/local/lib/emacs/
> > > 28.3/    29.0.91/ 29.3.50/ 30.0.50/ 30.1.50/
> > >
> > > owinebar@dev1:~/projects/emacs/emacs-30> ls /usr/local/lib/emacs/30.1.50/
> > > x86_64-pc-linux-gnu
> > >
> > > owinebar@dev1:~/projects/emacs/emacs-30> ls
> > > /usr/local/lib/emacs/30.1.50/x86_64-pc-linux-gnu/
> > > emacs-915e4e5cb8d283f00a79086d479910f292af5fe7b2430c3eaae2631e73dab0d7.pdmp
> > >  hexl      rcs2log
> > > emacs-d016b46c0511d7b5a01304258481021fb366397c719be76601044696239ac9cf.pdmp
> > >  movemail  update-game-score
> > >
> > > owinebar@dev1:~/projects/emacs/emacs-30> /usr/local/bin/emacs-30.1.50
> > > --fingerprint
> > > Not initialized
> > >
> > > owinebar@dev1:~/projects/emacs/emacs-30> ./BUILD/src/emacs-30.1.50.1
> > > --fingerprint
> > > d016b46c0511d7b5a01304258481021fb366397c719be76601044696239ac9cf
> > > ----------------------
> > > For comparison, I tried a previously installed copy of 30.0.50:
> > > ----------------------
> > > owinebar@dev1:~/projects/emacs/emacs-30> ls
> > > /usr/local/lib/emacs/30.0.50/x86_64-pc-linux-gnu/
> > > emacs-4c6b60663e1157be3085c73f1e2ac7187bc745455a7531f00d78a41d2fd1dbbd.pdmp
> > >  emacs-bc4b7834c0e05bc2b531ab001a62a6546f5bde655069f59b363e75b428b1dde6.pdmp
> > >  update-game-score
> > > emacs-104460d468e0a372d127c340258407e60ce36cf166d4e182cfe9f46f70c6f5f9.pdmp
> > >  hexl
> > > emacs-a93e06357fd60c362c6a3db9e95355a96eb59830d567f7d01bb22c4ffb81bcad.pdmp
> > >  rcs2log
> > >
> > > owinebar@dev1:~/projects/emacs/emacs-30> /usr/local/bin/emacs-30.0.50
> > > --fingerprint
> > > 104460d468e0a372d127c340258407e60ce36cf166d4e182cfe9f46f70c6f5f9
> > > ----------------------
> >
> > I'm just going to see what's happening with gdb.  The last time I
> > fiddled with emacs source was 28.x, and the dump file fingerprint
> > logic wasn't part of it.
>
> Ok, it is setting PATH_EXEC to
> "/usr/local/lib/emacs/31.0.50/x86_64-pc-linux-gnu", but the install is
> to "/usr/local/lib/emacs/30.1.50/x86_64-pc-linux-gnu".
> I'm building from the emacs-30 branch, so the version shouldn't be
> 31.0.50, I think.

Ok, I failed to run autogen.sh in the source directory after switching
to the emacs-30 branch.  User fail.  Please close.

Thanks,
Lynn