unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Compiling Emacs from source
@ 2010-03-27  3:29 Henri-Paul Indiogine
  2010-03-27  5:05 ` Óscar Fuentes
  2010-03-27  9:52 ` Peter Dyballa
  0 siblings, 2 replies; 13+ messages in thread
From: Henri-Paul Indiogine @ 2010-03-27  3:29 UTC (permalink / raw)
  To: help-gnu-emacs

I run the version of Emacs 23 that comes with Ubuntu Karmic, 23.1.1.   I
am wondering about compiling the latest developer version, maybe even
daily.  I do a daily update of org-mode from their git repository each
day.

I understand that compiling Emacs is much more than compiling just a
major mode package.  

I tried to Google for any instructions on how to compile Emacs, but
could not find any.

I am also concerned about additional packages that come with the Ubuntu
distribution of Emacs.  Would I have to go and find all of them and
compile them afterward as I now do for org-mode?

Is it worth it?   Should I stay with version 23?  The version that I was
able to obtain from the Emacs Bazaar repository is version 24. Anyway, I
think that just a more recent version of 23 is adventurous enough.

Thanks!



-- 
Henri-Paul Indiogine
Email: hindiogine@gmail.com
Skype: hindiogine
Website: http://www.coe.tamu.edu/~enrico





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

* Re: Compiling Emacs from source
  2010-03-27  3:29 Compiling Emacs from source Henri-Paul Indiogine
@ 2010-03-27  5:05 ` Óscar Fuentes
  2010-03-27  9:52 ` Peter Dyballa
  1 sibling, 0 replies; 13+ messages in thread
From: Óscar Fuentes @ 2010-03-27  5:05 UTC (permalink / raw)
  To: help-gnu-emacs

Henri-Paul Indiogine <hindiogine@gmail.com> writes:

[snip]

> I tried to Google for any instructions on how to compile Emacs, but
> could not find any.

Try reading the file named `INSTALL' on the top directory of Emacs'
source code.

> I am also concerned about additional packages that come with the Ubuntu
> distribution of Emacs.  Would I have to go and find all of them and
> compile them afterward as I now do for org-mode?

You'll need some libraries if you want features like image support,
antialised fonts, etc. You don't need to build those libraries yourself,
just install their respective Ubuntu packages.

> Is it worth it?   Should I stay with version 23?  The version that I was
> able to obtain from the Emacs Bazaar repository is version 24. Anyway, I
> think that just a more recent version of 23 is adventurous enough.

Right now the differences among the upcoming maintenance release version
23.2 and the development version 24 are minimal, you'll hardly notice
them, because they forked just days ago. So for now you gain very little
on terms of new features by switching to the development version.

Unless you intend to contribute to Emacs development or you found a
showstopper bug in version 23 that was fixed on version 24, keep using
the released version.





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

* Re: Compiling Emacs from source
  2010-03-27  3:29 Compiling Emacs from source Henri-Paul Indiogine
  2010-03-27  5:05 ` Óscar Fuentes
@ 2010-03-27  9:52 ` Peter Dyballa
  1 sibling, 0 replies; 13+ messages in thread
From: Peter Dyballa @ 2010-03-27  9:52 UTC (permalink / raw)
  To: Henri-Paul Indiogine; +Cc: help-gnu-emacs


Am 27.03.2010 um 04:29 schrieb Henri-Paul Indiogine:

>
> I understand that compiling Emacs is much more than compiling just a
> major mode package.

It's less, because no package manager is involved, it's only you who  
knows about this extra software.

>
> I tried to Google for any instructions on how to compile Emacs, but
> could not find any.

Since you've fetched the sources of GNU Emacs 24.0.50 with bzr you can  
read the README and INSTALL files...

>
> I am also concerned about additional packages that come with the  
> Ubuntu
> distribution of Emacs.  Would I have to go and find all of them and
> compile them afterward as I now do for org-mode?

No. Modern Emacsen understand the byte-code of their ancestors.  
There's of course always a chance that some changes in ELisp are  
incompatible.

>
> Is it worth it?

Of course! The chance to find a bug...

> Should I stay with version 23?

There aren't noticeable differences. New configure options are  
introduced: --with-mmdf, --with-mail-unlink, --with-mailhost.  
Customize buffers now have a "Choose" button to pick a colour via list- 
colors-display. A new completion style, "substring," has been added  
and animated GIFs can be played – I could not try these yet.


Since your Linux PC is controlled be a package manager you should  
create a package from GNU Emacs 24.0.50 and install that.

--
Greetings

   Pete

                   Sorry my terrible English, my native language Lisp





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

* Compiling Emacs from Source
@ 2017-11-05 22:06 Robert Thorpe
  2017-11-05 22:43 ` Jean-Christophe Helary
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Robert Thorpe @ 2017-11-05 22:06 UTC (permalink / raw)
  To: help-gnu-emacs

