Difference between revisions of "CompilingGentoo"

From Inkscape Wiki
Jump to navigation Jump to search
 
(Updated SVN ebuild)
(15 intermediate revisions by 5 users not shown)
Line 1: Line 1:
== Gentoo Linux ==
== Inkscape-0.44 on Gentoo Linux ==


If it doesn't build, try installing libtool. If that doesn't work then try
As it can take some time until the official ebuild has made it through rsync, here is it. Just save it into your overlay inkscape directory (see below) and name it 'inkscape-0.44.ebuild'.
installing the gentoo equivalents of the following Debian packages (from
debian/control, in alphabetical order):


  Build-Depends: automake1.7, debhelper (>= 4.0.0), gettext, intltool,
<pre>
    libart-2.0-dev (>= 2.3.10), libatk1.0-dev, libfreetype6-dev, libgc-dev,
# Copyright 1999-2006 Gentoo Foundation
    libglib2.0-dev, libgtk2.0-dev (>= 2.0.6-1), libgtkmm-2.4-dev,
# Distributed under the terms of the GNU General Public License v2
    libpango1.0-dev, libpng12-dev, libpopt-dev, libsigc++-2.0-dev, libtool,
# $Header: $
    libxft2-dev, libxml-parser-perl, libxml2-dev (>= 2-2.4.24), pkg-config,
    xlibs-dev, zlib1g-dev


To get the 2.4 version of gtkmm:
inherit gnome2 eutils


emerge sync
DESCRIPTION="A SVG based generic vector-drawing program"
ACCEPT_KEYWORDS="~x86" emerge gtkmm
HOMEPAGE="http://www.inkscape.org/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"


==== Gentoo CVS Ebuild ready ! ====
SLOT="0"
LICENSE="GPL-2 LGPL-2.1"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="gnome mmx bonobo inkjar lcms boost doc plugin spell"


Hi there,
RDEPEND=">=x11-libs/gtk+-2.4.1
>=dev-libs/glib-2.6.5
>=media-libs/libart_lgpl-2.3.16
>=dev-libs/libxml2-2.6.20
>=x11-libs/pango-1.4.0
>=dev-libs/libxslt-1.0.15
dev-perl/SVG
dev-perl/XML-Parser
dev-perl/XML-XQL
dev-python/pyxml
virtual/xft
dev-libs/popt
media-libs/fontconfig
sys-libs/zlib
media-libs/libpng
>=sys-devel/gcc-3
>=dev-libs/libsigc++-2.0.12
>=dev-cpp/gtkmm-2.4
dev-cpp/glibmm
>=dev-libs/boehm-gc-6.4
gnome? ( >=gnome-base/gnome-vfs-2.0 )
lcms? ( >=media-libs/lcms-1.13 )
boost? ( >=dev-libs/boost )
plugin? ( >=media-gfx/pstoedit-3.33
          >=media-gfx/skencil-0.6.16
  media-libs/libwmf
  app-office/dia )
spell? ( app-text/gtkspell )"


This afternoon I decided to make an ebuild for the CVS of inkscape for gentoo users !
DEPEND="${RDEPEND}
sys-devel/gettext
dev-util/pkgconfig
>=dev-util/intltool-0.29"


''To use it:''
G2CONF="${G2CONF} --with-xft"
G2CONF="${G2CONF} `use_with spell gtkspell`"
use mmx || G2CONF="${G2CONF} --disable-mmx"
use inkjar || G2CONF="${G2CONF} --without-inkjar"
use gnome && G2CONF="${G2CONF} --with-gnome-vfs"
use lcms || G2CONF="${G2CONF} --disable-lcms"


* <a href="http://www.inkscape.org/doc/inkscape-1.0.ebuild">Download it</a> (pretty obvious isn't it ? :)
src_unpack() {
* Copy the file into /usr/portage/media-gfx/inkscape/
unpack ${A}
* run the command 'emerge inkscape' in root
* Drink a coffee or two
* Enjoy !


You can improve it and send me back the modifications and I'll update the file.
cd ${S}


I need feedback !
autoconf || die
libtoolize --copy --force || die
}


Here is my jabber id: pol@amessage.de<br>
DOCS="AUTHORS COPYING ChangeLog HACKING NEWS README"
Here is my e-mail  : blenderman _at_ tiscali _dot_ be
</pre>


Cya
== Inkscape Subversion on Gentoo Linux ==


-Dell'Aiera Pol-
The Subversion ebuild of Inkscape makes getting the latest copy as easy as "emerge =inkscape-9999" : )


-- Annotation: You need an installed gtkmm-2.2 (2.4 does not work currently), Dominic
=== How to do it ===


