unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Dani Moncayo <dmoncayo@gmail.com>
To: Drew Adams <drew.adams@oracle.com>
Cc: Christoph Scholtes <cschol2112@googlemail.com>,
	help-emacs-windows@gnu.org, Sean Sieger <sean.sieger@gmail.com>,
	emacs-devel@gnu.org
Subject: Re: Windows Binaries
Date: Wed, 8 Aug 2012 22:23:25 +0200	[thread overview]
Message-ID: <CAH8Pv0hWnZR5uop3sYv5xWFVYRShfMBF8arHJiOMY_3Wc-vOeg@mail.gmail.com> (raw)
In-Reply-To: <FE2BA818F15E451B8BB7BF985A8FFC8B@us.oracle.com>

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

On Mon, Aug 6, 2012 at 4:53 PM, Drew Adams <drew.adams@oracle.com> wrote:
>> Sent: Wednesday, July 11, 2012 10:26 AM
>> The last Windows binary was posted on 2012-07-02.
>> Any chance we could have an update?  Thx.
>
> The last Windows binary was posted on 2012-07-23.
> Any chance we could have an update?  Thx.

FWIW, meanwhile here is an unofficial build just made by me:
  https://www.dropbox.com/s/b6tdxwdzpa9eh51/emacs-trunk-r109511-w32-i386-bin.zip

Its md5sum code is:
  52acd04bfe2ce1bf662a6f801b687a33 *emacs-trunk-r109511-w32-i386-bin.zip


And FWIW, building Emacs on Windows is not difficult.  The file
nt/INSTALL should tell you how to do it.  If you find it difficult to
follow, maybe it should be improved.  Give feedback to the
maintainers.  I've written down a personal recipe for doing my builds.
 I'm attaching it in case someone find it useful.

Bye,

-- 
Dani Moncayo