Recently there was some discussion about upgrading Emacs.  Package
managers and distros were discussed.

I have a more basic question.  The distro I'm using doesn't provide
Emacs 25, I'm still on 24.4.  So, I want to compile Emacs 25.

The problem for me is the configuration flags.  I don't understand them
that well.  What configuration flags would this list recommend?

BR,
Robert Thorpe




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

* Re: Compiling Emacs from Source
  2017-11-05 22:06 Compiling Emacs from Source Robert Thorpe
@ 2017-11-05 22:43 ` Jean-Christophe Helary
  2017-11-07  5:43   ` Kendall Shaw
  2017-11-07 23:58 ` Emanuel Berg
  2017-11-08 16:32 ` Dan Mack
  2 siblings, 1 reply; 13+ messages in thread
From: Jean-Christophe Helary @ 2017-11-05 22:43 UTC (permalink / raw)
  To: Help Gnu Emacs mailing list



> On Nov 6, 2017, at 7:06, Robert Thorpe <rt@robertthorpeconsulting.com> wrote:
> 
> Recently there was some discussion about upgrading Emacs.  Package
> managers and distros were discussed.
> 
> I have a more basic question.  The distro I'm using doesn't provide
> Emacs 25, I'm still on 24.4.  So, I want to compile Emacs 25.
> 
> The problem for me is the configuration flags.  I don't understand them
> that well.  What configuration flags would this list recommend?

Why not use the default ? If the default is not satisfying, you can always reconfigure the build.

Jean-Christophe Helary
-----------------------------------------------
@brandelune http://mac4translators.blogspot.com




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

* Re: Compiling Emacs from Source
  2017-11-05 22:43 ` Jean-Christophe Helary
@ 2017-11-07  5:43   ` Kendall Shaw
  0 siblings, 0 replies; 13+ messages in thread
From: Kendall Shaw @ 2017-11-07  5:43 UTC (permalink / raw)
  To: help-gnu-emacs

On 11/05/2017 02:43 PM, Jean-Christophe Helary wrote:

>
>> On Nov 6, 2017, at 7:06, Robert Thorpe <rt@robertthorpeconsulting.com> wrote:
>>
>> Recently there was some discussion about upgrading Emacs.  Package
>> managers and distros were discussed.
>>
>> I have a more basic question.  The distro I'm using doesn't provide
>> Emacs 25, I'm still on 24.4.  So, I want to compile Emacs 25.
>>
>> The problem for me is the configuration flags.  I don't understand them
>> that well.  What configuration flags would this list recommend?
> Why not use the default ? If the default is not satisfying, you can always reconfigure the build.

Elaborating a little, the configure scripts prints what options it 
chose. It uses autoconf to see what is on your computer. For example:

,/configure --prefix=$HOME/opt/emacs

Prints this for me:


Configured for 'x86_64-pc-linux-gnu'.

   Where should the build process find the source code?    .
   What compiler should emacs be built with?               gcc -g3 -O2
   Should Emacs use the GNU version of malloc?             no (only 
before dumping)
   Should Emacs use a relocating allocator for buffers?    no
   Should Emacs use mmap(2) for buffer allocation?         no
   What window system should Emacs use?                    x11
   What toolkit should Emacs use?                          GTK3
   Where do we find X Windows header files?                Standard dirs
   Where do we find X Windows libraries?                   Standard dirs
   Does Emacs use -lXaw3d?                                 no
   Does Emacs use -lXpm?                                   yes
   Does Emacs use -ljpeg?                                  yes
   Does Emacs use -ltiff?                                  yes
   Does Emacs use a gif library?                           yes -lgif
   Does Emacs use a png library?                           yes -lpng16
   Does Emacs use -lrsvg-2?                                yes
   Does Emacs use cairo?                                   no
   Does Emacs use imagemagick?                             no
   Does Emacs support sound?                               yes
   Does Emacs use -lgpm?                                   no
   Does Emacs use -ldbus?                                  yes
   Does Emacs use -lgconf?                                 yes
   Does Emacs use GSettings?                               yes
   Does Emacs use a file notification library?             yes -lglibc 
