ImageMagick 的安装及使用 - Rogn - 博客园https://www.cnblogs.com/lfri/p/11601211.html

ImageMagick (Magick++ for C++) configuration in Visual Studio 2012_dengri9538的博客-CSDN博客网上的ImageMagick资料真心不多啊,而且由于版本战线太长,导致很混乱。最初在网上搜了很多配置方案,都运行不过去,最后无意间看到打开的vs工程中#include <opencv2\opencv.hpp> ,决定直接按照opencv的配置方法试试,还真跑通了。只需要简单几步而已。运行环境: windows7 x64 + vs2012 +ImageMagi...https://blog.csdn.net/dengri9538/article/details/101508328?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~default-3.queryctrv2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~default-3.queryctrv2&utm_relevant_index=6

 【Magick++】配置开发环境_一如当初-CSDN博客_magick++有两种安装方法,一是用官方编译好的库,二是自己通过源码编译。第一种方式:1、去 https://imagemagick.org/script/download.php#windows 下载对应的安装包。2、安装过程中勾选"Install Development..."选项。安装完成后在安装目录下就会有对应的DLL文件和头文件了,但是这种方式有个小问题,就是对于运行时的依赖。比如...https://blog.csdn.net/aqtata/article/details/89514668

Linux下安装和使用imagemagick_u010351326的专栏-CSDN博客_imagemagick linux超简单的imagemagick通过源文件安装下载imagemagick下载工具库开始安装需要先安装库文件安装imagemagick下载imagemagick下载路径:https://www.imagemagick.org/download/ImageMagick.tar.gz下载工具库如果只安装imagemagick的话里面只会支持一种格式的文件,这里我以tif转为pdf为例子库地...https://blog.csdn.net/u010351326/article/details/84955621

Visual Studio2013下Magick++配置方法_子宽的专栏-CSDN博客ImageMagick是一个图片编辑的跨平台开源库,可以读写各种类型的图片(包括svg格式的矢量图)并对其进行处理。本文将介绍Win10平台下用源码编译ImageMagick库的流程,主要支持Visual Studio 2013的调用。https://blog.csdn.net/u010281174/article/details/52224829ImageMagick – Install from Sourcehttps://imagemagick.org/script/install-source.php#windowsLinux环境安装imagemagick_工匠解码-CSDN博客系统环境:[root@njyf-test-zxl-10-20-2-127 pic]# cat /etc/*releaseCentOS Linux release 7.1.1503 (Core) 废话不多说,直接按如下步骤操作即可。步骤1:安装一些必要的yum,直接复制如下命令即可yum install tcl-devel.x86_64 libpng-devel.x86_64 libjpeg-dehttps://blog.csdn.net/MrZhangXL/article/details/779346911.win10下安装imagemagick

1.1 使用命名行去调用

建议安装7.0以后的版本,不用配环境变量,在官网的download下载之后,一路next即可。

其中需要注意的是一定要勾选第5个,install development headers and blibraries for c and c++。方便后面直接在vs中调用imagemagick的api。

 装完之后有

安装完成后可以用命名行来调用

此处7.0之后的版本是7.1.0-Q16,7.0之前的版本为6.9.12-Q16,这两个版本还是有点区别的,装完都可以通过命令行调用,但是6.9.12-Q16的有lib和include。

1.2 在vs中通过magick的api来调用

这里其实也不用源码编译,可以用win版本的exe,和opencv同样的套路即可,但是在7.0版本之前还是有include和lib文件的,可以像opencv一样进行配置,7.0之后就没有了,想在vs中调用的就是直接用源码编译,不过即便是7.0之前的版本,基本都是通过vs2013编译的,如果项目用其他版本的话就会导致同时依赖多个版本的vc运行库问题,所以还是用动态库链接的话,还是从源码安装,保证和自己的项目使用相同版本的编译器。

1.2.1 VS13用exe关联 and VS19关联

直接关联指的是用exe安装目录下的lib,include导入到VS中,这种方式会出现很多奇怪的错误,但是main函数还是能够导入magick++.h的,本来以为imagemagick的exe版本是用VS13编译的,把VS变成13版本直接关联应该是可以的,但实际上也不行,步骤是1.在VC++中添加包含目录,库目录,在C/C++中常规中添加附加包含目录,在链路器中的常规中添加库目录,2.要添加安装的imagemagick的环境变量,3.是要把在链路器中添加的库目录的几个dll添加到windows/system32下面,基本和在本地安装opencv是一样的。我尝试了VS13和VS19,这两个都能链接到magick++.h,但都有错,跑不起来。这条路我看博客上讲的最多,但是实际上还是跑不起来的。

用exe装了,在vs中直接加载动态库,我看exe版本是用VS13编译的,用VS13和VS19跑的,能够链接到头文件,但是跑不同,这种就属于直接使用编译好的二进制包了。

1.2.2 用VS重新编译源码

用VS19编译的话,可以编译成功,但是缺少几个重要的dll,在imagemagick的windows版本的编译上在ImageMagick-Windows\VisualMagick\configure目录下提供了configure.2019.sln和configure.sln,前者是在VS2019编译的,后者是VS2013编译的,VS2013去编译configure.sln是可以生成configure.exe,但是打开exe之后只能从VS15开始支持,我选了VS19,之后在用VS13调Visual*.sln,直接报错,这里还是有问题的。用vs19编译时,可以生成中生成解决方案来运行,编译一次时间非常长。CORE_DB_Mangick++_.dll,CORE_DB_magick_.dll,CORE_DB_wand.dll编完少这三个最重要的动态链接库。

用VS编译完的和exe直接解压安装的其实是一样的,我对比了下,VS编译源码的比exe解压安装的正好少了几个核心的dll。

1.2.3 比较VS编译源码的产生的文件和exe安装文件

VS编译的源码把基础的imagemagick所依赖的库都放在一起了,真正编出来有用的核心代码可能没那么多,之所以编译了那么长时间,可能都在编译其他的库了,意义不大。核心还是CORE_DB_Mangick++_.dll,CORE_DB_magick_.dll,CORE_DB_wand.dll和它对应的lib文件。

2.linux下安装imagemagick

版本:ImageMagick 7.1.0-19 Q16-HDRI x86_64,

linux下比较好的地方在于用gcc编译,不用担心vs下不同版本编译的问题,在linux上装好之后,可以直接通过include<>来导入头文件调用它,但是cmakelist上必须要链接imagemagick,这个和常规的opencv是一样的,如果用c++版本的话,在linux上还是要通过cmakelist去链接它,但是通过命令行是没问题的。

解压 tar -xzvf ImageMagick-7.1.0-19
进入目录 cd ImageMagick-7.1.0-19
执行 ./configure
执行 sudo make 
执行 sudo make install
执行 ldconfig /usr/local/lib
检测是否成功 convert -version

3.lib和dll之间的关系

动态链接的情况下,有两个文件:一个是LIB文件,一个是DLL文件。LIB包含被DLL导出的函数名称和位置,DLL包含实际的函数和数据,应用程序使用LIB文件链接到DLL文件。在应用程序的可执行文件中,存放的不是被调用的函数代码,而是DLL中相应函数代码的地址,从而节省了内存资源。DLL和LIB文件必须随应用程序一起发行,否则应用程序会产生错误。

GitHub 加速计划 / li / linux-dash
6
1
下载
A beautiful web dashboard for Linux
最近提交(Master分支:3 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