Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
imagemagick and grahicsmagick USE confusion
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Multimedia
View previous topic :: View next topic  
Author Message
Featherfoot
Veteran
Veteran


Joined: 28 Dec 2002
Posts: 1108
Location: Stuart, Florida

PostPosted: Mon Dec 27, 2010 10:11 pm    Post subject: imagemagick and grahicsmagick USE confusion Reply with quote

In trying to emerge graphicsmagick, I am running into a confusing condition with its USE flags. It requires imagemagick which seems to ultimately cause emerge to block because imagemagick is already installed! If I emerge imagemagick and then change the USE flag on graphicsmagick to not require imagemagick, it works correctly.

The solution seems to me to be counterintuitive and makes me wonder whether there is something wrong with the USE logic in portage.

Code:

bopper jc # emerge imagemagick -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] media-gfx/imagemagick-6.6.5.6  USE="X bzip2 corefonts cxx fontconfig graphviz jbig jpeg jpeg2k lcms openmp perl png raw svg tiff truetype wmf xml zlib -autotrace -djvu -fftw -fpx -gs -hdri -lqr -openexr -q32 -q8 -static-libs" VIDEO_CARDS="nvidia" 0 kB                                                               

Total: 1 package (1 reinstall), Size of downloads: 0 kB


When I try to emerge graphicsmagick, I get the following:
Code:

bopper jc # emerge graphicsmagick -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] media-gfx/graphicsmagick-1.3.12  USE="X bzip2 cxx doc imagemagick jbig jpeg jpeg2k lcms modules openmp perl png svg threads tiff truetype wmf zlib -debug -fpx -q16 -q32" 6,534 kB                         
[blocks B     ] media-gfx/imagemagick ("media-gfx/imagemagick" is blocking media-gfx/graphicsmagick-1.3.12)
[blocks B     ] media-gfx/graphicsmagick[imagemagick] ("media-gfx/graphicsmagick[imagemagick]" is blocking media-gfx/imagemagick-6.6.5.6)                                                                                   

Total: 1 package (1 new), Size of downloads: 6,534 kB
Conflict: 2 blocks (2 unsatisfied)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (media-gfx/graphicsmagick-1.3.12, ebuild scheduled for merge) pulled in by
    graphicsmagick

  (media-gfx/imagemagick-6.6.5.6, installed) pulled in by
    media-gfx/imagemagick[cxx] required by (media-gfx/pstoedit-3.50, installed)
    media-gfx/imagemagick required by (gnome-extra/libgsf-1.14.18, installed)
    media-gfx/imagemagick required by (media-libs/xine-lib-1.1.18.1, installed)
    (and 10 more)


For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):

http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#blocked



If I remove the USE flag for imagemagick from graphicsmagick, all seems to be well.

Code:

bopper portage # emerge graphicsmagick -p

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] media-gfx/graphicsmagick-1.3.12  USE="X bzip2 cxx doc jbig jpeg jpeg2k lcms modules openmp perl png svg threads tiff truetype wmf zlib -debug -fpx -imagemagick -q16 -q32"                                 
bopper portage #


emerge --info follows:

Code:

bopper portage # emerge --info
Portage 2.1.9.25 (default/linux/amd64/10.0/desktop, gcc-4.4.4, glibc-2.11.2-r3, 2.6.36-gentoo-r5 x86_64)
=================================================================
System uname: Linux-2.6.36-gentoo-r5-x86_64-AMD_Phenom-tm-_II_X4_970_Processor-with-gentoo-1.12.14
Timestamp of tree: Mon, 27 Dec 2010 21:00:01 +0000
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11-r1
dev-lang/python:     2.6.5-r3, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en es"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow X Xaw3d a52 aac aalib acl acpi aim alsa amd64 ao apache2 apm audiofile avahi berkdb blas bluetooth branding bzip2 cairo calendar caps cdda cddb cdinstall cdparanoia cdr cgi clamav cli consolekit cracklib crypt css ctype cups curl cvs cxx dbi dbm dbus dbx dga directfb doc dri dts dv dvb dvd dvdr eds emboss encode enscript evo examples exif expat fam fastcgi fbcon ffmpeg firefox flac fontconfig foomaticdb fortran ftp gcj gdbm gdu gif gimp glu gmp gnome gnuplot gnutls gphoto2 gpm graphviz gsl gsm gstreamer gtk gtkhtml guile gzip hal handbook hddtemp iconv icq idn ieee1394 imagemagick imlib innodb iodbc ipv6 jabber java java6 javascript jbig jingle jpeg jpeg2k kde kontact lapack latex lcms ldap libcaca libedit libgda libnotify libwww lirc lm_sensors lua lzma lzo mad maildir mikmod milter mime mmap mmx mng modules motif mozilla mp3 mp4 mpeg mpi mplayer msn mudflap multilib musepac mysql mysqli nas ncurses networkmanager nls nntp nptl nptlonly nsplugin odbc offensive ofx ogg opengl openmp osc oscar oss pam pango pch pcntl pcre pdf perl php plasma plotutils png policykit portaudio posix postgres ppds pppd pulseaudio python qt3support qt4 quicktime raw rdesktop readline rss ruby samba sasl sdl semantic-desktop session sharedext sharedmem simplexml smp sndfile snmp soap sockets socks5 speex spell sqlite sqlite3 sse sse2 ssl startup-notification subversion suid svg symlink sysfs syslog sysvipc szip tcl tcpd theora threads tidy tiff timiditytk tokenizer truetype udev unicode usb v4l v4l2 vcd vorbis wmf x264 xcb xcomposite xft xine xinerama xinetd xml xnlrpc xorg xosd xulrunner xv xvid yahoo zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en es" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

