unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#19050: Fail compile emacs with jpeg library on MinGW32
@ 2014-11-14  0:58 Lin Sun
  2014-11-14  6:02 ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Lin Sun @ 2014-11-14  0:58 UTC (permalink / raw)
  To: 19050

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

Hi Pals:
Fail when compile emacs with jpeg library on MinGW32, then change the
code to follow clip will compile successful,
@@ -6189,7 +6189,7 @@ jpeg_image_p (Lisp_Object object)
    different name.  This name, jpeg_boolean, remains in effect through
    the rest of image.c.
 */
-#if defined CYGWIN && defined HAVE_NTGUI
+#if defined HAVE_NTGUI
 #define boolean jpeg_boolean
 #endif
 #include <jpeglib.h>

and the configure command is:
../emacs-24.4.src/configure --with-w32
PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/d/MinGW/lib/pkgconfig:/d/MinGW/mingw32/lib/pkgconfig:/d/MinGW/sys-root/lib/pkgconfig
CFLAGS="-I/d/MinGW/sys-root/include -I/mingw/include
-I/mingw/mingw32/include" LDFLAGS="-L/d/MinGW/sys-root/lib -L/mingw/lib
-L/mingw/mingw32/lib"

The error message without modification as follow:
gcc  -std=gnu99 -c -mtune=pentium4   -DUSE_CRT_DLL=1 -I /d/mydata/home/user123/work-dev/emacs-24.4.mingw/../emacs-24.4.src/nt/inc -Demacs  -I. -I../../emacs-24.4.src/src -I../lib -I../../emacs-24.4.src/src/../lib  -mtune=pentium4      -Id:/MinGW/sys-root/include/libxml2          -MMD -MF deps/image.d -MP     -I/d/MinGW/sys-root/include -I/mingw/include -I/mingw/mingw32/include  ../../emacs-24.4.src/src/image.c
../../emacs-24.4.src/src/image.c:1843:68: error: expected declaration specifiers or '...' before '*' token
 #define DEF_IMGLIB_FN(rettype,func,args) static rettype (FAR CDECL *fn_##func)args
                                                                    ^
../../emacs-24.4.src/src/image.c:6203:1: note: in expansion of macro 'DEF_IMGLIB_FN'
 DEF_IMGLIB_FN (boolean, jpeg_start_decompress, (j_decompress_ptr));
 ^
../../emacs-24.4.src/src/image.c:1843:68: error: expected declaration specifiers or '...' before '*' token
 #define DEF_IMGLIB_FN(rettype,func,args) static rettype (FAR CDECL *fn_##func)args
                                                                    ^
../../emacs-24.4.src/src/image.c:6204:1: note: in expansion of macro 'DEF_IMGLIB_FN'
 DEF_IMGLIB_FN (boolean, jpeg_finish_decompress, (j_decompress_ptr));
 ^
../../emacs-24.4.src/src/image.c:6206:58: error: unknown type name 'boolean'
 DEF_IMGLIB_FN (int, jpeg_read_header, (j_decompress_ptr, boolean));
                                                          ^
../../emacs-24.4.src/src/image.c:1843:79: note: in definition of macro 'DEF_IMGLIB_FN'
 #define DEF_IMGLIB_FN(rettype,func,args) static rettype (FAR CDECL *fn_##func)args
                                                                               ^
../../emacs-24.4.src/src/image.c:1843:68: error: expected declaration specifiers or '...' before '*' token
 #define DEF_IMGLIB_FN(rettype,func,args) static rettype (FAR CDECL *fn_##func)args
                                                                    ^
../../emacs-24.4.src/src/image.c:6209:1: note: in expansion of macro 'DEF_IMGLIB_FN'
 DEF_IMGLIB_FN (boolean, jpeg_resync_to_restart, (j_decompress_ptr, int));
 ^
../../emacs-24.4.src/src/image.c: In function 'init_jpeg_functions':
../../emacs-24.4.src/src/image.c:1847:5: error: 'fn_jpeg_finish_decompress' undeclared (first use in this function)
     fn_##func = (void *) GetProcAddress (lib, #func);   \
     ^
../../emacs-24.4.src/src/image.c:6219:3: note: in expansion of macro 'LOAD_IMGLIB_FN'
   LOAD_IMGLIB_FN (library, jpeg_finish_decompress);
   ^
../../emacs-24.4.src/src/image.c:1847:5: note: each undeclared identifier is reported only once for each function it appears in
     fn_##func = (void *) GetProcAddress (lib, #func);   \
     ^
../../emacs-24.4.src/src/image.c:6219:3: note: in expansion of macro 'LOAD_IMGLIB_FN'
   LOAD_IMGLIB_FN (library, jpeg_finish_decompress);
   ^
../../emacs-24.4.src/src/image.c:1847:5: error: 'fn_jpeg_start_decompress' undeclared (first use in this function)
     fn_##func = (void *) GetProcAddress (lib, #func);   \
     ^
../../emacs-24.4.src/src/image.c:6221:3: note: in expansion of macro 'LOAD_IMGLIB_FN'
   LOAD_IMGLIB_FN (library, jpeg_start_decompress);
   ^
