首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译libjpeg

编译libjpeg
EN

Stack Overflow用户
提问于 2012-09-29 19:07:36
回答 6查看 40.9K关注 0票数 28

有没有人成功地在一些编译器中包含了libjpeg?我尝试了所有方法: Dev C++、VS10、CodeBlocks,手动复制头文件和库,使用链接器添加,但什么都没有。现在我真的被征用了,因为没有官方的指南来指导如何在任何编译器中编译它。如果有人能提供一个关于如何在任何编译器中编译库的教程,我会非常高兴。提前谢谢你。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-09-29 21:43:50

下面是我是如何在Windows上使用MinGW构建libjpeg的:

1.使用MSYS获取MinGW

我从http://sourceforge.net/projects/mingw/那拿到一份副本。引用自www.mingw.org:

UNIX MSYS是一组

实用程序,例如bash、make、gawk和grep,它们允许构建依赖于传统UNIX工具的应用程序和程序。

我们将需要它来运行libjpeg源代码附带的configure脚本。

2.获取libjpeg源代码

http://www.ijg.org/获取Unix格式包( Windows格式包在此过程中不起作用)。我用的是jpeg_8d版本。

3.准备构建目录

我已经在D:\中创建了一个名为tmp的临时目录,但您可以根据需要进行选择。最重要的是MSYS中路径的名称。由于它为Windows带来了一些* Unixity *,因此路径不能以其原始形式使用。简而言之:

在微软领域,C:\path\to\file变成了/c/path/to/file,所以D:\tmp变成了/d/tmp

将libjpeg源代码解压到D:\tmp中,这样就有了一个jpeg-8d目录。

D:\tmp中创建一个jpeg-build目录,它将保存构建的库。

现在一切都为构建做好了准备。

4. ./configure、make、make install

这就是在Unix平台上建设的口号。应该添加一个选项,将安装过程重定向到D:\tmp\jpeg-build

在MSYS (在MinGW开始菜单中也称为MSYS)中运行以下命令:

代码语言:javascript
复制
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文件传给链接器。您可以将它们移到编译器的库目录中。
  • a bin目录,保存libjpeg共享库libjpeg-8.dll和jpeg工具。
  • a share目录,包含jpeg工具的man页。

<代码>F237

现在,您可以构建您的程序,并通过指示正确的包含和库路径将其链接到libjpeg。

您可以在源包中的install.txt中找到有关libjpeg构建和安装过程的许多详细信息。

我希望这将是有用的。

票数 23
EN

Stack Overflow用户

发布于 2013-09-27 15:48:01

在Visual Studio2012中编译libjpeg 9的步骤如下(解压归档文件后):

  1. 下载文件WIN32.MAK (例如,从http://www.bvbcode.com/code/f2kivdrh-395674-down下载),并在根源代码目录中放置一个副本(可能是C:\jpeg-9,但这取决于您将其解压缩的位置)。从现在开始,我将这个目录称为%jpegsrc%。拥有这个文件很重要;否则步骤3会产生错误。
  2. 在Visual Studio命令提示符中,打开%jpegsrc%cd %jpegsrc%
  3. At命令提示符,执行以下命令:

NMAKE /f makefile.vc setup-v10

这将在%jpegsrc%中创建两个Visual Studio2010解决方案:jpeg.slnapps.sln.

  • Open,每个解决方案在Visual Studio2012中。每一个都会提示您将所有项目更新为2012格式。点击“更新”。有一次我这样做了,提示没有出现。如果发生这种情况,请在解决方案资源管理器中右键单击jpeg解决方案,然后选择“更新VC++项目...”,这将产生相同的提示。

  • 按正常方式保存并构建每个解决方案。(您必须在apps.sln之前构建jpeg.sln解决方案,因为后者依赖于前者。)

注意:这个过程应该可以在Visual Studio2010中正常工作,不需要更新,但我还没有测试过它。

更新:此方法在libjpeg-9a的Visual Studio2015中仍然有效。

票数 46
EN

Stack Overflow用户

发布于 2012-09-30 00:24:22

用VS10构建jpeg.lib真的很简单。

首先,下载zip格式的libjpeg源代码。在我写这篇文章的时候,你可以找到它的here

然后将zip文件的内容解压缩到您的磁盘。

然后打开VS2010命令提示符外壳程序(或在任何命令提示符窗口中调用vcvarsall.bat ),cd进入jpeg源目录(上述下载中的jpeg-8d),并键入以下内容:

代码语言:javascript
复制
nmake -f makefile.win setup-v10

这将生成两个VS2010解决方案和一堆项目文件。解决方案是:

构建构建示例applications.的jpeg.lib

  • apps.sln,的
  • jpeg.sln

祝好运!

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12652178

复制
相关文章

相似问题

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