bopper portage #
Back to top
View user's profile Send private message
sebaro
Veteran
Veteran


Joined: 03 Jul 2006
Posts: 1141
Location: Romania

PostPosted: Tue Dec 28, 2010 6:19 am    Post subject: Reply with quote

imagemagick flag for graphicsmagick means:
Code:
--enable-magick-compat
     Normally GraphicsMagick installs only the 'gm' utility from which all commands may be accessed. Existing packages may be designed to invoke ImageMagick utilities (e.g. "convert"). Specify this option to install ImageMagick utility compatibility links to allow GraphicsMagick to substitute directly for ImageMagick. Take care when selecting this option since if there is an existing ImageMagick installation installed in the same directory, its utilities will be replaced when GraphicsMagick is installed.

So you can have both with this flag enabled.
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Tue Dec 28, 2010 7:12 am    Post subject: Reply with quote

sebaro wrote:
imagemagick flag for graphicsmagick means:
Code:
--enable-magick-compat
     Normally GraphicsMagick installs only the 'gm' utility from which all commands may be accessed. Existing packages may be designed to invoke ImageMagick utilities (e.g. "convert"). Specify this option to install ImageMagick utility compatibility links to allow GraphicsMagick to substitute directly for ImageMagick. Take care when selecting this option since if there is an existing ImageMagick installation installed in the same directory, its utilities will be replaced when GraphicsMagick is installed.

So you can have both with this flag enabled.


Isn't it opposite ? To have both imagemagick and graphicsmagic installed, one should not use imagemagick option in graphicsmagick
Back to top
View user's profile Send private message
sebaro
Veteran
Veteran


Joined: 03 Jul 2006
Posts: 1141
Location: Romania

PostPosted: Tue Dec 28, 2010 7:31 am    Post subject: Reply with quote

S :oops: rry, I meant can't.
Back to top
View user's profile Send private message
Featherfoot
Veteran
Veteran


Joined: 28 Dec 2002
Posts: 1108
Location: Stuart, Florida

PostPosted: Tue Dec 28, 2010 3:32 pm    Post subject: Reply with quote

There was clearly a reason that the imagemagick USE option wound up in make.conf, but it escapes me now. I doubt I would have included either if they hadn't been required for other applications.

I guess the authors of the imagemagick and graphicsmagick would care whether their package was providing a service if they replace each other. But as long as each works, I can't see that I care very much.

On the other hand, the USE flag that is required for some other application making imagemagick poisonous to graphicsmagick makes no sense and only causes trouble.
Back to top
View user's profile Send private message
M
Guru
Guru


Joined: 12 Dec 2006
Posts: 432

PostPosted: Tue Dec 28, 2010 6:20 pm    Post subject: Reply with quote

That is what package.use file is for, make.conf is for global USE flags, if you want to install some program alternative that can act and can install same binary files/links as original then you don't set that flag global.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Wed Dec 29, 2010 3:16 pm    Post subject: Reply with quote

The real cause for the problem seems to be a long list of bugs in bugzilla which are open but unresolved for months (I don't know why): All packages should actually depend on
Code:
|| ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] )
since media-gfx/graphicsmagick[imagemagick] should be a full replacements for imagemagick. So actually, with USE=imagemagick you should be able to uninstall imagemagick and install only graphicsmagick. For the moment, I suggest that you remove imagemagick, emerge graphicsmagick and put media-gfx/imagemagick-6.6.5.6 in your /etc/portage/profile/package.provided. This is a hack of course, but the only reasonable solution if you do not want to install two almost identical packages.
Back to top
View user's profile Send private message
Duncan_Shriek
n00b
n00b


Joined: 17 Aug 2010
Posts: 10

PostPosted: Thu Dec 08, 2011 2:26 am    Post subject: Reply with quote

mv wrote:
For the moment, I suggest that you remove imagemagick, emerge graphicsmagick and put media-gfx/imagemagick-6.6.5.6 in your /etc/portage/profile/package.provided. This is a hack of course, but the only reasonable solution if you do not want to install two almost identical packages.


The moment seems to be still lasting...

Is there a ticket in bugzilla about that?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Multimedia All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum