Bug 20725 - Overbloated dependencies
Summary: Overbloated dependencies
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: libImageMagick-devel (show other bugs)
Version: unstable
Hardware: all Linux
: P3 enhancement
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-09 15:52 MSD by Sir Raorn
Modified: 2011-04-26 16:45 MSK (History)
13 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sir Raorn 2009-07-09 15:52:47 MSD
$ for i in Magick++ Magick MagickCore MagickWand Wand; do $i-config --libs; done       -lMagick++ -lMagickWand -lMagickCore -llcms -ltiff -lfreetype -ljpeg -llqr-1 -lglib-2.0 -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lpthread 
 -lMagickCore -llcms -ltiff -lfreetype -ljpeg -llqr-1 -lglib-2.0 -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lpthread 
 -lMagickCore -llcms -ltiff -lfreetype -ljpeg -llqr-1 -lglib-2.0 -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lpthread 
 -lMagickWand -lMagickCore -llcms -ltiff -lfreetype -ljpeg -llqr-1 -lglib-2.0 -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lpthread 
 -lMagickWand -lMagickCore -llcms -ltiff -lfreetype -ljpeg -llqr-1 -lglib-2.0 -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lpthread 

Вся эта пачка библотек требуется при линковке, отсутствует в зависимостях -devel пакета и на самом деле для динамической линковке не нужна.  Зависимости у заголовочных файлов:

$ grep -h '#include' /usr/include/ImageMagick/**/*.* | sort -u | grep -v '[Mm]agick+\?+\?/' | grep -v 'wand/'                                             
#include <algorithm>
#include <exception>
#include <functional>
#include <iterator>
#include <list>
#include <map>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <sys/types.h>
#include <time.h>
#include <utility>

Это glibc-devel и libstdc++-devel (которые вытянутся через gcc и gcc-c++ соответственно).

ImageMagick/configure.ac:

-MAGICK_LIBS="-lMagickCore $MAGICK_DEP_LIBS $MAGICK_API_LIBLTDL"
+MAGICK_LIBS="-lMagickCore"

После чего *-config и *.pc становятся чистыми и красивыми.  С такой библиотекой (и отключенным HDRI) вполне удачно собрался RMagick.
Comment 1 Repository Robot 2011-04-26 16:45:42 MSK
ImageMagick-6.6.9.6-alt1 -> sisyphus:

* Tue Apr 26 2011 Anton Farygin <rider@altlinux> 6.6.9.6-alt1
- new version
- removed extra dependencies in magick-config (closes: #20725)