我已经下载并设置了Dev C ++的libjpeg包。我确保它是最新版本。 然后我在Dev C ++中添加了相应的库:
工具>编译器>目录 我还将编译器设置为TDM-GCC 4.8.1 64位版本
我添加了什么: 斌: 开发-CPP \ bin中
库: 开发-CPP \ lib中
C包括: 开发-CPP \包括
C ++包括: 开发-CPP \包括
我还在项目参数中添加了一个链接 链接: 开发-CPP / LIB / libjpeg.a
我的代码:
#include <iostream>
#include <cstdlib>
#include <cstdio>
extern "C" {
#include <jpeglib.h>
#include <jerror.h>
}
int main(void)
{
struct jpeg_decompress_struct cinfo;
struct jpeg_error_mgr jerr;
cinfo.err = jpeg_std_error(& jerr);
jpeg_create_decompress(& cinfo);
return 0;
}
我收到了错误:
D:\FP\main.o In function `main':
14 D:\FP\main.cpp undefined reference to `jpeg_std_error'
15 D:\FP\main.cpp undefined reference to `jpeg_CreateDecompress'
...
我看过这个似乎相关的post,但我不知道如何将它应用于C ++。 在我所链接的论坛中,当评论者告诉OP指定哪个编译器用于库时,问题以某种方式得到解决。即GCC for C和G ++ for C ++。我得到了与他相同的错误,所以我认为它是相关的,但我不确定如何重新配置它。
我看过帖子:
What is an undefined reference/unresolved external symbol error and how do I fix it?
但这不能回答我的问题,因为这是未定义引用的一般答案。
答案 0 :(得分:0)
您已设置IDE以在正确的位置查找库,但您尚未将项目设置为实际链接到 libjpeg 。在项目设置中,您将找到一个可以执行此操作的地方。