我在 Ubuntu 16.04 中安装了所有 libmagick-dev 软件包(magickwand、magick++ 等),但我不知道该库在哪里......所以我没有将其包含到我的 C 程序中。我需要在我正在开发的项目中使用像素级函数。
当输入“locate libmagick”时,我只得到 /usr/share/doc 的东西。 这是文档,而不是库。
我需要将 .h 文件包含到我的程序中,以便我可以操作图像。目前,我正在测试图像操作(imagemagick.org 网站上使用 magickwand API 的简单程序)...但这是我不知道该怎么做的事情...
图书馆在哪里?这是第一步。
已安装的-dev软件包:
我还安装了 libmagickwand-dev 软件包,尽管 apt 说它是一个可以删除的过渡软件包...... 我读过这些软件包就足够了,但似乎还不够...... 谢谢您的回复。
在 Ubuntu/Debian 系统上,这些库通常位于
/usr/lib
下,或者由软件包安装程序+系统架构管理的子目录。
您可以通过...找到它们
find /usr/lib -name 'libMagick*'
实际位置并不是非常重要,因为您应该利用
pkg-config
或 MagickWand-config
实用程序来获取所需的 CC + LD 标志。
例如
pkg-config --cflags --libs MagickWand
#=> -fopenmp -I/usr/include/ImageMagick -lMagickWand -lMagickCore
或
MagickWand-config --cflags --libs
#=> -fopenmp -I/usr/include/ImageMagick
# -lMagickWand -lMagickCore
因此,一个简单的 MagickWand 测试可能类似于......
// test.c (creates a single rose.bmp image for testing)
#include <wand/MagickWand.h>
int main()
{
MagickWandGenesis();
MagickWand *test = NewMagickWand();
MagickReadImage(test, "rose:");
MagickWriteImage(test, "rose.bmp");
DestroyMagickWand(test);
MagickWandTerminus();
return 0;
}
并且可以编译..
cc -o make_rose_image $(pkg-config --cflags --libs MagickWand) test.c
我要做的是安装 libmagick-dev 库。他们位于/usr/lib。
当输入
find /usr/lib -name 'libMagick*'
时,得到
/usr/lib/x86_64-linux-gnu/libMagick++-6.Q16.a
/usr/lib/x86_64-linux-gnu/libMagick++-6.Q16.so
/usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.so.2.0.0
/usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.so
/usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.a
/usr/lib/x86_64-linux-gnu/libMagick++-6.Q16.la
/usr/lib/x86_64-linux-gnu/libMagick++-6.Q16.so.5.0.0
/usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.so
/usr/lib/x86_64-linux-gnu/libMagick++-6.Q16.so.5
/usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.so.2
/usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.so.2.0.0
/usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.so.2
/usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.a
/usr/lib/x86_64-linux-gnu/libMagickCore-6.Q16.la
/usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.la
他们就在那里!
库位于 /usr/lib
使用 MagickWand 的程序由
调用
cc -o output $(pkg-config --cflags --libs MagickWand) source.c
:)