../../emacs-24.4.src/src/image.c:1847:5: error: 'fn_jpeg_read_header' undeclared (first use in this function)
     fn_##func = (void *) GetProcAddress (lib, #func);   \
     ^
../../emacs-24.4.src/src/image.c:6222:3: note: in expansion of macro 'LOAD_IMGLIB_FN'
   LOAD_IMGLIB_FN (library, jpeg_read_header);
   ^
../../emacs-24.4.src/src/image.c:1847:5: error: 'fn_jpeg_resync_to_restart' undeclared (first use in this function)
     fn_##func = (void *) GetProcAddress (lib, #func);   \
     ^
../../emacs-24.4.src/src/image.c:6226:3: note: in expansion of macro 'LOAD_IMGLIB_FN'
   LOAD_IMGLIB_FN (library, jpeg_resync_to_restart);
   ^
../../emacs-24.4.src/src/image.c: At top level:
../../emacs-24.4.src/src/image.c:6233:1: error: unknown type name 'boolean'
 jpeg_resync_to_restart_wrapper (j_decompress_ptr cinfo, int desired)
 ^
../../emacs-24.4.src/src/image.c: In function 'jpeg_resync_to_restart_wrapper':
../../emacs-24.4.src/src/image.c:6235:3: warning: implicit declaration of function 'fn_jpeg_resync_to_restart' [-Wimplicit-function-declaration]
   return fn_jpeg_resync_to_restart (cinfo, desired);
   ^
../../emacs-24.4.src/src/image.c: At top level:
../../emacs-24.4.src/src/image.c:6303:1: error: unknown type name 'boolean'
 our_memory_fill_input_buffer (j_decompress_ptr cinfo)
 ^
../../emacs-24.4.src/src/image.c:6367:3: error: unknown type name 'boolean'
   boolean finished;
   ^
../../emacs-24.4.src/src/image.c:6382:1: error: unknown type name 'boolean'
 our_stdio_fill_input_buffer (j_decompress_ptr cinfo)
 ^
../../emacs-24.4.src/src/image.c: In function 'jpeg_load_body':
../../emacs-24.4.src/src/image.c:6561:3: warning: implicit declaration of function 'fn_jpeg_read_header' [-Wimplicit-function-declaration]
   fn_jpeg_read_header (&mgr->cinfo, 1);
   ^
../../emacs-24.4.src/src/image.c:6566:3: warning: implicit declaration of function 'fn_jpeg_start_decompress' [-Wimplicit-function-declaration]
   fn_jpeg_start_decompress (&mgr->cinfo);
   ^
../../emacs-24.4.src/src/image.c:6634:3: warning: implicit declaration of function 'fn_jpeg_finish_decompress' [-Wimplicit-function-declaration]
   fn_jpeg_finish_decompress (&mgr->cinfo);
   ^
make[1]: *** [image.o] Error 1
make[1]: Leaving directory `/d/mydata/home/user123/work-dev/emacs-24.4.mingw/src'
make: *** [src] Error 2

Best Regards
Sunline


[-- Attachment #2: Type: text/html, Size: 18868 bytes --]

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

* bug#19050: Fail compile emacs with jpeg library on MinGW32
  2014-11-14  0:58 bug#19050: Fail compile emacs with jpeg library on MinGW32 Lin Sun
@ 2014-11-14  6:02 ` Eli Zaretskii
  2014-11-17  1:15   ` Lin Sun
  0 siblings, 1 reply; 6+ messages in thread
From: Eli Zaretskii @ 2014-11-14  6:02 UTC (permalink / raw)
  To: Lin Sun; +Cc: 19050

> From: Lin Sun (孙林) <Lin.Sun@mediatek.com>
> Date: Fri, 14 Nov 2014 00:58:49 +0000
> 
> Fail when compile emacs with jpeg library on MinGW32, then change the
> 
> code to follow clip will compile successful,
> 
> @@ -6189,7 +6189,7 @@ jpeg_image_p (Lisp_Object object)
> 
> different name. This name, jpeg_boolean, remains in effect through
> 
> the rest of image.c.
> 
> */
> 
> -#if defined CYGWIN && defined HAVE_NTGUI
> 
> +#if defined HAVE_NTGUI
> 
> #define boolean jpeg_boolean
> 
> #endif
> 
> #include <jpeglib.h>
> 
> and the configure command is:
> 
> ../emacs-24.4.src/configure --with-w32

What version of libjpeg are you using, and where did you download it
from?

(And why are you using the --with-w32 option to configure when
building a MinGW port of Emacs?)





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

* bug#19050: Fail compile emacs with jpeg library on MinGW32
  2014-11-14  6:02 ` Eli Zaretskii
