View previous topic :: View next topic |
Author |
Message |
bridge_builder n00b
Joined: 08 Feb 2005 Posts: 7
|
Posted: Mon Mar 21, 2005 3:55 am Post subject: Any emul-linux to install libSDL_ttf? (AMD64 drod-bin) |
|
|
G'day all,
I've been wanting to install drod-bin in the amd64 bit environment and so have been playing around with the drod-bin ebuild in my own portage overlay.
I've overcome emerge problems by adding emul-linux dependencies and forcing a compile of the unwrinklepath tool so that the install bits can link to amd64 libsandbox. My custom ebuild is below.
So now drod-bin will install in amd64. However, it is missing one library:
Code: |
$ drod &
[1] 32285
$ /opt/drod/bin/drod.bin: error while loading shared libraries: libSDL_ttf-2.0.so.0: cannot open shared object file: No such file or directory |
I can probably hack this around and copy the library from my x86 chroot environment but I want this to be elegant. Does anyone know if an emul-linux-* package that will install the lib32 version of this library. emul-linux-x86-sdl doesn't:
Code: | $ etcat -f emul-linux-x86-sdl
[ Results for search key : emul-linux-x86-sdl ]
[ Candidate applications found : 1 ]
Only printing found installed programs.
* app-emulation/emul-linux-x86-sdl-1.0
/emul/linux/x86/usr
/emul/linux/x86
/emul/linux/x86/usr/lib/libSDL-1.2.so.0
/emul/linux/x86/usr/bin/sdl-config
/emul/linux
/emul/linux/x86/usr/lib/libSDL-1.2.so.0.7.0
/emul/linux/x86/usr/lib/libSDL.la
/emul/linux/x86/usr/lib
/emul
/emul/linux/x86/usr/bin
/emul/linux/x86/usr/lib/libSDL.so
|
I was thinking of submitting a bug about emul-linux-x86-sdl to suggest adding the libSDL_ttf library. Any thoughts on that?
Here's my custom ebuild for reference:
Code: | # Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/games-puzzle/drod-bin/drod-bin-1.6.5.ebuild,v 1.6 2004/09/23 09:54:51 mr_bones_ Exp $
inherit games eutils
DESCRIPTION="Deadly Rooms Of Death: face room upon room of deadly things, armed with only your sword and your wits"
HOMEPAGE="http://www.drod.net/"
SRC_URI="mirror://sourceforge/drod/CDROD-${PV}-setup.sh.bin"
LICENSE="MPL-1.1"
SLOT="0"
KEYWORDS="-* x86 ~amd64"
IUSE=""
RDEPEND="virtual/x11
dev-libs/expat
media-libs/fmod
media-libs/libsdl
>=media-libs/sdl-ttf-2.0.6
amd64? ( >=app-emulation/emul-linux-x86-xlibs-1.0
>=app-emulation/emul-linux-x86-sdl-1.0
)"
S="${WORKDIR}"
src_unpack() {
unpack_makeself ${A}
cd "${S}"
epatch "${FILESDIR}/install.patch"
}
src_compile() {
cd Install
rm unwrinklepath
gcc unwrinklepath.c -o unwrinklepath
cd "${S}"
}
src_install() {
./install.sh -R "${D}" -g -rl -pg -I || die "install.sh failed"
dodir "${GAMES_BINDIR}"
dosym /opt/drod/bin/drod "${GAMES_BINDIR}/drod"
prepgamesdirs
fperms 770 /opt/drod/bin/Data
}
pkg_preinst() {
if [ -d ${ROOT}/opt/drod/bin/Data ] ; then
mv ${ROOT}/opt/drod/bin/Data{,.backup} || die "failed to backup data"
fi
}
pkg_postinst() {
games_pkg_postinst
if [ -d ${ROOT}/opt/drod/bin/Data.backup ] ; then
ewarn "Your saved games have been backed up to"
ewarn "/opt/drod/bin/Data.backup"
fi
}
|
|
|
Back to top |
|
|
crazycat l33t
Joined: 26 Aug 2003 Posts: 838 Location: Hamburg, Germany
|
Posted: Mon Mar 21, 2005 11:51 am Post subject: |
|
|
I think it is "the most elegant" solution, cause (for me) god knows how many 32 programs i have , and how many i compiled in 32 bit. If i pack all my 32 devel libraries in emul-package, its name would be fedora core 3. |
|
Back to top |
|
|
bridge_builder n00b
Joined: 08 Feb 2005 Posts: 7
|
Posted: Mon Mar 21, 2005 12:23 pm Post subject: |
|
|
The sweetest software is aesthetic as well as functional.
Actually this points to a big picture issue: The beauty of x86_64 is the "native" emulation of x86. Portage needs to recognise this somehow: II think the emul-linux-x86-* packages are an ugly solution - you only get what someone has packaged up. I reckon moving towards something like a "emul32" use flag on packages - especially lib packages - that would install lib32 support would be better.
For the sake of the little guy - my end-game here is to produce a workable amd64 drod-bin ebuild that doesn't depend on having the x86 env hanging around. Just because we don't like FC3 doesn't mean that we aren't in love with portage.
Anyone got tips on producing custom emul-linux-x86-* packages (I haven't pulled apart the current emul ebuilds (next on the todo list) but I'm assuming that they're a bit more subtle than just throwing a 32-bit binary into lib32)? |
|
Back to top |
|
|
bridge_builder n00b
Joined: 08 Feb 2005 Posts: 7
|
Posted: Tue Mar 22, 2005 12:43 am Post subject: |
|
|
Having scouted around a bit more, it looks like these emul-linux things will start being solved in the next profile or two. |
|
Back to top |
|
|
|