(inotify)
   Does Emacs use access control lists?                    no
   Does Emacs use -lselinux?                               yes
   Does Emacs use -lgnutls?                                yes
   Does Emacs use -lxml2?                                  yes
   Does Emacs use -lfreetype?                              yes
   Does Emacs use -lm17n-flt?                              no
   Does Emacs use -lotf?                                   no
   Does Emacs use -lxft?                                   yes
   Does Emacs use -lsystemd?                               no
   Does Emacs directly use zlib?                           yes
   Does Emacs have dynamic modules support?                no
   Does Emacs use toolkit scroll bars?                     yes
   Does Emacs support Xwidgets (requires gtk3)?            no

Kendall

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

* Re: Compiling Emacs from Source
  2017-11-05 22:06 Compiling Emacs from Source Robert Thorpe
  2017-11-05 22:43 ` Jean-Christophe Helary
@ 2017-11-07 23:58 ` Emanuel Berg
  2017-11-08  1:01   ` John Mastro
  2017-11-08 16:32 ` Dan Mack
  2 siblings, 1 reply; 13+ messages in thread
From: Emanuel Berg @ 2017-11-07 23:58 UTC (permalink / raw)
  To: help-gnu-emacs

Robert Thorpe wrote:

> Recently there was some discussion about
> upgrading Emacs. Package managers and distros
> were discussed.
>
> I have a more basic question. The distro I'm
> using doesn't provide Emacs 25, I'm still on
> 24.4. So, I want to compile Emacs 25.
>
> The problem for me is the configuration
> flags. I don't understand them that well.
> What configuration flags would this
> list recommend?

I think it is very difficult to give a good
answer *in general*... Isn't there a tutorial
somewhere how to compile Emacs? Or even better,
a script that figures it out for you :)

I'm going to compile the latest version right
now because I have an issue with Gnus and
SSL/TLS, and got the suggestion I upgrade
Emacs, so if that makes me any wiser with
respect to this question I'll get back with
details :)

-- 
underground experts united
http://user.it.uu.se/~embe8573




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

* Re: Compiling Emacs from Source
  2017-11-07 23:58 ` Emanuel Berg
@ 2017-11-08  1:01   ` John Mastro
  2017-11-08  1:27     ` Emanuel Berg
                       ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: John Mastro @ 2017-11-08  1:01 UTC (permalink / raw)
  To: help-gnu-emacs@gnu.org

Emanuel Berg <moasen@zoho.com> wrote:
>> Recently there was some discussion about
>> upgrading Emacs. Package managers and distros
>> were discussed.
>>
>> I have a more basic question. The distro I'm
>> using doesn't provide Emacs 25, I'm still on
>> 24.4. So, I want to compile Emacs 25.
>>
>> The problem for me is the configuration
>> flags. I don't understand them that well.
>> What configuration flags would this
>> list recommend?
>
> I think it is very difficult to give a good
> answer *in general*... Isn't there a tutorial
> somewhere how to compile Emacs? Or even better,
> a script that figures it out for you :)
>
> I'm going to compile the latest version right
> now because I have an issue with Gnus and
> SSL/TLS, and got the suggestion I upgrade
> Emacs, so if that makes me any wiser with
> respect to this question I'll get back with
> details :)

For no-X builds, I use:

./configure --with-xml2 --with-zlib --with-gnutls \
    --with-x-toolkit=no --without-xpm --without-jpeg --without-tiff \
    --without-gif --without-png --without-pop --without-compress-install

For builds with X support, I use:

./configure --with-xml2 --with-zlib --with-gnutls --with-imagemagick \
    --with-x-toolkit=lucid --with-xft --with-libotf --with-m17n-flt \
    --without-pop --without-compress-install

To be honest, I don't know if e.g. "--with-gnutls" is really necessary
or if it would be auto-detected, so much of this may be redundant.

        John



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

* Re: Compiling Emacs from Source
  2017-11-08  1:01   ` John Mastro