[-- Attachment #2: emacs-build-recipe.txt --]
[-- Type: text/plain, Size: 5173 bytes --]

----------------------------------------------------------------------
Personal recipe for building GNU Emacs on MS-Windows platforms.
By Dani Moncayo.
----------------------------------------------------------------------

0. Prerequisites
----------------------------------------------------------------------

* Operating system: MS-Windows XP or higher.

  I've actually tested this on:
  - Windows XP SP3.
  - Windows 7 (32 and 64-bit).

* Development environment: MinGW (www.mingw.org).

  Once MinGW is installed, make sure that the "bin" and "msys\1.0\bin"
  subdirectories of your installation are included in your PATH
  environment variable.

  Install also the "msys-base" package:
    >> mingw-get install msys-base

  This package provides you with a set of tools needed for the build
  process.

  Update the MinGW packages:
    >> mingw-get update
    >> mingw-get upgrade

* Internet conectivity (optional).

  Needed if you don't have the (latest) source code in your machine yet.

* Version control system: Bazaar (bazaar.canonical.com) (optional).

  Needed if you want to get the latest source code directly from a bzr
  branch.

  Make sure that the top directory of your Bazaar installation is
  included in your PATH environment variable.

* Compression tool: 7-zip (http://www.7-zip.org/) (optional).

  Needed if you want to generate a binary distribution automatically.

  Make sure that the top directory of your 7-zip installation is
  included in your PATH environment variable.

* Libraries (optional).

  Emacs has some optional features that depend on some libraries.  If
  you want these features, you need Windows ports of such libraries:
  - giflib: http://gnuwin32.sourceforge.net/
  - gnutls: http://sourceforge.net/projects/ezwinports/files/
  - jpeg: http://gnuwin32.sourceforge.net/
  - libiconv: ??
  - libpng: http://gnuwin32.sourceforge.net/
  - libxml: http://sourceforge.net/projects/ezwinports/files/
  - libxpm: http://cgit.freedesktop.org/xorg/lib/libXpm
  - tiff: ??
  - zlib: http://zlib.net/


1. Get the source code tree
----------------------------------------------------------------------

If you want a released version, download the corresponding file from
the GNU project (http://ftp.gnu.org/pub/gnu/emacs/) and extract it.

If you want the latest version of a branch (e.g. "trunk"):
* If you don't still have the branch, create it:
  - Change to the directory where you want to create the branch.
  - Run: >> bzr branch bzr://bzr.savannah.gnu.org/emacs/<branch>
* If you already have the branch, update it:
  - Change to the branch directory.
  - Run: >> bzr pull


2. Run the "configure" script
----------------------------------------------------------------------

This step can be omitted if you have a previous build and some files
are unchanged (that includes makefile.w32-in files, nt/config.nt, and
nt/configure.bat itself).

Change to the "nt" subdirectory.

For building without libraries, run:
  >> configure --with-gcc --no-opt --enable-checking --without-xpm --without-png --without-jpeg --without-tiff --without-gif

For building with all the libraries, run:
  >> configure --with-gcc --no-opt --enable-checking --cflags -I../../libs/libxpm-3.5.8/include --cflags -I../../libs/libxpm-3.5.8/src --cflags -I../../libs/libpng-1.4.10 --cflags -I../../libs/zlib-1.2.6 --cflags -I../../libs/giflib-4.1.4-1/include --cflags -I../../libs/jpeg-6b-4/include --cflags -I../../libs/tiff-3.8.2-1/include --cflags -I../../libs/libxml2-2.7.8-w32-bin/include/libxml2 --cflags -I../../libs/gnutls-3.0.16/include --cflags -I../../libs/libiconv-1.14-2-mingw32-dev/include --distfiles ../../libs/libxpm-3.5.8/src/libXpm.dll

Notes:
* Change the library paths (after each -I) to suit your setup.
* Use --no-opt for an unoptimized build (needed for debugging).
* If you don't want to use some of the libraries described above,
  don't write the correspondig "-I<path>" parameters.
* If your version of GCC is 4.6.1, add this parameter:
    --cflags -fno-omit-frame-pointer


3. Run the makefile targets
----------------------------------------------------------------------

* If you have a previous build of emacs, you can take the quick way:
  >> mingw32-make
  >> cd ..\lisp
  >> mingw32-make bzr-update
  >> cd ..\nt
  >> mingw32-make
  >> mingw32-make info
  >> mingw32-make install

* Else, you'll have to bootstrap from scratch:
  >> mingw32-make bootstrap
  >> mingw32-make info
  >> mingw32-make install

For paralell buiding:
  >> mingw32-make -j 4
  >> mingw32-make -j 4 XMFLAGS="-j 4" bootstrap

The latter is for GNU Make versions < 3.82.


3. Generating a redistributable Emacs binary
----------------------------------------------------------------------

* Run the "dist" target (requires 7-zip installed and on PATH):
  >> cd nt
  >> mingw32-make dist

  
----------------------------------------------------------------------

Now you can take your binary distribution to any machine with a
MS-Windows OS.  Just uncompess the zip file in the directory you want.


  reply	other threads:[~2012-08-08 20:23 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-11 17:26 Windows Binaries Drew Adams
2012-08-06 14:53 ` Drew Adams
2012-08-08 20:23   ` Dani Moncayo [this message]
2012-08-24 14:46   ` Drew Adams
2012-08-26 17:02     ` Dani Moncayo
2012-10-01 21:13     ` [h-e-w] " Drew Adams
2012-10-02 18:04       ` Dani Moncayo
2012-10-03  1:13         ` Richard Stallman
2012-10-03  6:42           ` Dani Moncayo
2012-10-04  1:34           ` David Vanderschel
2012-10-04  4:35             ` Paul Eggert
2012-10-04  8:05               ` [h-e-w] " Dani Moncayo
2012-10-04 15:59                 ` Paul Eggert
2012-10-04  8:09             ` Richard Stallman
2012-10-09 20:37         ` Dani Moncayo
  -- strict thread matches above, loose matches on Subject: below --
2011-12-07  3:27 emacs-20111206-r106632 " Christoph Scholtes
2011-12-31 22:38 ` Drew Adams
2012-02-13 15:43   ` Drew Adams
2012-02-15  1:32     ` Christoph Scholtes
2012-03-13 18:01       ` Drew Adams
2012-03-18 21:26         ` Dani Moncayo
2012-04-01 17:28         ` Drew Adams
2012-04-01 17:58           ` Christoph Scholtes
2012-04-01 17:59             ` Drew Adams
2012-06-29 14:45           ` [h-e-w] " Drew Adams
2012-06-29 14:55             ` Christoph Scholtes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAH8Pv0hWnZR5uop3sYv5xWFVYRShfMBF8arHJiOMY_3Wc-vOeg@mail.gmail.com \
    --to=dmoncayo@gmail.com \
    --cc=cschol2112@googlemail.com \
    --cc=drew.adams@oracle.com \
    --cc=emacs-devel@gnu.org \
    --cc=help-emacs-windows@gnu.org \
    --cc=sean.sieger@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).