我如何在libjpeg-turbo中使用jpeg_mem_src,jpeg_mem_dest?

时间:2012-06-17 10:02:30

标签: c++ libjpeg libjpeg-turbo

libjpeg8包含这两个函数,但在libjpeg-turbo中有以下内容:

 //jconfig.h
 #define JPEG_LIB_VERSION 62

...

//jpeglib.h
#if JPEG_LIB_VERSION >= 80
/* Data source and destination managers: memory buffers. */
EXTERN(void) jpeg_mem_dest JPP((j_compress_ptr cinfo,
                   unsigned char ** outbuffer,
                   unsigned long * outsize));
EXTERN(void) jpeg_mem_src JPP((j_decompress_ptr cinfo,
                  unsigned char * inbuffer,
                  unsigned long insize));
#endif

如果我尝试使用“JPEG_LIB_VERSION 80”,我会得到以下内容:

  

错误LNK2019:函数中引用了未解析的外部符号_jpeg_mem_src ...

那么,如果可能的话我该如何使用这些功能呢?我需要编译一些libjpeg-turbo包吗?

1 个答案:

答案 0 :(得分:3)

预编译的.lib和.dll文件仅支持版本6的功能。您需要编译自己的库。将-DWITH_JPEG8=1标志传递给CMake以获得这两个功能。