@ 2017-11-08  1:27     ` Emanuel Berg
  2017-11-08  4:26     ` Emanuel Berg
  2017-11-11 20:45     ` Robert Thorpe
  2 siblings, 0 replies; 13+ messages in thread
From: Emanuel Berg @ 2017-11-08  1:27 UTC (permalink / raw)
  To: help-gnu-emacs

John Mastro wrote:

> To be honest, I don't know if e.g.
> "--with-gnutls" is really necessary or if it
> would be auto-detected, so much of this may
> be redundant.

Indeed, perhaps best just let auto-detection do
its job and apart from that include everything,
and then deal with what isn't supposed to be
used, simply by not using it?

... or is that considered cheating?

-- 
underground experts united
http://user.it.uu.se/~embe8573




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

* Re: Compiling Emacs from Source
  2017-11-08  1:01   ` John Mastro
  2017-11-08  1:27     ` Emanuel Berg
@ 2017-11-08  4:26     ` Emanuel Berg
  2017-11-11 20:45     ` Robert Thorpe
  2 siblings, 0 replies; 13+ messages in thread
From: Emanuel Berg @ 2017-11-08  4:26 UTC (permalink / raw)
  To: help-gnu-emacs

This should work on Debians. For Red Hats it
should also work only do the equivalent with
yum instead of apt-get - wow, you didn't know
that, did you? Aaanyway, with commands from

    http://ergoemacs.org/emacs/building_emacs_from_git_repository.html

### prepare
sudo apt-get install build-essential
sudo apt-get build-dep emacs24

### new git
git clone https://github.com/mirrors/emacs.git

### or old clean slate
cd ~/my-git/emacs
git reset --hard
git clean -xdf
git pull https://github.com/mirrors/emacs.git

### install Emacs
cd ~/my-git/emacs
./autogen.sh
./configure
make bootstrap
make

    It means fasten your seat-belt Dorthy.
    For Kansas, is going bye-bye.
                                     Cipher

-- 
underground experts united
http://user.it.uu.se/~embe8573




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

* Re: Compiling Emacs from Source
  2017-11-05 22:06 Compiling Emacs from Source Robert Thorpe
  2017-11-05 22:43 ` Jean-Christophe Helary
  2017-11-07 23:58 ` Emanuel Berg
@ 2017-11-08 16:32 ` Dan Mack
  2017-11-08 19:21   ` Emanuel Berg
  2 siblings, 1 reply; 13+ messages in thread
From: Dan Mack @ 2017-11-08 16:32 UTC (permalink / raw)
  To: Robert Thorpe; +Cc: help-gnu-emacs

Robert Thorpe <rt@robertthorpeconsulting.com> writes:

> Recently there was some discussion about upgrading Emacs.  Package
> managers and distros were discussed.
>
> I have a more basic question.  The distro I'm using doesn't provide
> Emacs 25, I'm still on 24.4.  So, I want to compile Emacs 25.
>
> The problem for me is the configuration flags.  I don't understand them
> that well.  What configuration flags would this list recommend?
>
> BR,
> Robert Thorpe

My two cents -

The GNU software build process has been refreshingly consistent for
decades.  If you use the tar-balls from https://ftp.gnu.org/pub/gnu/,
you can usually just follow the basic algorithm:

 - untar the tarball
 - cd pkg-ver.min/
 - ./configure --help

Often, the "special" non universial options to configure will be
documented in the output if you pass "--help" - this might vary from
package to package but has served me well since around 1990 or so.

The GNU pakcages usually have a "INSTALL" file which gives build
instructions as well.

Also, if you are building from source on MacOS you can start with the
build scripts here:

   https://github.com/caldwell/build-emacs.git

As for cherry picking options, this can really vary based on how you are
going to use Emacs and your platform.  As above, I usually take the time
to read the output of configure with --help first and read through the
output and think about which ones I want on/off/set/unset etc.  After a
few builds, I come up with my personal "standard" - YMMV.

Good luck,

Dan







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

* Re: Compiling Emacs from Source
  2017-11-08 16:32 ` Dan Mack