@ 2014-11-17  1:15   ` Lin Sun
  2014-11-17  3:48     ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Lin Sun @ 2014-11-17  1:15 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 19050@debbugs.gnu.org

Dear Eli:

The lib jpeg can download from http://www.annexia.org/tmp/mingw/fedora-rawhide/src/SRPMS/mingw32-libjpeg-6b-8.fc11.src.rpm.
And the "--with-w32" may be for cygwin build only, that's my fail.
I think the line
> #if defined CYGWIN && defined HAVE_NTGUI
will make the libjpeg invalid when compile Emacs on MinGW32.
I had compile a Emacs with libjpeg on MinGW32, and the Emacs can show the *.jpg files well.
So the line should also work for MinGW32.

Best Regards
Sunline


************* Email Confidentiality Notice ********************
The information contained in this e-mail message (including any 
attachments) may be confidential, proprietary, privileged, or otherwise
exempt from disclosure under applicable laws. It is intended to be 
conveyed only to the designated recipient(s). Any use, dissemination, 
distribution, printing, retaining or copying of this e-mail (including its 
attachments) by unintended recipient(s) is strictly prohibited and may 
be unlawful. If you are not an intended recipient of this e-mail, or believe 
that you have received this e-mail in error, please notify the sender 
immediately (by replying to this e-mail), delete any and all copies of 
this e-mail (including any attachments) from your system, and do not
disclose the content of this e-mail to any other person. Thank you!

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

* bug#19050: Fail compile emacs with jpeg library on MinGW32
  2014-11-17  1:15   ` Lin Sun
@ 2014-11-17  3:48     ` Eli Zaretskii
  2014-11-18  0:30       ` Lin Sun
  0 siblings, 1 reply; 6+ messages in thread
From: Eli Zaretskii @ 2014-11-17  3:48 UTC (permalink / raw)
  To: Lin Sun; +Cc: 19050

> From: Lin Sun (孙林) <Lin.Sun@mediatek.com>
> CC: "19050@debbugs.gnu.org" <19050@debbugs.gnu.org>
> Date: Mon, 17 Nov 2014 01:15:58 +0000
> 
> The lib jpeg can download from http://www.annexia.org/tmp/mingw/fedora-rawhide/src/SRPMS/mingw32-libjpeg-6b-8.fc11.src.rpm.

Please try with this one instead:

  http://sourceforge.net/projects/ezwinports/files/jpeg-v9a-w32-bin.zip/download

> I think the line
> > #if defined CYGWIN && defined HAVE_NTGUI
> will make the libjpeg invalid when compile Emacs on MinGW32.

It shouldn't.  The problem that part solves is specific to the Cygwin
port of libjpeg, it shouldn't happen on MinGW.

> I had compile a Emacs with libjpeg on MinGW32, and the Emacs can show the *.jpg files well.

So did I, without that line.





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

* bug#19050: Fail compile emacs with jpeg library on MinGW32
  2014-11-17  3:48     ` Eli Zaretskii
@ 2014-11-18  0:30       ` Lin Sun
  2014-11-18  3:39         ` Eli Zaretskii
  0 siblings, 1 reply; 6+ messages in thread
From: Lin Sun @ 2014-11-18  0:30 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 19050@debbugs.gnu.org

Dear Eli:

You're right. Follow your instruction, without any modification, the Emacs can be compile success and work fine with the jpeg library.
Please mark this ticket as invalid.
Thank you.

Best Regards
Sunline

************* Email Confidentiality Notice ********************
The information contained in this e-mail message (including any 
attachments) may be confidential, proprietary, privileged, or otherwise
exempt from disclosure under applicable laws. It is intended to be 
conveyed only to the designated recipient(s). Any use, dissemination, 
distribution, printing, retaining or copying of this e-mail (including its 
attachments) by unintended recipient(s) is strictly prohibited and may 
be unlawful. If you are not an intended recipient of this e-mail, or believe 
that you have received this e-mail in error, please notify the sender 
immediately (by replying to this e-mail), delete any and all copies of 
this e-mail (including any attachments) from your system, and do not
disclose the content of this e-mail to any other person. Thank you!

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

* bug#19050: Fail compile emacs with jpeg library on MinGW32
  2014-11-18  0:30       ` Lin Sun
@ 2014-11-18  3:39         ` Eli Zaretskii
  0 siblings, 0 replies; 6+ messages in thread
From: Eli Zaretskii @ 2014-11-18  3:39 UTC (permalink / raw)
  To: Lin Sun; +Cc: 19050-done

> From: Lin Sun (孙林) <Lin.Sun@mediatek.com>
> CC: "19050@debbugs.gnu.org" <19050@debbugs.gnu.org>
> Date: Tue, 18 Nov 2014 00:30:09 +0000
> 
> You're right. Follow your instruction, without any modification, the Emacs can be compile success and work fine with the jpeg library.
> Please mark this ticket as invalid.
> Thank you.

OK, thanks.  I'm closing this bug.





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

end of thread, other threads:[~2014-11-18  3:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-14  0:58 bug#19050: Fail compile emacs with jpeg library on MinGW32 Lin Sun
2014-11-14  6:02 ` Eli Zaretskii
2014-11-17  1:15   ` Lin Sun
2014-11-17  3:48     ` Eli Zaretskii
2014-11-18  0:30       ` Lin Sun
2014-11-18  3:39         ` Eli Zaretskii

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