Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 57703 - aMule ebuild and wxGTK2
Summary: aMule ebuild and wxGTK2
Status: RESOLVED LATER
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Gentoo net-p2p team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-20 03:32 UTC by HopeSeekr
Modified: 2004-07-21 21:07 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description HopeSeekr 2004-07-20 03:32:56 UTC
This is not a duplicate bug!

When I tried to emerge aMule 2.0.0-r3, the following steps occurred:
a) Download + install crypto++ (15 minutes)
b) Download aMule (3MB)
then...

00:56:49 (12.06 KB/s) - `/usr/portage/distfiles/aMule-2.0.0rc3.tar.bz2' saved [2283194/2283194]

>>> md5 src_uri ;-) aMule-2.0.0rc3.tar.bz2
 * Compiling amule against wxGTK2 is not supported.


Obviously *all* of the above steps could have been AVOIDED if the checks for wxGTK2 were done *BEFORE* installing the crypto++ library :-((

Why must you make people download and compile the entire library before doing this?  I know from personal experience that checking for wxGTK2 is a simple 2 command process, which aMule's very own ./configure would show you how to do.

hope

Reproducible: Always
Steps to Reproduce:
1. ACCEPT_KEYWORDS=~x86 emerge amule
2.  wait
Comment 1 Giacomo Perale 2004-07-20 03:52:37 UTC
can't see the problem

USE="-gtk2" emerge wxGTK

and then re-emerge amule (try rc5, rc3 is outdated)


check is in the ebuild that need it, you can't do the check in a dependency that could be required by other programs.
Comment 2 Giacomo Perale 2004-07-20 03:53:49 UTC
and please, main developer of xmule... 
Comment 3 Giacomo Perale 2004-07-20 03:55:14 UTC
and please, main developer of xmule... don't start flaming here as you did on sourceforge, amule.org, xmule.org/ws, emule-project.net and too many other places.
Comment 4 Giacomo Perale 2004-07-20 04:12:10 UTC
for example:

octave (app-sci/octave) requires a fortran compiler that is built only when gcc is compiled with g77 USE flag enabled. so when you emerge octave you must build 

media-libs/plotutils
media-gfx/gnuplot
app-sci/octave

and the last package ends complaining for the missing compiler, but obviously you can't put a check or a einfo on gcc with somethink like "if you'll ever want to build octave compile me with +g77" because a lot of programs depends on gcc and most people will never install octave, so you just have to re-emerge gcc.


PS. sorry for my awful english, hope you can't understand what I mean.
Comment 5 HopeSeekr 2004-07-20 04:17:44 UTC
wow fast response time!  who are you by the way?

so what you are saying is that the emerging process is completely dumb about the requirements of the main project before it gets to compiling the main file?

If that was the case, then how would KDE sense that Qt 3x is not installed, that only 2.x is, and upgrade Qt *before* upgrading KDE?  If this is due to a flaw in the wxWidgets ebuild, please let me know and I'll submit a bug report there and/or try to fix it.

If, indeed, the emerge process *is* incapable of determining version information of installed requirements *before* starting, as appears *not* to be the case (see above), then please tell me so I can patch emerge properly.

However, there is a more simple alternative:  Since the xMule ebuild uses wxGTK2 with absolutely no problems, and since wxGTK2 is used by default, as gtk1 is very very outdated, just check for xMule.  If xMule is found, block aMule installation.

I"m just trying to install aMule :(  It has taken me over 20 minutes to just download and install dependencies just to figure out that the process has stalled :(  Now it looks like it will take another 20min to install wx without gtk2 support :(
Comment 6 Giacomo Perale 2004-07-20 04:38:09 UTC
I wrote newer amule ebuilds.

portage checks dependency versions, not compilation flags.

for example: when you type "emerge kde" the kde meta-package kde-base/kde is examined, portage see that it depends on kdelibs and checks kdelibs that requires >=x11-libs/qt-3.2.3 (you can see this on the ebuild), so if you have qt 2.x installed it requires the upgrade to highest stable release with version number > 3.2.3. 
The amule's ebuild case is different, the problem is not wxGTK version but wxGTK compilation flag. Portage can see that amule requires wxGTK >= 2.4.2 but can't know how this libraries are been compiled, so gtk2 check is done with a workaround (you can see it in the ebuild, section pkg_setup) and this can't be done before you effectively emerge amule.


you can find more info here:
http://www.gentoo.org/doc/en/portage-manual.xml
http://www.gentoo.org/doc/en/index.xml#doc_chap6
Comment 7 Giacomo Perale 2004-07-20 04:41:28 UTC
btw

"then please tell me so I can patch emerge properly."

amusing :) 

"However, there is a more simple alternative:  Since the xMule ebuild uses wxGTK2 with absolutely no problems, and since wxGTK2 is used by default, as gtk1 is very very outdated, just check for xMule.  If xMule is found, block aMule installation."

this is a block... and it seems to me a very bad idea... but I'm not a gentoo developer

Comment 8 Jon Hood (RETIRED) gentoo-dev 2004-07-21 21:07:22 UTC
yes, use-flag dependencies are in the works and portage won't be so 'dumb' on packages like this and octave (which did my homework through high-school and I owe so much gratitude to); I'm sorry it wasted so much of your time, but I promise portage is under heavy development and will support these features _SOON_. Otherwise, I flog all the developers in charge and say it's from you ;).
RESOLVE->LATER
remind me to change the ebuild as soon as portage gets its USE-flag brain