@ 2017-11-08 19:21   ` Emanuel Berg
  0 siblings, 0 replies; 13+ messages in thread
From: Emanuel Berg @ 2017-11-08 19:21 UTC (permalink / raw)
  To: help-gnu-emacs

Dan Mack wrote:

> My two cents [...] YMMV

If that's your two cents, one sure gets curious
whatever gold bullions must be in your family
safe...

Indeed, compiling from source isn't difficult.
The reason it is an elite/hacker hangup isn't
because of the level of difficulty, rather the
perfectionist/OCB approach. And, some people
actually benefit from it as well :)

In general, compiling an individual piece of
software isn't difficult. The package manager
and their interfaces are 1) a shorthand for
doing it with less effort and with a uniform
interface, which (both) are always welcome; and,
more importantly 2) handle the complexity that
rises when all those software pieces hook
together in different ways - different
versions, the compile order, circular
dependencies, and what have you.

The complexity itself isn't difficult to
understand either. Just try to write any piece
of software, say a small Elisp file that does
some variation of what is already there. OK, so
you write that. "Sweet, I'll just put it on my
lamer web pile so Joe, Fritz, and Ivan Hackers
all over the world can use it." Only it isn't
completely standalone as it needs a one-liner
which you have in another file which has
nothing to do with the first file! So you
factor it out to a library. Now this breaks
both files for anyone not having that library -
yeah, "library", like 2-3 lines of codes!
So you put in a comment "; hey guys, you need
to get this as well" so already an all-but
trivial project starts to tangle up. Guess what
with huge software systems developed for half
a century (soon).

So the complexity is in one sense similar to
compiler optimization. Recurrent values are
factored out, unused variables dropped - so
easy, an idiot can do it. Or at least
understand it. But a computer can do it in
close to zero time and it doesn't matter how
big the project gets, the result will be just
as good as those simple cases are applied again
and again...

-- 
underground experts united
http://user.it.uu.se/~embe8573




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

* Re: Compiling Emacs from Source
  2017-11-08  1:01   ` John Mastro
  2017-11-08  1:27     ` Emanuel Berg
  2017-11-08  4:26     ` Emanuel Berg
@ 2017-11-11 20:45     ` Robert Thorpe
  2 siblings, 0 replies; 13+ messages in thread
From: Robert Thorpe @ 2017-11-11 20:45 UTC (permalink / raw)
  To: help-gnu-emacs


Thank you everybody.

Robert Thorpe

John Mastro <john.b.mastro@gmail.com> writes:
> ./configure --with-xml2 --with-zlib --with-gnutls \
>     --with-x-toolkit=no --without-xpm --without-jpeg --without-tiff \
>     --without-gif --without-png --without-pop --without-compress-install
>
> For builds with X support, I use:
>
> ./configure --with-xml2 --with-zlib --with-gnutls --with-imagemagick \
>     --with-x-toolkit=lucid --with-xft --with-libotf --with-m17n-flt \
>     --without-pop --without-compress-install
>
> To be honest, I don't know if e.g. "--with-gnutls" is really necessary
> or if it would be auto-detected, so much of this may be redundant.
>
>         John



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

end of thread, other threads:[~2017-11-11 20:45 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-05 22:06 Compiling Emacs from Source Robert Thorpe
2017-11-05 22:43 ` Jean-Christophe Helary
2017-11-07  5:43   ` Kendall Shaw
2017-11-07 23:58 ` Emanuel Berg
2017-11-08  1:01   ` John Mastro
2017-11-08  1:27     ` Emanuel Berg
2017-11-08  4:26     ` Emanuel Berg
2017-11-11 20:45     ` Robert Thorpe
2017-11-08 16:32 ` Dan Mack
2017-11-08 19:21   ` Emanuel Berg
  -- strict thread matches above, loose matches on Subject: below --
2010-03-27  3:29 Compiling Emacs from source Henri-Paul Indiogine
2010-03-27  5:05 ` Óscar Fuentes
2010-03-27  9:52 ` Peter Dyballa

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).