Difference between revisions of "HowTo Compile In Gentoo"

From AMule Project FAQ
Jump to: navigation, search
m (=amule-cvs=)
Line 3: Line 3:
 
== Introduction ==
 
== Introduction ==
  
Gentoo is known for choices. Unfortunately, some choices require more labor than others. As such, [[aMule]] comes in a variety of versions and installation methods based on what version of wxGTK you decide to use...
+
Gentoo is known for choices. Unfortunately, some choices require more labor than others. As such, [[aMule]] comes in a variety of versions and installation methods based on what version of [[wxGTK]] you decide to use...
  
 
== Methods of Installation ==
 
== Methods of Installation ==
Line 10: Line 10:
 
This ebuild is marked as '''stable''' for x86 platforms.
 
This ebuild is marked as '''stable''' for x86 platforms.
  
This [[aMule]] version is well over a year old and lacks many features. It depends on wxGTK compiled against ''GTK-1.2''. [[aMule]] devs highly discourage use of this version but if you insist upon using it, simply emerge it. Be warned that support is probably limited.
+
This [[aMule]] version is well over a year old and lacks many features. It depends on [[wxGTK]] compiled against ''GTK-1.2''. [[aMule]] devs highly discourage use of this version but if you insist upon using it, simply emerge it. Be warned that support is probably limited.
  
 
Dependencies: >=x11-libs/wxGTK-2.4.2-r2; >=net-misc/curl-7.11.0; >=sys-libs/zlib-1.2.1<br>
 
Dependencies: >=x11-libs/wxGTK-2.4.2-r2; >=net-misc/curl-7.11.0; >=sys-libs/zlib-1.2.1<br>
Line 45: Line 45:
 
=== amule-1.2.8.ebuild ===
 
=== amule-1.2.8.ebuild ===
  
1. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag). Remember, since this version requires wxGTK compiled against ''GTK-1.2'', you must compile without ''GTK-2''.
+
1. Modify /etc/portage/package.use to suit your needs (please note that ''debug'' is enabled regardless of ''USE'' flag). Remember, since this version requires [[wxGTK]] compiled against ''GTK-1.2'', you must compile without ''GTK-2'':
 
+
 
   net-p2p/amule debug gtk2 nls remote
 
   net-p2p/amule debug gtk2 nls remote
  
2. Emerge package.
+
2. Emerge package:
   $ emerge amule -pv
+
   emerge amule -pv
   $ emerge amule
+
   emerge amule
  
 
=== amule-2.0.0_rc7.ebuild ===
 
=== amule-2.0.0_rc7.ebuild ===
  
1. Add packages to package.keywords
+
1. Add packages to ''package.keywords'':
 
   echo "net-p2p/amule ~x86" >> /etc/portage/package.keywords
 
   echo "net-p2p/amule ~x86" >> /etc/portage/package.keywords
 
   echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords
 
   echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords
  
2. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag).
+
2. Modify /etc/portage/package.use to suit your needs (please note that ''debug'' is enabled regardless of ''USE'' flag):
 
+
 
   net-p2p/amule debug gtk2 nls remote stats unicode gd
 
   net-p2p/amule debug gtk2 nls remote stats unicode gd
  
3. Emerge package.
+
3. Emerge package:
   $ emerge amule -pv
+
   emerge amule -pv
   $ emerge amule
+
   emerge amule
  
 
=== amule-2.0.3.ebuild ===
 
=== amule-2.0.3.ebuild ===
  
1. Add packages to package.keywords
+
1. Add packages to package.keywords:
 
   echo "net-p2p/amule ~x86" >> /etc/portage/package.keywords
 
   echo "net-p2p/amule ~x86" >> /etc/portage/package.keywords
 
   echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords
 
   echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords
  
2. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag).
+
2. Modify ''/etc/portage/package.use'' to suit your needs (please note that ''debug'' is enabled regardless of ''USE'' flag):
 
+
 
   net-p2p/amule amuled debug gtk2 nls remote stats unicode
 
   net-p2p/amule amuled debug gtk2 nls remote stats unicode
  
