As a howto has been done for other distros, it makes sense to provide one for Gentoo.
Pulling in all required deps proved rather troublesome. (Requiring a couple of portage overlays.)
Nonetheless, here are the steps required.
Steps following require root until specified otherwise.
1. emerge -av layman
2. layman -S
3. layman -a hawking
4. USE="-doc -oniguruma pcre" emerge -av lrexlib
5. layman -a rafaelmartins
6. USE="-doc sqlite sqlite3 mysql -postgres" ACCEPT_KEYWORDS="~x86" emerge -av luasql
7. emerge -av gitk
Drop root privs.
8. mkdir ~/src && cd ~/src && git clone git://mudlet.git.sourceforge.net/gitroot/mudlet/mudlet
9. cd into the src folder
10. qmake
11. make
Tada!
Any problems, feel free to let me know.
Howto: Compile Mudlet on Gentoo.
Re: Howto: Compile Mudlet on Gentoo.
MUDLET: A step by step tutorial for compiling on gentoo
GIT:
sudo emerge -a git
cd ~ && git clone (assuming that ~/mudlet is there u want it)
git://mudlet.git.sourceforge.net/gitroot/mudlet/mudlet
LAYMAN
emerge -av layman
#this sets up layman to find your add-on to the portage tree
sudo echo "source /var/lib/layman/make.conf" >> /etc/make.conf
sudo echo 'PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /var/lib/layman"' >> /etc/make.conf
#syncs
layman -S
#adds hawking to new portage
layman -a hawking
#verify that hawking is in the list
portageq envvar PORTDIR_OVERLAY
#if it exist do:
echo "=dev-lua/lrexlib-2.4.0 **" >> /etc/portage/package.accept_keywords
USE="-doc -oniguruma pcre" emerge -av lrexlib
#else
################################################################################
# This is a complete mess; Sorry! i'm not 100% sure what the correct path was;
# but it all lead down too this.
#this is provided by Rafaelmasrtins? <- i had to compile this later
#USE="-doc -oniguruma pcre" emerge -av lrexlib
layman -a rafaelmartins
USE="-doc sqlite sqlite3 mysql -postgres" ACCEPT_KEYWORDS="~x86" emerge -av luasql
echo "=dev-lua/lrexlib-2.4.0 **" >> /etc/portage/package.accept_keywords
emerge mercurial
ashii@gatsu ~/mudlet $ sudo revdep-rebuild && sudo layman -S)
13:21 < phasma> sudo layman -d rafaelmartins
13:21 < phasma> sudo layman -S
13:21 < phasma> close current terminal session
13:21 < phasma> sudo revdep-rebuild
13:22 < phasma> oh, actually
13:22 < phasma> sudo layman -a rafaelmartins
13:22 < phasma> sudo layman -S
13:22 < phasma> after the layman -d
13:22 < phasma> do an emerge -uDavN world
# too make sure (perhaps remove eix, if already compiled it?)
sudo emerge eix && eix-sync && eix -I --in-overlay rafaelmartins
19:16 <+iamben> ashii: does "portageq envvar PORTDIR_OVERLAY" list /var/lib/layman/hawking as one of them?
19:16 <+iamben> ashii: then you've not set up layman properly. read the postmerge messages on layman please.
This was the problem; PORTDIR_OVERLAY wasn't setup its explained in source:
# end of mess, hopefully
################################################################################
#QMAKE - If you don't have the file 'qmake' (comes with qt-core)
#two ways you can do from here if you don't have qmake (it's in the qt-core)
# 1. "grab nokia sdk" and use the qmake from there (1gb, no compile)
http://www.developer.nokia.com/Develop/Qt/Tools/
on the right side, you got a menu
-> linux 32bit (for me)
#after finish
chmod +x Qt_SDK_Lin32_offline_v1_1_4_en.run
#install it (quite fast)
locate qmake | grep bin
# should be something like:
# /home/ashii/QtSDK/Desktop/Qt/474/gcc/bin/qmake
# 2. "grab qt-core" and wait for the eternal compile. (200 mb, eternal compile)
emerge -av qt-core
#note: alternative1 is much faster if you got good internet.
#COMPILATION (requires "emerge boost yajl zziplib =media-libs/libpng-1.2.46 luafilesystem"
#luazip module
cd ~/
git clone git://github.com/luaforge/luazip.git
git clone git://github.com/luaforge/compat.git
cd compat
mv compat ../compat2
cd ..
rm -fR compat
mv compat2 compat
cd ~/luazip
make && make install
#rex_pcre
#lfs
cd ~/mudlet/src
/home/ashii/QtSDK/Desktop/Qt/474/gcc/bin/qmake
ldconfig
#compile finished
#that's it for the compile, but some more errors accured in client
after compile: I had these three errors in the client: (which you shouldnt be getting, i just leave it as documentation)
1. rex_pcre = USE="-doc -oniguruma pcre" emerge -av lrexlib
2. lfs = emerge luafilesystem
3. zipLua = http://www.keplerproject.org/luazip/
source:
http://forums.mudlet.org/viewtopic.php? ... ntoo#p6912
http://wiki.gentoo.org/wiki/Layman (very good)
http://www.keplerproject.org/luazip/ (required download)
http://www.keplerproject.org/compat/ (required download)
+ support from Phasma, Chosig, Vadi2, #gentoo and @ freenode
#general hints when problem arrived
http://forums.mudlet.org/viewtopic.php?t=2609 ( about liblua5.1-zip0 and liblua5.1-filesystem0 )
GIT:
sudo emerge -a git
cd ~ && git clone (assuming that ~/mudlet is there u want it)
git://mudlet.git.sourceforge.net/gitroot/mudlet/mudlet
LAYMAN
emerge -av layman
#this sets up layman to find your add-on to the portage tree
sudo echo "source /var/lib/layman/make.conf" >> /etc/make.conf
sudo echo 'PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /var/lib/layman"' >> /etc/make.conf
#syncs
layman -S
#adds hawking to new portage
layman -a hawking
#verify that hawking is in the list
portageq envvar PORTDIR_OVERLAY
#if it exist do:
echo "=dev-lua/lrexlib-2.4.0 **" >> /etc/portage/package.accept_keywords
USE="-doc -oniguruma pcre" emerge -av lrexlib
#else
################################################################################
# This is a complete mess; Sorry! i'm not 100% sure what the correct path was;
# but it all lead down too this.
#this is provided by Rafaelmasrtins? <- i had to compile this later
#USE="-doc -oniguruma pcre" emerge -av lrexlib
layman -a rafaelmartins
USE="-doc sqlite sqlite3 mysql -postgres" ACCEPT_KEYWORDS="~x86" emerge -av luasql
echo "=dev-lua/lrexlib-2.4.0 **" >> /etc/portage/package.accept_keywords
emerge mercurial
ashii@gatsu ~/mudlet $ sudo revdep-rebuild && sudo layman -S)
13:21 < phasma> sudo layman -d rafaelmartins
13:21 < phasma> sudo layman -S
13:21 < phasma> close current terminal session
13:21 < phasma> sudo revdep-rebuild
13:22 < phasma> oh, actually
13:22 < phasma> sudo layman -a rafaelmartins
13:22 < phasma> sudo layman -S
13:22 < phasma> after the layman -d
13:22 < phasma> do an emerge -uDavN world
# too make sure (perhaps remove eix, if already compiled it?)
sudo emerge eix && eix-sync && eix -I --in-overlay rafaelmartins
19:16 <+iamben> ashii: does "portageq envvar PORTDIR_OVERLAY" list /var/lib/layman/hawking as one of them?
19:16 <+iamben> ashii: then you've not set up layman properly. read the postmerge messages on layman please.
This was the problem; PORTDIR_OVERLAY wasn't setup its explained in source:
# end of mess, hopefully
################################################################################
#QMAKE - If you don't have the file 'qmake' (comes with qt-core)
#two ways you can do from here if you don't have qmake (it's in the qt-core)
# 1. "grab nokia sdk" and use the qmake from there (1gb, no compile)
http://www.developer.nokia.com/Develop/Qt/Tools/
on the right side, you got a menu
-> linux 32bit (for me)
#after finish
chmod +x Qt_SDK_Lin32_offline_v1_1_4_en.run
#install it (quite fast)
locate qmake | grep bin
# should be something like:
# /home/ashii/QtSDK/Desktop/Qt/474/gcc/bin/qmake
# 2. "grab qt-core" and wait for the eternal compile. (200 mb, eternal compile)
emerge -av qt-core
#note: alternative1 is much faster if you got good internet.
#COMPILATION (requires "emerge boost yajl zziplib =media-libs/libpng-1.2.46 luafilesystem"
#luazip module
cd ~/
git clone git://github.com/luaforge/luazip.git
git clone git://github.com/luaforge/compat.git
cd compat
mv compat ../compat2
cd ..
rm -fR compat
mv compat2 compat
cd ~/luazip
make && make install
#rex_pcre
#lfs
cd ~/mudlet/src
/home/ashii/QtSDK/Desktop/Qt/474/gcc/bin/qmake
ldconfig
#compile finished
#that's it for the compile, but some more errors accured in client
after compile: I had these three errors in the client: (which you shouldnt be getting, i just leave it as documentation)
1. rex_pcre = USE="-doc -oniguruma pcre" emerge -av lrexlib
2. lfs = emerge luafilesystem
3. zipLua = http://www.keplerproject.org/luazip/
source:
http://forums.mudlet.org/viewtopic.php? ... ntoo#p6912
http://wiki.gentoo.org/wiki/Layman (very good)
http://www.keplerproject.org/luazip/ (required download)
http://www.keplerproject.org/compat/ (required download)
+ support from Phasma, Chosig, Vadi2, #gentoo and @ freenode
#general hints when problem arrived
http://forums.mudlet.org/viewtopic.php?t=2609 ( about liblua5.1-zip0 and liblua5.1-filesystem0 )
Re: Howto: Compile Mudlet on Gentoo.
Leio is a gentoo dev and wanted to make a gentoo package for Mudlet back in the past. We should get in touch with him and see what he can do because compiling Mudlet on Linux is getting more and more complicated because of the myriad of dependencies.
Re: Howto: Compile Mudlet on Gentoo.
I would like to chip in how I can, i'm not very good with linux yet, but this was a good learning experience and I feel I got a good hang on how to compile mudlet now, cause I did this compile, without much packages at all.
Re: Howto: Compile Mudlet on Gentoo.
I get an error when starting Mudlet out of its directory.
If you get an error that your missing LuaGlobal
If you start it from the directory 'src' it works..
If you get an error that your missing LuaGlobal
If you start it from the directory 'src' it works..
Re: Howto: Compile Mudlet on Gentoo.
Hi,
check out https://github.com/toaster/gentoo-mudlet-overlay
That worked for me (x86). In case of any problems, contact me via github.
Regards
>toaster
check out https://github.com/toaster/gentoo-mudlet-overlay
That worked for me (x86). In case of any problems, contact me via github.
Regards
>toaster
Re: Howto: Compile Mudlet on Gentoo.
Thanks for making that!
Re: Howto: Compile Mudlet on Gentoo.
It was a pleasure . There is still a FIXME left because I do not know which Qt4 modules Mudlet depends on. Since my system has Qt4 installed due to other apps it works, but maybe someone could give me a hint which Qt4 parts are used by Mudlet.
Tanks
>toaster
Tanks
>toaster
Re: Howto: Compile Mudlet on Gentoo.
$ ldd /usr/games/mudlet | grep Qt
libQtOpenGL.so.4 => /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4 (0x00007f14fbadd000)
libQtGui.so.4 => /usr/lib/x86_64-linux-gnu/libQtGui.so.4 (0x00007f14fae0e000)
libQtNetwork.so.4 => /usr/lib/x86_64-linux-gnu/libQtNetwork.so.4 (0x00007f14faac2000)
libQtCore.so.4 => /usr/lib/x86_64-linux-gnu/libQtCore.so.4 (0x00007f14fa5f0000)
libQtDBus.so.4 => /usr/lib/x86_64-linux-gnu/libQtDBus.so.4 (0x00007f14f8c0e000)
libQtXml.so.4 => /usr/lib/x86_64-linux-gnu/libQtXml.so.4 (0x00007f14f3e45000)
^ That seems to be the list.
libQtOpenGL.so.4 => /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4 (0x00007f14fbadd000)
libQtGui.so.4 => /usr/lib/x86_64-linux-gnu/libQtGui.so.4 (0x00007f14fae0e000)
libQtNetwork.so.4 => /usr/lib/x86_64-linux-gnu/libQtNetwork.so.4 (0x00007f14faac2000)
libQtCore.so.4 => /usr/lib/x86_64-linux-gnu/libQtCore.so.4 (0x00007f14fa5f0000)
libQtDBus.so.4 => /usr/lib/x86_64-linux-gnu/libQtDBus.so.4 (0x00007f14f8c0e000)
libQtXml.so.4 => /usr/lib/x86_64-linux-gnu/libQtXml.so.4 (0x00007f14f3e45000)
^ That seems to be the list.
Re: Howto: Compile Mudlet on Gentoo.
Thank you. I have updated the ebuild accordingly.