是否有人成功将libjpeg包含在某些编译器中?我尝试了所有方法:Dev C++,VS10,CodeBlocks,用手复制了 header 和lib,并添加了链接器,但是什么也没有。现在,我真的感到很吃惊,因为没有任何关于如何在任何编译器中进行编译的官方指南。如果有人可以提供有关如何在任何编译器中编译该库的教程,我将非常高兴。
先感谢您。
最佳答案
这是我在Windows上使用MinGW构建libjpeg的方法:
1.使用MSYS获取MinGW
我有一个http://sourceforge.net/projects/mingw/的副本。
从www.mingw.org引用:
我们将需要它来运行libjpeg源附带的configure
脚本。
2.获取libjpeg来源
从http://www.ijg.org/中,获取Unix格式的程序包(Windows程序无法使用此程序)。我使用了jpeg_8d
版本。
3.准备建筑物目录
我在tmp
中创建了一个名为D:\
的临时目录,但是您可以选择适合自己需要的任何目录。重要的是MSYS中路径的名称。由于Windows带来了一些Unixity,因此无法以其原始形式使用路径。
简而言之:C:\path\to\file
在MSYS land中变成/c/path/to/file
,因此D:\tmp
变为/d/tmp
。
在D:\tmp
中解压缩libjpeg源,因此您在其中有一个jpeg-8d
目录。
在jpeg-build
内创建一个D:\tmp
目录,它将保存构建的库。
现在一切准备就绪。
4. ./configure,进行安装
那就是在Unix Realm 构建的口头禅。应该添加一个选项以将安装过程重定向到D:\tmp\jpeg-build
。
在MSYS Shell(在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 header 。您可以将它们移动到编译器的 header 目录。 lib
目录,其中.a
文件传递给链接器。您可以将它们移至编译器的库目录。 bin
目录,其中包含libjpeg共享库libjpeg-8.dll
和jpeg工具。 share
目录,其中包含jpeg工具的man
页面。 现在,您可以通过指示正确的包含和库路径来构建程序并将其链接到libjpeg。
您可以在源包中的
install.txt
中找到有关libjpeg构建和安装过程的许多详细信息。我希望这会有所帮助。
关于c++ - 编译libjpeg,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12652178/