2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Emacs 25.3 が Windows 7 でコンパイルに失敗する時の対処

Posted at

2ヶ月くらい解決方法が見つけられなかったのでメモを残す。

参照:
https://groups.google.com/forum/#!topic/gnu.emacs.help/i6IsVfzaNJU
https://msdn.microsoft.com/en-us/library/windows/desktop/dd319121
http://proglab.blog.fc2.com/blog-entry-55.html

以下のエラーが出てコンパイルが失敗する。

.\temacs --batch --load loadup bootstrap
make[1]: *** [Makefile:737: bootstrap-emacs.exe] error 127

対応

Uniscribe Library(usp10) を gdi32 より前に置く必要がある。

*** configure.orig	2018-01-13 10:55:18.977321400 +0000
--- configure	2018-01-13 10:56:06.619805100 +0000
***************
*** 11193,11208 ****
    ac_config_files="$ac_config_files nt/emacs.rc nt/emacsclient.rc"
  
    if test "${opsys}" = "cygwin"; then
!     W32_LIBS="$W32_LIBS -lkernel32 -luser32 -lgdi32 -lole32 -lcomdlg32"
!     W32_LIBS="$W32_LIBS -lusp10 -lcomctl32 -lwinspool"
      # Tell the linker that emacs.res is an object (which we compile from
      # the rc file), not a linker script.
      W32_RES_LINK="-Wl,emacs.res"
    else
      UPDATE_MANIFEST=update-game-score.exe.manifest
      W32_OBJ="$W32_OBJ w32.o w32console.o w32heap.o w32inevt.o w32proc.o"
!     W32_LIBS="$W32_LIBS -lwinmm -lgdi32 -lcomdlg32"
!     W32_LIBS="$W32_LIBS -lmpr -lwinspool -lole32 -lcomctl32 -lusp10"
      W32_RES_LINK="\$(EMACSRES)"
      CLIENTRES="emacsclient.res"
      CLIENTW="emacsclientw\$(EXEEXT)"
--- 11193,11208 ----
    ac_config_files="$ac_config_files nt/emacs.rc nt/emacsclient.rc"
  
    if test "${opsys}" = "cygwin"; then
!     W32_LIBS="$W32_LIBS -lkernel32 -luser32 -lusp10 -lgdi32 -lole32 -lcomdlg32"
!     W32_LIBS="$W32_LIBS -lcomctl32 -lwinspool"
      # Tell the linker that emacs.res is an object (which we compile from
      # the rc file), not a linker script.
      W32_RES_LINK="-Wl,emacs.res"
    else
      UPDATE_MANIFEST=update-game-score.exe.manifest
      W32_OBJ="$W32_OBJ w32.o w32console.o w32heap.o w32inevt.o w32proc.o"
!     W32_LIBS="$W32_LIBS -lwinmm -lusp10 -lgdi32 -lcomdlg32"
!     W32_LIBS="$W32_LIBS -lmpr -lwinspool -lole32 -lcomctl32"
      W32_RES_LINK="\$(EMACSRES)"
      CLIENTRES="emacsclient.res"
      CLIENTW="emacsclientw\$(EXEEXT)"
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?