• Welcome to Vampyre Imaging Library Forum. Please login or sign up.
 

Vampyre Imaging demo project LCL Imager won't compile under Lazarus 9.26

Started by markd, 30 December 2008, 04:21:40

Previous topic - Next topic

markd

I get the following compiler errors:

lclimager.lpr(23,1) Error: Undefined symbol: IMJCOMAPI_JPEG_DESTROY$J_COMMON_PTR
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPIMIN_JPEG_DESTROY_DECOMPRESS$J_DECOMPRESS_PTR
lclimager.lpr(23,1) Error: Undefined symbol: IMJCAPIMIN_JPEG_DESTROY_COMPRESS$J_COMPRESS_PTR
lclimager.lpr(23,1) Error: Undefined symbol: IMJDMARKER_JPEG_RESYNC_TO_RESTART$J_DECOMPRESS_PTR$LONGINT$$BOOLEAN
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPIMIN_JPEG_CREATEDECOMPRESS$J_DECOMPRESS_PTR$LONGINT$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPIMIN_JPEG_READ_HEADER$J_DECOMPRESS_PTR$BOOLEAN$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMJCAPIMIN_JPEG_CREATECOMPRESS$J_COMPRESS_PTR$LONGINT$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMJCPARAM_JPEG_SET_DEFAULTS$J_COMPRESS_PTR
lclimager.lpr(23,1) Error: Undefined symbol: IMJCPARAM_JPEG_SET_QUALITY$J_COMPRESS_PTR$LONGINT$BOOLEAN
lclimager.lpr(23,1) Error: Undefined symbol: IMJCPARAM_JPEG_SET_COLORSPACE$J_COMPRESS_PTR$J_COLOR_SPACE
lclimager.lpr(23,1) Error: Undefined symbol: IMJCPARAM_JPEG_SIMPLE_PROGRESSION$J_COMPRESS_PTR
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPISTD_JPEG_START_DECOMPRESS$J_DECOMPRESS_PTR$$BOOLEAN
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPISTD_JPEG_READ_SCANLINES$J_DECOMPRESS_PTR$JSAMPARRAY$LONGWORD$$LONGWORD
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPISTD_JPEG_FINISH_OUTPUT$J_DECOMPRESS_PTR$$BOOLEAN
lclimager.lpr(23,1) Error: Undefined symbol: IMJDAPIMIN_JPEG_FINISH_DECOMPRESS$J_DECOMPRESS_PTR$$BOOLEAN
lclimager.lpr(23,1) Error: Undefined symbol: IMJCAPISTD_JPEG_START_COMPRESS$J_COMPRESS_PTR$BOOLEAN
lclimager.lpr(23,1) Error: Undefined symbol: IMJCAPISTD_JPEG_WRITE_SCANLINES$J_COMPRESS_PTR$JSAMPARRAY$LONGWORD$$LONGWORD
lclimager.lpr(23,1) Error: Undefined symbol: IMJCAPIMIN_JPEG_FINISH_COMPRESS$J_COMPRESS_PTR
lclimager.lpr(23,1) Error: Undefined symbol: TC_IMPASZLIB_ZLIB_VERSION
lclimager.lpr(23,1) Error: Undefined symbol: IMPASZLIB_DEFLATEINIT_$Z_STREAM$LONGINT$ANSISTRING$LONGINT$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMZDEFLATE_DEFLATE$Z_STREAM$LONGINT$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMZDEFLATE_DEFLATEEND$Z_STREAM$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMPASZLIB_INFLATEINIT_$Z_STREAM$ANSISTRING$LONGINT$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMZINFLATE_INFLATE$Z_STREAM$LONGINT$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMZINFLATE_INFLATEEND$Z_STREAM$$LONGINT
lclimager.lpr(23,1) Error: Undefined symbol: IMZINFLATE_INFLATERESET$Z_STREAM$$LONGINT
lclimager.lpr(23,1) Fatal: There were 26 errors compiling module, stopping

Any suggestions?

Galfar

Seems like linking problems.
What OS are you running and what Imaging version do you use?
Have look at ImagingJpeg.pas and ZLib/dzlib.pas units, here you can enable/disable different
JpegLib and ZLib implementations (those two are causing the problems),
try to disable FPC versions (PASJPEG and FPCPASZLIB) and enable Imaging
implementations (IMPASJPEG and IMPASZLIB) - the latter two are causing your error, but
the first two should be enabled as default for Lazarus.
Did you change something in project's compiler options?

markd

OS=Windows XP professional, using FPC compiler.  In Imagingjpeg.pas I find the following lines just before the interface comand:

{ Automatically use FPC's PasJpeg when compiling with Lazarus.}

{$IFDEF LCL}
  {$UNDEF IMJPEGLIB}
  {$DEFINE PASJPEG}
{$ENDIF}

interface

So it seems that IMJPEGLIB is automatically undefined since I have LCL defined for FPC.

In dzlib.pas I fine the lines:

{ Automatically use FPC's PasZLib when compiling with Lazarus.}

{$IFDEF LCL}
  {$UNDEF IMPASZLIB}
  {$DEFINE FPCPASZLIB}
{$ENDIF}

uses
     
So again, a similar problem.

Mark

Galfar

Try to modify it so that IMPASZLIB and IMJPEGLIB is defined and uses and see if that helps.
Also you are probably using older Imaging version,
top of ImagingJpeg unit now looks like this:
{$IF Defined(LCL) and not Defined(WINDOWS)}
  {$UNDEF IMJPEGLIB}
  {$DEFINE PASJPEG}
{$IFEND}

(Fix for progressive Jpeg FPC/JpegLib bug)


Quick Reply

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Name:
Email:

Shortcuts: ALT+S save/post or ALT+P preview

SMF spam blocked by CleanTalk