3. Emerge package.
+
3. Emerge package:
   $ emerge amule -pv
+
   emerge amule -pv
   $ emerge amule
+
   emerge amule
  
 
=== amule-cvs ===
 
=== amule-cvs ===
Line 85: Line 82:
 
The current ebuilds for [[aMule CVS]] can be found [http://forum.amule.org/thread.php?threadid=5732 here]. Download it and continue with this wiki article.
 
The current ebuilds for [[aMule CVS]] can be found [http://forum.amule.org/thread.php?threadid=5732 here]. Download it and continue with this wiki article.
  
1. Define PORTDIR_OVERLAY. Open up /etc/make.conf with your favourite text editor and define the PORTDIR_OVERLAY variable. The default is:
+
1. Define ''PORTDIR_OVERLAY''. Open up ''/etc/make.conf'' with your favourite text editor and define the ''PORTDIR_OVERLAY'' variable. The default is:
 
   PORTDIR_OVERLAY="/usr/local/portage"
 
   PORTDIR_OVERLAY="/usr/local/portage"
  
2. Create overlay for amule-cvs
+
2. Create overlay for amule-cvs:
   $ mkdir -p {PORTDIR_OVERLAY}/net-p2p/amule-cvs
+
   mkdir -p {PORTDIR_OVERLAY}/net-p2p/amule-cvs
   $ mkdir -p {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files
+
   mkdir -p {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files
  
3. Add to package.keywords  
+
3. Add to ''package.keywords'':
 
   echo "net-p2p/amule-cvs ~x86" >> /etc/portage/package.keywords
 
   echo "net-p2p/amule-cvs ~x86" >> /etc/portage/package.keywords
  
4. Copy [http://forum.amule.org/thread.php?postid=38002#post38002 amule-cvs-2.ebuild] to {PORTDIR_OVERLAY}/net-p2p/amule-cvs
+
4. Copy [http://forum.amule.org/thread.php?postid=38002#post38002 amule-cvs-2.ebuild] to ''{PORTDIR_OVERLAY}/net-p2p/amule-cvs''
  
5. Copy ''amuled'' and ''amuleweb'' init script from official ebuild files :
+
5. Copy ''amuled'' and ''amuleweb'' init script from official ebuild files:
   $ cp {PORTDIR}/net-p2p/amule/files/amuled.* {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files/
+
   cp {PORTDIR}/net-p2p/amule/files/amuled.* {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files/
   $ cp {PORTDIR}/net-p2p/amule/files/amuleweb.* {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files/
+
   cp {PORTDIR}/net-p2p/amule/files/amuleweb.* {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files/
  
PORTDIR is the official portage directory (usually /usr/portage/)
+
''PORTDIR'' is the official portage directory (usually ''/usr/portage/'')
  
6. Change directory
+
6. Change directory:
   $ cd {PORTDIR_OVERLAY}/net-p2p/amule-cvs/
+
   cd {PORTDIR_OVERLAY}/net-p2p/amule-cvs/
  
7. Touch file's timestamp
+
7. Touch file's timestamp:
   $ touch amule-cvs-2.ebuild
+
   touch amule-cvs-2.ebuild
  
8. Digest ebuild
+
8. Digest ebuild:
   $ ebuild amule-cvs-2.ebuild digest
+
   ebuild amule-cvs-2.ebuild digest
  
9. Review installation flags
+
9. Review installation flags:
   $ emerge amule-cvs -pv
+
   emerge amule-cvs -pv
  
10. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag)
+
10. Modify ''/etc/portage/package.use'' to suit your needs (please note that ''debug'' is enabled regardless of ''USE'' flag):
 
   net-p2p/amule-cvs X -amuled -debug gtk2 kad nls -nosystray -optimize -remote -remote-gui -stats unicode
 
   net-p2p/amule-cvs X -amuled -debug gtk2 kad nls -nosystray -optimize -remote -remote-gui -stats unicode
  
11. Install aMule CVS
+
11. Install [[aMule CVS]]:
   $ emerge amule-cvs
+
   emerge amule-cvs
  
'''PLEASE PLEASE PLEASE''' do "emerge amule-cvs -pv" before installing to determine how you want to compile aMule.
+
'''PLEASE PLEASE PLEASE''' do ''emerge amule-cvs -pv'' before installing to determine how you want to compile [[aMule]].
  
== Information on wxGTK ==
+
== Information on [[wxGTK]] ==
 
=== [[wxGTK]] 2.5.3 - 2.6.0 ===
 
=== [[wxGTK]] 2.5.3 - 2.6.0 ===
  
wxGTK versions 2.5.3 and greater are marked as '''unstable''' in Portage. In order to use wxGTK version 2.5.3 or greater, you must (keyword) unmask it.
+
[[wxGTK]] versions 2.5.3 and greater are marked as '''unstable''' in Portage. In order to use [[wxGTK]] version 2.5.3 or greater, you must (keyword) unmask it.
   $ mkdir /etc/portage
+
   mkdir /etc/portage
   $ echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords
+
   echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords
  
 
If you want to use amuled then you need, at least, ''wxGTK2.5.3''. Currently, the only version not hard masked in Portage is [[wxGTK]] 2.4.2 due to problems when compiling with [http://www.opengl.org OpenGL] support in [[wxGTK]] 2.5.3. But as [[aMule]] is no 3D egoshooter, we can safely disable [http://www.opengl.org OpenGL] support and use it anyway. To do so enter the following into a console as root:
 
If you want to use amuled then you need, at least, ''wxGTK2.5.3''. Currently, the only version not hard masked in Portage is [[wxGTK]] 2.4.2 due to problems when compiling with [http://www.opengl.org OpenGL] support in [[wxGTK]] 2.5.3. But as [[aMule]] is no 3D egoshooter, we can safely disable [http://www.opengl.org OpenGL] support and use it anyway. To do so enter the following into a console as root:
  
 
If you want to use ''GTK-1.2'':
 
If you want to use ''GTK-1.2'':
   $ echo "x11-libs/wxGTK -gtk2 -opengl" >> /etc/portage/package.use
+
   echo "x11-libs/wxGTK -gtk2 -opengl" >> /etc/portage/package.use
  
 
If you want to use ''GTK-2'' (recommended):
 
If you want to use ''GTK-2'' (recommended):
   $ echo "x11-libs/wxGTK -opengl" >> /etc/portage/package.use
+
   echo "x11-libs/wxGTK -opengl" >> /etc/portage/package.use
  
Finally, emerge wxGTK:
+
Finally, emerge [[wxGTK]]:
   $ emerge wxGTK -pv
+
   emerge wxGTK -pv
   $ emerge wxGTK
+
   emerge wxGTK
  
 
'''Note:''' There are two ebuilds available for ''amule-cvs''. A version with [http://bugs.gentoo.org/attachment.cgi?id=58059&action=view >=wxGTK 2.6.0] support and a version with [http://bugs.gentoo.org/attachment.cgi?id=55546&action=view <=wxGTK 2.5.3] support. Please use the correct version depending on what version of [[wxGTK]] you choose to use. Of course, [[wxGTK]] >= 2.6.0 is recommended.
 
'''Note:''' There are two ebuilds available for ''amule-cvs''. A version with [http://bugs.gentoo.org/attachment.cgi?id=58059&action=view >=wxGTK 2.6.0] support and a version with [http://bugs.gentoo.org/attachment.cgi?id=55546&action=view <=wxGTK 2.5.3] support. Please use the correct version depending on what version of [[wxGTK]] you choose to use. Of course, [[wxGTK]] >= 2.6.0 is recommended.
Line 147: Line 144:
  
 
If you don't want to use the [[aMuled|aMule daemon]], ''wxGTK-2.4.2'' will do you just fine. However, you must link it against ''GTK-1.2''. aMule does not support ''wxGTK-2.4.2'' linked against ''GTK-2''. If you want to use ''GTK-2'', you'll need wxGTK-2.5.1 at minimum:
 
If you don't want to use the [[aMuled|aMule daemon]], ''wxGTK-2.4.2'' will do you just fine. However, you must link it against ''GTK-1.2''. aMule does not support ''wxGTK-2.4.2'' linked against ''GTK-2''. If you want to use ''GTK-2'', you'll need wxGTK-2.5.1 at minimum:
   $ mkdir /etc/portage
+
   mkdir /etc/portage
   $ echo "x11-libs/wxGTK -gtk2" >> /etc/portage/package.use
+
   echo "x11-libs/wxGTK -gtk2" >> /etc/portage/package.use
  
Finally, emerge wxGTK:
+
Finally, emerge [[wxGTK]]:
   $ emerge wxGTK -pv
+
   emerge wxGTK -pv
   $ emerge wxGTK
+
   emerge wxGTK
  
Will will compile ''wxGTK2.4.2'' linked against ''GTK-1.2''. After this wxGTK has compiled, you can continue with [[HowTo_Compile_In_Gentoo#compiling_amule|compiling aMule]].
+
Will will compile ''wxGTK2.4.2'' linked against ''GTK-1.2''. After this [[wxGTK]] has compiled, you can continue with [[HowTo_Compile_In_Gentoo#compiling_amule|compiling aMule]].

Revision as of 15:55, 25 August 2005

English | Español

Introduction

Gentoo is known for choices. Unfortunately, some choices require more labor than others. As such, aMule comes in a variety of versions and installation methods based on what version of wxGTK you decide to use...

Methods of Installation

amule-1.2.8.ebuild

This ebuild is marked as stable for x86 platforms.

This aMule version is well over a year old and lacks many features. It depends on wxGTK compiled against GTK-1.2. aMule devs highly discourage use of this version but if you insist upon using it, simply emerge it. Be warned that support is probably limited.

Dependencies: >=x11-libs/wxGTK-2.4.2-r2; >=net-misc/curl-7.11.0; >=sys-libs/zlib-1.2.1
Status: No further development; in Portage

amule-2.0.0_rc7.ebuild

This ebuild is marked as unstable for all architectures.

This is an aging version. This is the last version that will compile with wxGTK compiled against GTK-1.2. It also compiles with wxGTK 2.4.2 or greater compiled against GTK-2.

Dependencies: >=x11-libs/wxGTK-2.4.2-r2; >=net-misc/curl-7.11.0; >=sys-libs/zlib-1.2.1; >=media-libs/gd-2.0.26
Status: No further development; in Portage

amule-2.0.3.ebuild

This ebuild is marked as unstable for all architectures.

This ebuild matches the most current, stable aMule release.

Dependencies: >=x11-libs/wxGTK-2.6.0; >=sys-libs/zlib-1.2.2; sys-devel/gettext; >=media-libs/libpng-1.2.8; >=media-libs/gd-2.0.32
Status: No further development; in Portage

amule-cvs

This ebuild is marked as unstable for all architectures.

Not intended for the general public. If you'd like to test out the daily development snapshot, then this is the version for you.

Dependencies: >=x11-libs/wxGTK-2.6.0; >=sys-libs/zlib-1.2.1; >=media-libs/gd-2.0.26; >=media-libs/libpng-1.2.0
Status: In development; not in Portage; requires portage overlay

Installation instructions

amule-1.2.8.ebuild

1. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag). Remember, since this version requires wxGTK compiled against GTK-1.2, you must compile without GTK-2:

 net-p2p/amule debug gtk2 nls remote

2. Emerge package:

 emerge amule -pv
 emerge amule

amule-2.0.0_rc7.ebuild

1. Add packages to package.keywords:

 echo "net-p2p/amule ~x86" >> /etc/portage/package.keywords
 echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords

2. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag):

 net-p2p/amule debug gtk2 nls remote stats unicode gd

3. Emerge package:

 emerge amule -pv
 emerge amule

amule-2.0.3.ebuild

1. Add packages to package.keywords:

 echo "net-p2p/amule ~x86" >> /etc/portage/package.keywords
 echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords

2. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag):

 net-p2p/amule amuled debug gtk2 nls remote stats unicode

3. Emerge package:

 emerge amule -pv
 emerge amule

amule-cvs

The current ebuilds for aMule CVS can be found here. Download it and continue with this wiki article.

1. Define PORTDIR_OVERLAY. Open up /etc/make.conf with your favourite text editor and define the PORTDIR_OVERLAY variable. The default is:

 PORTDIR_OVERLAY="/usr/local/portage"

2. Create overlay for amule-cvs:

 mkdir -p {PORTDIR_OVERLAY}/net-p2p/amule-cvs
 mkdir -p {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files

3. Add to package.keywords:

 echo "net-p2p/amule-cvs ~x86" >> /etc/portage/package.keywords

4. Copy amule-cvs-2.ebuild to {PORTDIR_OVERLAY}/net-p2p/amule-cvs

5. Copy amuled and amuleweb init script from official ebuild files:

 cp {PORTDIR}/net-p2p/amule/files/amuled.* {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files/
 cp {PORTDIR}/net-p2p/amule/files/amuleweb.* {PORTDIR_OVERLAY}/net-p2p/amule-cvs/files/

PORTDIR is the official portage directory (usually /usr/portage/)

6. Change directory:

 cd {PORTDIR_OVERLAY}/net-p2p/amule-cvs/

7. Touch file's timestamp:

 touch amule-cvs-2.ebuild

8. Digest ebuild:

 ebuild amule-cvs-2.ebuild digest

9. Review installation flags:

 emerge amule-cvs -pv

10. Modify /etc/portage/package.use to suit your needs (please note that debug is enabled regardless of USE flag):

 net-p2p/amule-cvs X -amuled -debug gtk2 kad nls -nosystray -optimize -remote -remote-gui -stats unicode

11. Install aMule CVS:

 emerge amule-cvs

PLEASE PLEASE PLEASE do emerge amule-cvs -pv before installing to determine how you want to compile aMule.

Information on wxGTK

wxGTK 2.5.3 - 2.6.0

wxGTK versions 2.5.3 and greater are marked as unstable in Portage. In order to use wxGTK version 2.5.3 or greater, you must (keyword) unmask it.

 mkdir /etc/portage
 echo "x11-libs/wxGTK ~x86" >> /etc/portage/package.keywords

If you want to use amuled then you need, at least, wxGTK2.5.3. Currently, the only version not hard masked in Portage is wxGTK 2.4.2 due to problems when compiling with OpenGL support in wxGTK 2.5.3. But as aMule is no 3D egoshooter, we can safely disable OpenGL support and use it anyway. To do so enter the following into a console as root:

If you want to use GTK-1.2:

 echo "x11-libs/wxGTK -gtk2 -opengl" >> /etc/portage/package.use

If you want to use GTK-2 (recommended):

 echo "x11-libs/wxGTK -opengl" >> /etc/portage/package.use

Finally, emerge wxGTK:

 emerge wxGTK -pv
 emerge wxGTK

Note: There are two ebuilds available for amule-cvs. A version with >=wxGTK 2.6.0 support and a version with <=wxGTK 2.5.3 support. Please use the correct version depending on what version of wxGTK you choose to use. Of course, wxGTK >= 2.6.0 is recommended.

wxGTK 2.4.2

If you don't want to use the aMule daemon, wxGTK-2.4.2 will do you just fine. However, you must link it against GTK-1.2. aMule does not support wxGTK-2.4.2 linked against GTK-2. If you want to use GTK-2, you'll need wxGTK-2.5.1 at minimum:

 mkdir /etc/portage
 echo "x11-libs/wxGTK -gtk2" >> /etc/portage/package.use

Finally, emerge wxGTK:

 emerge wxGTK -pv
 emerge wxGTK

Will will compile wxGTK2.4.2 linked against GTK-1.2. After this wxGTK has compiled, you can continue with compiling aMule.