是否有任何人谁成功,包括在一些编译器的libjpeg? 我什么都试过:开发C ++,VS10,代码块,用手复制标题和的lib,与链接器,但没有补充。 现在我真的confisued,因为没有关于如何编译它的编译器的官方指南。 我是真的很高兴,如果有人能提供关于如何库可以在任何编译器来编译教程。 先感谢您。
Answer 1:
下面是我如何建造的libjpeg在Windows上使用MinGW的:
1. MSYS MinGW的获取
我从拿到一份http://sourceforge.net/projects/mingw/ 。 从www.mingw.org引用:
MSYS是GNU工具如bash的集合,制作,呆子和grep允许的依赖于传统的UNIX工具是存在的应用程序和项目建设。
我们需要它来运行configure
附带的libjpeg源脚本。
2.获取的libjpeg源
从http://www.ijg.org/ ,采取了Unix格式包(Windows的一个不会与此过程工作)。 我接过jpeg_8d
版本。
3.准备一个建筑目录
我做了一个名为临时目录tmp
在D:\
,但你可以选择任何适合您的需求。 这重要的事情是在MSYS路径名。 因为它带来了一些* Unixity *到Windows,路径不能以原来的形式使用。 简而言之:
C:\path\to\file
变得/c/path/to/file
中土地MSYS,一个如此D:\tmp
变为/d/tmp
。
解压缩在libjpeg的来源D:\tmp
,让你有一个jpeg-8d
在那里目录。
创建一个jpeg-build
内部目录D:\tmp
,将举办建库。
现在一切都准备好身材。
4.的./configure,make,make install的
这是建设中的Unix土地的口头禅。 一个选项应该被添加到重定向安装过程D:\tmp\jpeg-build
。
运行在MSYS壳(在Windows中也称为MinGW的shell启动菜单)以下命令:
cd /d/tmp/jpeg-8d
./configure --prefix=/d/tmp/jpeg-build
make
make install
作为一个额外的步骤,您可以运行make test
的安全性。
这些命令将建立双方的libjpeg的静态和共享版本。
5.取本品,删除临时对象
如果一切运行正常,你可以删除D:\tmp\jpeg-8d
目录,但保留jpeg-build
一个。 它包含:
- 一个
include
目录,包含的libjpeg头。 你可以将它们移动到你的编译器的头文件目录。 - 一个
lib
目录,与.a
文件传递给链接器。 你可以将它们移动到你的编译器的库目录。 - 一
bin
目录,抱着libjpeg的共享库libjpeg-8.dll
和JPEG工具。 - 一个
share
目录,包含man
的JPEG工具的页面。
现在,您可以建立自己的程序并通过指示正确的包括和库路径链接它的libjpeg反对。
您可以找到有关libjpeg的建设和安装过程中很多细节install.txt
源码包内。
我希望这将是有益的。
Answer 2:
要编译libjpeg
9在Visual Studio 2012年,这里的步骤(解压缩归档文件后):
下载文件
WIN32.MAK
(例如,从http://www.bvbcode.com/code/f2kivdrh-395674-down ),并放置一个复制的根源代码目录(可能是C:\jpeg-9
但这取决于你解压缩它)。 我将把这个目录%jpegsrc%
从现在开始。 有了这个文件是很重要的; 否则步骤3将产生错误。在Visual Studio的命令提示符下,开到
%jpegsrc%
cd %jpegsrc%
在同一个命令提示,执行以下:
NMAKE /f makefile.vc setup-v10
这将创建两个Visual Studio 2010米中的解决方案
%jpegsrc%
jpeg.sln
和apps.sln
。打开在Visual Studio 2012年各解决方案的每一个会提示你所有的项目更新至2012年的格式。 点击“更新”。有一次,我做到了,提示没有出现。 在这种情况下,在右键单击
jpeg
在Solution Explorer解决方案,并选择“更新VC ++项目......”,这将产生同样的提示。保存并生成每个解决方案为正常。 (你必须建立在
jpeg.sln
之前解决apps.sln
,因为后者依赖于前者。)
注意:这个过程应该在Visual Studio 2010中正常工作,如果没有更新,但我没有测试它。
更新:此方法仍然有效,在Visual Studio 2015 libjpeg-9a
。
Answer 3:
它是建立jpeg.lib与VS10真的很简单。
首先,下载zip格式的libjpeg的源代码。 当时我在写这你可以找到它在这里 。
然后解压zip文件的内容到你的硬盘。
然后打开一个VS2010命令提示壳(或调用任何命令提示窗口vcvarsall.bat),cd到JPEG源目录(JPEG-8D在上面引用的下载)和键入以下内容:
nmake -f makefile.win setup-v10
这将产生两个VS2010的解决方案,和一堆项目文件。 该解决方案是:
-
jpeg.sln
,它建立jpeg.lib
-
apps.sln
,它建立的示例应用程序。
祝好运!
Answer 4:
如果你想在MSVC调试模式下为好。 按照AthanasiusOfAlex的方法,构建发布,则:
- 在项目上右键单击,并在最底部选择属性
- 点击配置管理器和活动解决方案配置下拉列表中选择-NEW-
- 将名称设置调试和自发布在下拉列表中选择复制配置设置,然后单击OK
- 关闭对话框,转到常规设置,并根据目标名称添加广告到最后,所以它看起来是这样的:$(项目名)d
- 在整个程序优化下拉列表中选择:没有整体规划设计优化
- 然后在C / C ++下在左边和在调试信息格式下拉配置属性选择C7兼容(/ Z7)
- 在优化选择禁用并选择NO两个启用光纤安全优化和全程序优化
- 在预处理,预处理的定义,点击编辑,并使用以下命令:WIN32 _DEBUG DEBUG _LIB _CRT_SECURE_NO_WARNINGS
- 下代码生成,下运行时库选择多线程调试DLL(/ MDD)
建立和大功告成!
Answer 5:
如果你不碰巧有Visual Studio 2010的安装,这里是Visual Studio的2017年是什么在起作用:
基本/常用步骤:
- 下载最新版本的libjpeg从的: http://www.ijg.org/ (压缩版),并将其解压到一个文件夹
- 打开“为VS2017开发人员命令提示符”
- 更改目录(
cd
)为您解压缩库的源
2017年VS方法:
包括通过运行Windows SDK v7.1A目录 (NMAKE后来对Win32.Mak必填项):
set INCLUDE=%INCLUDE%;c:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include
运行
nmake /f makefile.win setup-v15
(注意,VS2017的V15这里)
从这里开始关注你@AthanasiusOfAlex解释到Visual Studio 2010解决方案,您正在运行的Visual Studio版本升级。 如果你想调试配置,遵循什么@SteveEng解释。
错误可能会偶然发现:
- 如果
nmake
失败,告诉你它不知道如何使jconfig.h,手动重命名文件jconfig.vc
到jconfig.h
- 如果
nmake
失败,告诉你Win32.Mak无法找到,手动将其从步骤#4中提到的libjpeg的源目录中的SDK目录复制。 如果你不碰巧有安装SDK版本,从一个值得信赖的资源下载文件。 - 如果
nmake
失败,告诉你它不知道如何进行setup-v15
,审判并通过与错误开始用自己的方式setup-v10
,setup-v11
,等等......这些都是VS版本,其中一人应该工作,只要如您有任何VS版本不迟于2008年VS安装。
希望这有助于人们通过这种类似的痛苦去。