首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >链接libjpeg-turbo在vs c++ 2017

链接libjpeg-turbo在vs c++ 2017
EN

Stack Overflow用户
提问于 2018-02-12 05:36:09
回答 2查看 2.5K关注 0票数 0

我的问题很简单。我无法在我的项目中链接libjpeg-turbo。

我想尝试一下this exemple,但我无法编译:

我不知道我做错了什么:

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-12 07:22:22

您可以从github下载vcpkg,并在Powershell提示符下运行vcpkg.exe (以管理模式打开)。vcpkg可以将许多开源项目(包括静态库和动态库都支持)安装为可以在VS 2017和VS 2015 (SP3) IDE中使用的包。您可以使用选择x86或x64平台,在某些情况下甚至允许选择工具集(例如.\vcpkg安装boost:x64-windows-v141 )。如果您使用“integrate”作为vcpkg命令行,所有库都将自动链接到您的项目,项目.dll文件将自动复制到您的应用程序文件夹中。

因此,在安装vcpkg.exe之后,您可以输入.\vcpkg安装libjpeg-turbo:x64-windows-静态,安装后键入.\vcpkg集成安装。jpeg库将自动链接到您的项目(重新启动VS 2017并享受)。

票数 2
EN

Stack Overflow用户

发布于 2019-02-20 08:45:49

请注意,对于turbojpeg static.lib,除非您自己重新编译libjpegturbo,否则不能使用> for 2010进行编译。

如果可以的话,我建议使用MinGW来构建;可以不带任何问题地使用turbojpeg静态库。

https://github.com/libjpeg-turbo/libjpeg-turbo/issues/45#issuecomment-181690889

第一个问题,您可以通过链接到_snprintf_s来消除未解决的legacy_stdio_definitions.lib符号错误。但是,第二个错误(“未解决的外部符号__iob_func")并不容易解决。这是由于微软最近推出的新的“通用C运行时”库(ucrt)。不幸的是,新的库引入了一些与以前的Microsoft CRT相当严重的不兼容。 提到http://www.libjpeg-turbo.org/Documentation/OfficialBinaries,在libjpeg-turbo中永远不可能完全隔离CRT,因为libjpeg API函数(jpeg_stdio_dest()和jpeg_stdio_src())需要将文件句柄从调用程序传递到库。如果libjpeg API库被用作DLL ( jpeg62.dll ),则调用程序必须与jpeg62.dll共享相同的CRT DLL,否则将文件句柄从一个传递到另一个不能工作(文件指针将指向应用程序或DLL内存空间中的不透明结构,因此指针对另一个没有意义)。 传统上,与静态libjpeg-turbo库链接是可能的,即使使用与编译库所用的不同版本的VisualC++,但显然这从未被支持(https://connect.microsoft.com/VisualStudio/feedback/details/1144980/error-lnk2001-unresolved-external-symbol-imp-iob-func),只是因为不同版本的C++中的C++相当相似。很明显,所有这些都是在引入ucrt之后从窗口消失的。谷歌的错误信息显示,我们并不是唯一的OSS项目遭受这种痛苦。 目前,这是我所知道的唯一的解决办法:

  • 如果您使用的是TurboJPEG API,您可以链接到turbojpeg.dll,而不是turbojpeg static.lib。
  • 如果您正在使用libjpeg API,您可以链接到jpeg62.dll,而不是jpeg-static.lib,前提是您的应用程序没有调用jpeg_stdio_src()或jpeg_stdio_dest()。
  • 如果需要使用jpeg-static.lib或turbojpeg static.lib,则需要使用较早版本的VisualC++构建应用程序,或者使用VisualC++ 2015构建libjpeg-turbo。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48740107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档