HowTo Compile In MDK

From AMule Project FAQ
Jump to: navigation, search

Someone should check how recent this Article is, and update it for 2.1.3 or better 2.2.0

by elui


English | Español | Français

Before we start

This how-to explains the way to install and compile aMule on Mandrake 10.0 by using urpmi. I guess it would work in any other Mandrake version but I haven't tried it.

There is 2 ways to do it now, for aMule until 2.0.0rc5 and for versions above (beginning at rc6).

This is because we can link aMule with wx-2.5.x from 2.0.0rc6

There are others packages needed to install aMule on Mandrake. However, in this case, Mandrake official packages are fine. These packages are:

libgd <----- this is needed only to use the -o option of CAS. If you're not going to use that option, you don't have to install it.

If you also want to compile aMule, you must install the devel packages corresponding to those:

libgd-devel

To install all this packages, you must have well-configured urpmi sources (look easyurpmi or urpmidor to verify). If you have them well-configured, you only must do:

urpmi libgd

urpmi libgd-devel

Let's start!

aMule version 2.0.0rc5 or earlier (For 9.2-10.0 only)

Always remember:

The problem when installing aMule on Mandrake] 10 (and 9.X), is that wxGTK official Mandrake package is linked against GTK2 and aMule needs it to be linked against GTK1. The solution is to use the wxWidgets RPM packages from the aMule website.

This can be done following the compilation how-to in the wiki of aMule, but when doing it with urpmi, you have the advantage of controlling the version conflict between Mandrake's wxGTK package and aMule's website package every time you update your system. 1. Create a directory to put in wxGTK and wxBase RPM packages from the aMule website:

mkdir /home/user/RPMS

Copy there:

wxGTK-2.4.2.rpm
wxBase-2.4.2.rpm
aMule-2.0.0rc5-MDK_9.2-10.rpm

if you also want to compile aMule you must also copy:

wxGTK-devel-2.4.2.rpm

2. Get in the new directory,

cd /home/user/RPMS

and run genhdlist to create hdlist.cz:

genhdlist

3. Add that directory as a new source to urpmi

urpmi.addmedia dirRPMS file://home/user/RPMS with hdlist.cz

4. Go to RPMDRAKE -> Remove Software, and search for wx. Select wxBase, wxGTK and wxGTK-devel and remove all of them from your computer. If your computer doesn't find any of them, it just wasn't installed, so there's no need to remove it ;)
Make sure you uninstall all wxWidgets, since it could happen that more than one version is installed.

5. Install wxGTK packages from dirRPMS source by doing:

urpmi wxGTK-2.4.2

If you also want to compile aMule you must also install:

urpmi wxGTK-devel-2.4.2

6. Install wxBase package:

urpmi wxBase-2.4.2

Make sure you install the right packages from dirRPMS copying their exact name after urpmi:

urpmi wxGTK-devel-2.4.2

Then you must create the following symbolic links:

ln -sf /usr/bin/wxgtk-2.4-config /usr/bin/wx-config
ln -sf /usr/bin/wxbase-2.4-config /usr/bin/wxbase-config

7. Now you can do:

urpmi aMule-2.0.0rc5-MDK_9.2-10.rpm

Or compile aMule from the sources .tar.gz

Following this how-to, you get an easy way to install back all of the packages that urpmi will remove each time you update your system with urpmi --auto-select.

After updating the system with urpmi you must remove back wxBase (and wxGTK if it also changes it), and then install the packages from dirRPMS as we have done before.

aMule version 2.0.0rc6 or newer (For 9.2-10.0 only)

There are also two ways to proceed here, by using wxWidgets packages directly from Mandrake, or using custom wx rpms.

Some users have reported problems using wxWidgets from Mandrake, so you are warned!

As usual, clean your computer before by suppressing all previous wx rpms:

Go to RPMDRAKE -> Remove Software, and search for wx and remove all.

Installation with Mandrake wxWidgets RPM

Go to RPMDRAKE -> Install Software and select libwxGTK2ud (and libwxGTK2ud-devel if you want to compile aMule yourself)

Then, install aMule-2.0.0rc6-1mdk-10.0.i586.rpm.

Installation with customs wxWidgets RPM

Install libwxgtk-gtk2u_2.5_3-2.5.3-4mdk-10.0.i586.rpm and if you want to compile aMule yourself libwxgtk-gtk2u_2.5_3-devel-2.5.3-4mdk-10.0.i586.rpm. Then aMule-2.0.0rc7-1mdk-10.0.i586.rpm

aMule version 2.0.0rc6 or newer (For 10.1 only)

There is two way to proceed here, by using wx packages directly from Mandrake, or using custom wxWidgets rpms.

Some users have reported problems using wx from Mandrake, so you are warned!

As usual, clean your computer before by suppressing all previous wx rpms:

Go to RPMDRAKE -> Remove Software, and search for wx and remove all.

Installation with Mandrake wxWidgets RPM

Go to RPMDRAKE -> Install Software and select wxGTK2.5 (and wxGTK2.5-devel if you want to compile aMule yourself)

Then, install aMule-2.0.0rc6-2mdk-10.1.i586.rpm.

Installation with Custom wx RPMs

Install libwxgtk-gtk2u_2.5_3-2.5.3-5mdk-10.1.i586.rpm and if you want to compile aMule yourself, libwxgtk-gtk2u_2.5_3-devel-2.5.3-5mdk-10.1.i586.rpm. Then aMule-2.0.0rc7-2mdk-10.1.i586.rpm

aMule version >= 2.0.3 CVS (For 10.2 only)

by iDAREK

  1. First remove all wxWidgets rmps
  2. Download RPMs and install it:
  3. Install (only this wxWidgets packages):

libwxgtkgl2.5_3-2.5.3-6mdk
libwxgtk2.5_3-devel-2.5.3-6mdk
wxGTK2.5-2.5.3-6mdk
libwxgtk2.5_3-2.5.3-6mdk

You can find it on http://rpm.pbone.net/

Then you may install aMule from RPM or try to compile from sources.

Good luck!