我在Ubuntu 16.04中安装了所有libmagick-dev软件包(magickwand,magick ++等),但我不知道库在哪里......所以我没有将它包含在我的C程序中。
我需要为我正在开发的项目使用像素级功能
当输入'locate libmagick'时,我只是得到/ usr / share / doc的东西。
这是文档,而不是图书馆
我需要将.h文件包含在我的程序中,以便我可以操作图像
目前,我正在对图像处理进行测试(imagemagick.org网站中使用magickwand API的简单程序)...
但那是我不知道怎么做的事情。
图书馆在哪里?
这是第一步:(
已安装-dev包:
libmagick ++ - 6.q16-dev(imagemagick C ++开发人员API)
libmagickcore-6.q16-dev(C的magickcore低访问API)
libmagickcore -6-头
libmagickwand-6.q16-dev(magickwand C开发人员API)
libmagickwand -6-头
我还安装了libmagickwand-dev包,虽然apt说它是一个可以删除的过渡包...
我已经读过那些包装就够了,但似乎不是......
谢谢你的回复; - )
答案 0 :(得分:0)
在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
答案 1 :(得分:0)
我要做的是安装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
:)