Note that the Gentoo packagename for the Boehm garbage collector Inkscape requires is boehm-gc.
* If you have not already done so,set up a portage overlay. http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3&chap=5#doc_chap2
Unfortunately, this was set up without --enable-cplusplus. You can manually get it to work, though:
* [http://bugs.gentoo.org/attachment.cgi?id=207767 Download and save] the ebuild to media-gfx/inkscape/inkscape-9999.ebuild inside your portage overlay (you will need to create those directories if you haven't already done so). Or copy it from below:
See http://www.gentoo.org/doc/en/faq.xml#configure and follow the steps.  After installing it this
way, I also had to do `chmod a+rx /usr/include/gc` so Inkscape's ./configure will find the headers


Also, gentoo includes libsigc++ 2.0.1, but Inkscape requires 2.0.3, so that has to be manually
<pre>
installed.
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header:
 
EAPI=2
inherit subversion gnome2 eutils
 
SRC_URI=""
ESVN_REPO_URI="https://inkscape.svn.sourceforge.net/svnroot/inkscape/inkscape/trunk"
ESVN_PROJECT="inkscape"
 
DESCRIPTION="A SVG based generic vector-drawing program"
HOMEPAGE="http://www.inkscape.org/"
 
SLOT="0"
LICENSE="GPL-2 LGPL-2.1"
KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
IUSE="dia gnome inkjar lcms mmx nls postscript spell wmf wpg"
RESTRICT="test"
 
COMMON_DEPEND="
>=virtual/poppler-glib-0.8.3[cairo]
dev-cpp/glibmm
>=dev-cpp/gtkmm-2.10.0
>=dev-libs/boehm-gc-6.4
>=dev-libs/glib-2.6.5
>=dev-libs/libsigc++-2.0.12
>=dev-libs/libxml2-2.6.20
>=dev-libs/libxslt-1.0.15
dev-libs/popt
dev-python/lxml
dev-python/pyxml
media-gfx/imagemagick
media-libs/fontconfig
>=media-libs/freetype-2
>=media-libs/libpng-1.2
sci-libs/gsl
x11-libs/libXft
>=x11-libs/gtk+-2.10.7
>=x11-libs/pango-1.4.0
gnome? ( >=gnome-base/gnome-vfs-2.0 )
lcms? ( >=media-libs/lcms-1.14 )
spell? (
app-text/aspell
app-text/gtkspell
)
wpg? ( >=media-libs/libwpg-0.1 )"
 
# These only use executables provided by these packages
# See share/extensions for more details. inkscape can tell you to
# install these so we could of course just not depend on those and rely
# on that.
RDEPEND="
${COMMON_DEPEND}
dev-python/numpy
dia? ( app-office/dia )
postscript? ( >=media-gfx/pstoedit-3.44[plotutils] media-gfx/skencil )
wmf? ( media-libs/libwmf )"
 
DEPEND="${COMMON_DEPEND}
dev-libs/boost
sys-devel/gettext
dev-util/pkgconfig
x11-libs/libX11
>=dev-util/intltool-0.29"
 
S=${WORKDIR}/${PN}
 
pkg_setup() {
G2CONF="${G2CONF} --without-perl"
G2CONF="${G2CONF} --enable-poppler-cairo"
G2CONF="${G2CONF} --with-xft"
G2CONF="${G2CONF} $(use_with gnome gnome-vfs)"
G2CONF="${G2CONF} $(use_with inkjar)"
G2CONF="${G2CONF} $(use_enable lcms)"
G2CONF="${G2CONF} $(use_enable mmx)"
G2CONF="${G2CONF} $(use_enable nls)"
DOCS="AUTHORS ChangeLog NEWS README*"
}
 
src_unpack() {
subversion_src_unpack
 
# This should go to src_compile, but... (;
sh autogen.sh || die "autogen"
./configure
}
 
pkg_postinst() {
elog "local configurations (also includes extensions) are moved from"
elog "\${HOME}/.inkscape to \${HOME}/.config/inkscape within"
elog ">=media-gfx/inkscape-0.47"
}
</pre>
 
* Open a console and as root run 'ebuild <portage overlay>/media-gfx/inkscape/inkscape-9999.ebuild digest' (substitute <portage overlay> with your portage overlay directory
* Now run 'echo "media-gfx/inkscape" >> /etc/portage/package.keywords'.
* Now you can simply run 'emerge inkscape' to get the latest Subversion version of Inkscape!
 
[[Category:Developer Documentation]]

Revision as of 09:15, 21 October 2009

Inkscape-0.44 on Gentoo Linux

As it can take some time until the official ebuild has made it through rsync, here is it. Just save it into your overlay inkscape directory (see below) and name it 'inkscape-0.44.ebuild'.

# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit gnome2 eutils

DESCRIPTION="A SVG based generic vector-drawing program"
HOMEPAGE="http://www.inkscape.org/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"

SLOT="0"
LICENSE="GPL-2 LGPL-2.1"
KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="gnome mmx bonobo inkjar lcms boost doc plugin spell"

RDEPEND=">=x11-libs/gtk+-2.4.1
	>=dev-libs/glib-2.6.5
	>=media-libs/libart_lgpl-2.3.16
	>=dev-libs/libxml2-2.6.20
 	>=x11-libs/pango-1.4.0
	>=dev-libs/libxslt-1.0.15
	dev-perl/SVG
	dev-perl/XML-Parser
	dev-perl/XML-XQL 
	dev-python/pyxml
	virtual/xft
	dev-libs/popt
	media-libs/fontconfig
	sys-libs/zlib
	media-libs/libpng
	>=sys-devel/gcc-3
	>=dev-libs/libsigc++-2.0.12
	>=dev-cpp/gtkmm-2.4
	dev-cpp/glibmm
	>=dev-libs/boehm-gc-6.4
	gnome? ( >=gnome-base/gnome-vfs-2.0 )
	lcms? ( >=media-libs/lcms-1.13 )
 	boost? ( >=dev-libs/boost )
	plugin? ( >=media-gfx/pstoedit-3.33
	          >=media-gfx/skencil-0.6.16
		  media-libs/libwmf
		  app-office/dia )
	spell? ( app-text/gtkspell )"

DEPEND="${RDEPEND}
 	sys-devel/gettext
	dev-util/pkgconfig
	>=dev-util/intltool-0.29"

G2CONF="${G2CONF} --with-xft"
G2CONF="${G2CONF} `use_with spell gtkspell`"
use mmx || G2CONF="${G2CONF} --disable-mmx"
use inkjar || G2CONF="${G2CONF} --without-inkjar"
use gnome && G2CONF="${G2CONF} --with-gnome-vfs"
use lcms || G2CONF="${G2CONF} --disable-lcms"

src_unpack() {
	unpack ${A}

	cd ${S}

	autoconf || die
	libtoolize --copy --force || die
}

DOCS="AUTHORS COPYING ChangeLog HACKING NEWS README"

Inkscape Subversion on Gentoo Linux

The Subversion ebuild of Inkscape makes getting the latest copy as easy as "emerge =inkscape-9999" : )

How to do it

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header:

EAPI=2
inherit subversion gnome2 eutils

SRC_URI=""
ESVN_REPO_URI="https://inkscape.svn.sourceforge.net/svnroot/inkscape/inkscape/trunk"
ESVN_PROJECT="inkscape"

DESCRIPTION="A SVG based generic vector-drawing program"
HOMEPAGE="http://www.inkscape.org/"

SLOT="0"
LICENSE="GPL-2 LGPL-2.1"
KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
IUSE="dia gnome inkjar lcms mmx nls postscript spell wmf wpg"
RESTRICT="test"

COMMON_DEPEND="
	>=virtual/poppler-glib-0.8.3[cairo]
	dev-cpp/glibmm
	>=dev-cpp/gtkmm-2.10.0
	>=dev-libs/boehm-gc-6.4
	>=dev-libs/glib-2.6.5
	>=dev-libs/libsigc++-2.0.12
	>=dev-libs/libxml2-2.6.20
	>=dev-libs/libxslt-1.0.15
	dev-libs/popt
	dev-python/lxml
	dev-python/pyxml
	media-gfx/imagemagick
	media-libs/fontconfig
	>=media-libs/freetype-2
	>=media-libs/libpng-1.2
	sci-libs/gsl
	x11-libs/libXft
	>=x11-libs/gtk+-2.10.7
	>=x11-libs/pango-1.4.0
	gnome? ( >=gnome-base/gnome-vfs-2.0 )
	lcms? ( >=media-libs/lcms-1.14 )
	spell? (
		app-text/aspell
		app-text/gtkspell
	)
	wpg? ( >=media-libs/libwpg-0.1 )"

# These only use executables provided by these packages
# See share/extensions for more details. inkscape can tell you to
# install these so we could of course just not depend on those and rely
# on that.
RDEPEND="
	${COMMON_DEPEND}
	dev-python/numpy
	dia? ( app-office/dia )
	postscript? ( >=media-gfx/pstoedit-3.44[plotutils] media-gfx/skencil )
	wmf? ( media-libs/libwmf )"

DEPEND="${COMMON_DEPEND}
	dev-libs/boost
	sys-devel/gettext
	dev-util/pkgconfig
	x11-libs/libX11
	>=dev-util/intltool-0.29"

S=${WORKDIR}/${PN}

pkg_setup() {
	G2CONF="${G2CONF} --without-perl"
	G2CONF="${G2CONF} --enable-poppler-cairo"
	G2CONF="${G2CONF} --with-xft"
	G2CONF="${G2CONF} $(use_with gnome gnome-vfs)"
	G2CONF="${G2CONF} $(use_with inkjar)"
	G2CONF="${G2CONF} $(use_enable lcms)"
	G2CONF="${G2CONF} $(use_enable mmx)"
	G2CONF="${G2CONF} $(use_enable nls)"
	DOCS="AUTHORS ChangeLog NEWS README*"
}

src_unpack() {
	subversion_src_unpack

	# This should go to src_compile, but... (;
	sh autogen.sh || die "autogen"
	./configure
}

pkg_postinst() {
	elog "local configurations (also includes extensions) are moved from"
	elog "\${HOME}/.inkscape to \${HOME}/.config/inkscape within"
	elog ">=media-gfx/inkscape-0.47"
}
  • Open a console and as root run 'ebuild <portage overlay>/media-gfx/inkscape/inkscape-9999.ebuild digest' (substitute <portage overlay> with your portage overlay directory
  • Now run 'echo "media-gfx/inkscape" >> /etc/portage/package.keywords'.
  • Now you can simply run 'emerge inkscape' to get the latest Subversion version of Inkscape!