Dorion Mode - A blog by Robinson Dorion.

December 24, 2020

Eulora v0.1.2 client on JWRD Gentoo

Filed under: Eulora, JWRD — Robinson Dorion @ 23:45

Working down the path of playing the masterclass in economy, I managed to build the Eulora v1 client on Gentoo. Once I got the initial environment set up, I followed the Diana Coman's installation notes which provide the lists of dependencies, but in debianspeak. My first task was then to figure what those mean in terms of Gentoo, the results of which are presented in the table below. As you can see, the footnotes provide insight to the USE flags I used as well as any dependencies that were pulled in during the process.

Debian/Ubuntu 10 Gentoo
autoconf sys-devel/autoconf(i)
bison sys-devel/bison(ii)
build-essential N/A(iii)
curl net-misc/curl(iv)
doxygen app-doc/doxygen(v)
flex sys-devel/flex(vi)
ftjam dev-util/ftjam(vii)
g++ Rolled in GCC build(viii)
lib3ds-dev media-libs/lib3ds(ix)
libasound-dev media-libs/alsa-lib(x)
libcairo-dev x11-libs/cairo(xi)
libcairomm-1.0-dev dev-cpp/cairomm(xii)
libcal3d-dev media-libs/cal3d(xiii)
libcppunit-dev dev-util/cppunit(xiv)
libfreetype6-dev media-libs/freetype(xv)
libgl1-mesa-dev x11-libs/libGLw (xvi)
libgtk2.0-dev x11-libs/gtk+-2(xvii)
liblcms-dev media-libs/lcms(xviii)
libmng-dev media-libs/libmng(xix)
libode-dev dev-games/ode(xx)
libogg-dev media-libs/libogg(xxi)
libopenal-dev media-libs/openal(xxii)
libpng12-dev media-libs/libpng(xxiii)
libspeex-dev media-libs/speex(xxiv)
libtool sys-devel/libtool(xxv)
libvorbis-dev media-libs/libvorbis(xxvi)
libwxbase2.8-dev x11-libs/wxGTK(xxvii)
libwxgtk2.8-dev Included in x11-libs/wxGTK
libx11-dev x11-libs/libX1(xxviii)
libxaw7-dev x11-libs/libXaw(xxix)
libxext-dev x11-libs/libXext(xxx)
libxrender-dev x11-libs/libXrender(xxxi)
libxxf86vm-dev x11-libs/libXxf86vm(xxxii)
mesa-common-dev media-libs/mesa(xxxiii)
nvidia-cg-toolkit media-gfx/nvidia-cg-toolkit(xxxiv)
pkg-config dev-util/pkgconfig(xxxv)
python-dev N/A, Ref
subversion dev-vcs/subversion(xxxvi)
swig dev-lang/swig(xxxvii)
zlib1g-dev sys-libs/zlib(xxxviii)

From there, I followed I followed her guide from step 3 nearly verbatim.

gpg --verify cal3d.tar.gz.diana_coman.sig cal3d.tar.gz
gpg --verify cal3d.tar.gz.diana_coman.sig cal3d.tar.gz
gpg --verify eulora-v0.1.2b.tar.gz.diana_coman.sig eulora-v0.1.2b.tar.gz
tar -zxvf cal3d.tar.gz
tar -zxvf cs_July24.tar.gz
tar -zxvf eulora-v0.1.2b.tar.gz
cd cal3d ; autoreconf --install --force
./configure --prefix=$HOME/dev/cal3d
make install
export LD_LIBRARY_PATH=$HOME/dev/cal3d/src/cal3d/.libs/:$LD_LIBRARY_PATH
cd ../cs-forupload/
./configure --without-java --without-perl --without-python --without-3ds --with-cal3d=$HOME/dev/cal3d(xxxix)

(as root)
ln -s /usr/bin/jam /usr/bin/ftjam
(as non-root)
time ftjam -aq libs plugins cs-config walktest(xl)
cd EuloraV0.1.2/
export CRYSTAL=$HOME/dev/cs-forupload
./configure --with-cal3d=$HOME/dev/cal3d
ftjam -aq client
export LD_LIBRARY_PATH="$HOME/dev/cal3d/src/cal3d/.libs/:$HOME/dev/cs-forupload/:"$LD_LIBRARY_PATH
chmod +x
cd data/
vim servers.xml(xlii)
cd ..

Et voila.


  1. [ebuild R ] sys-devel/autoconf-2.69:2.5::gentoo USE="-emacs" 1187 KiB [^]
  2. [ebuild R ] sys-devel/bison-3.0.4-r1::gentoo USE="examples* -nls* -static {-test}" 0 KiB [^]
  3. Debianism afaiu [^]
  4. [ebuild R ] net-misc/curl-7.54.1::gentoo USE="ssl -adns -http2 -idn -ipv6 -kerberos -ldap -metalink -rtmp -samba -ssh -static-libs {-test} -threads" ABI_X86="(64) -32 (-x32)" CURL_SSL="openssl -axtls -gnutls (-libressl) -mbedtls -nss (-winssl) [^]
  5. [ebuild N ] media-libs/jbig2dec-0.13-r4::gentoo USE="-png -static-libs {-test}" 0 KiB
    [ebuild N ] app-text/poppler-data-0.4.7::gentoo 0 KiB
    [ebuild N ] app-arch/cpio-2.12-r1::gentoo USE="-nls" 0 KiB
    [ebuild N ] media-libs/lcms-2.8-r1:2::gentoo USE="threads zlib -doc -jpeg -static-libs {-test} -tiff" ABI_X86="(64) -32 (-x32)" 0 KiB
    [ebuild N ] app-text/libpaper-1.1.24-r2::gentoo ABI_X86="(64) -32 (-x32)" 0 KiB
    [ebuild N ] app-arch/rpm2targz- 0 KiB
    [ebuild N ] media-libs/openjpeg-2.1.1_p20160922:2/7::gentoo USE="-doc -static-libs {-test}" ABI_X86="(64) -32 (-x32)" 0 KiB
    [ebuild N ] media-fonts/urw-fonts-2.4.9::gentoo USE="X" 0 KiB
    [ebuild N ] app-text/ghostscript-gpl-9.21::gentoo USE="X -cups -dbus -gtk -static-libs -tiff -unicode" L10N="-de -ja -ko -zh-CN -zh-TW" 28488 KiB
    [ebuild N ] app-doc/doxygen-1.8.13-r1::gentoo USE="debug -clang -doc -dot -doxysearch -latex -qt5 (-sqlite)" 4784 KiB [^]
  6. [ebuild R ] sys-devel/flex-2.6.1::gentoo USE="-nls* -static {-test}" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  7. [ebuild N ] dev-util/ftjam-2.5.3_rc2-r1::gentoo installed at /usr/bin/jam, I made ln -s /usr/bin/jam /usr/bin/ftjam [^]
  8. Some insight on g++

    Keruskerfuerst is right, the "bootstrap" and "build" USE flags should only be used while creating the stage1 and stage2 tarballs, which do not include C++ support. Rebuild gcc without these flags and you should be all set (anyways, do a revdep-rebuild after that for any possible libraries missing).

    [ebuild R ] sys-devel/gcc-4.9.4:4.9.4::gentoo USE="cxx debug* (multilib) nptl openmp sanitize vtv (-altivec) (-awt) -cilk -doc (-fixed-point) -fortran* -gcj -go -graphite (-hardened) (-libssp) -nls* -nopie -nossp -objc -objc++ -objc-gc -regression-test -vanilla" [^]

  9. [ebuild N ] media-libs/freeglut-3.0.0::gentoo USE="debug -static-libs" ABI_X86="(64) -32 (-x32)" 410 KiB
    [ebuild N ] media-libs/lib3ds-2.0.0_rc1::gentoo 418 KiB [^]
  10. [ebuild R ] media-libs/alsa-lib-1.1.2::gentoo USE="debug -alisp -doc -python" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7" 0 KiB [^]
  11. [ebuild R ] x11-libs/cairo-1.14.8::gentoo USE="X debug* glib opengl* svg (-aqua) (-directfb) (-gles2) -static-libs -valgrind -xcb" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  12. [ebuild N ] dev-libs/libsigc++-2.10.0:2::gentoo USE="-doc -static-libs {-test}" ABI_X86="(64) -32 (-x32)" 3706 KiB
    [ebuild N ] dev-cpp/cairomm-1.12.0-r1::gentoo USE="X svg (-aqua) -doc" ABI_X86="(64) -32 (-x32)" 772 KiB [^]
  13. [ebuild N ] media-libs/cal3d-0.11.0-r1::gentoo USE="debug -16bit-indices -doc" 556 KiB [^]
  14. [ebuild N ] dev-util/cppunit-1.13.2-r2::gentoo USE="examples -doc -static-libs" ABI_X86="(64) -32 (-x32)" 932 KiB [^]
  15. [ebuild R ] media-libs/freetype-2.8:2::gentoo USE="X* adobe-cff bindist bzip2 cleartype_hinting debug* -doc -fontforge -harfbuzz -infinality -png -static-libs -utils" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  16. Hat tip on the ref

    By default, it pulled in the list below. Apparently motif is a gui thing that didn't look necessary.

    [ebuild N ] dev-util/byacc-20170201::gentoo 725 KiB
    [ebuild N ] x11-proto/printproto-1.0.5-r1::gentoo ABI_X86="(64) -32 (-x32)" 218 KiB
    [ebuild N ] x11-libs/libXp-1.0.3::gentoo USE="-static-libs" ABI_X86="(64) -32 (-x32)" 310 KiB
    [ebuild N ] x11-libs/motif-2.3.6-r1::gentoo USE="examples motif22-compatibility -jpeg -png -static-libs -unicode -xft" ABI_X86="(64) -32 (-x32)" 5593 KiB
    [ebuild N ] x11-libs/libGLw-8.0.0::gentoo USE="motif -static-libs" 216 KiB

    I tried: `echo "x11-libs/libGLw -motif" >> /etc/portage/package.use/xorg-server` and re-emerging, but even with -motif it still tries to pull it in, so I re-enabled the default above and emerged.

    Still pulling everything in, remove the -motif and build default above
    [ebuild N ] dev-util/byacc-20170201::gentoo 725 KiB*
    [ebuild N ] x11-proto/printproto-1.0.5-r1::gentoo ABI_X86="(64) -32 (-x32)" 218 KiB
    [ebuild N ] x11-libs/libXp-1.0.3::gentoo USE="-static-libs" ABI_X86="(64) -32 (-x32)" 310 KiB
    [ebuild N ] x11-libs/motif-2.3.6-r1::gentoo USE="examples motif22-compatibility -jpeg -png -static-libs -unicode -xft" ABI_X86="(64) -32 (-x32)" 5593 KiB**
    [ebuild N ] x11-libs/libGLw-8.0.0::gentoo USE="-motif -static-libs" 216 KiB

    * not on mirrors: wget
    ** not on mirrors : sourced from [^]

  17. [ebuild R ] x11-libs/gtk+-2.24.31-r1:2::gentoo USE="examples introspection xinerama (-aqua) -cups {-test} -vim-syntax" ABI_X86="(64) -32 (-x32)" 0 KiB

    * Messages for package x11-libs/gtk+-2.24.31-r1:

    * Please install app-text/evince for print preview functionality.
    * Alternatively, check "gtk-print-preview-command" documentation and
    * add it to your gtkrc.

    I looked into it to see what it's about, and this evince thing requires gtk3, which requires dbus, which is masked. libjpeg-dev media-libs/jpeg (([ebuild N ] media-libs/jpeg-8d-r1::gentoo USE="static-libs" ABI_X86="(64) -32 (-x32)" 982 KiB [^]

  18. [ebuild R ] media-libs/lcms-2.8-r1:2::gentoo USE="threads zlib -doc -jpeg -static-libs {-test} -tiff" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  19. [ebuild N ] media-libs/libmng-2.0.2-r1:0/2::gentoo USE="lcms -static-libs" ABI_X86="(64) -32 (-x32)" 930 KiB [^]
  20. [ebuild N ] dev-games/ode-0.12::gentoo USE="debug examples -doc -double-precision -gyroscopic -static-libs" 1774 KiB [^]
  21. [ebuild R ] media-libs/libogg-1.3.2::gentoo USE="-static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  22. [ebuild N ] media-libs/openal-1.15.1-r2::gentoo USE="alsa debug (-coreaudio) (-neon) -oss -portaudio -pulseaudio" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse" 248 KiB
    This one wasn't on the mirrors:



  23. [ebuild R ] media-libs/libpng-1.6.27:0/16::gentoo USE="apng (-neon) -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  24. [ebuild N ] media-libs/speex-1.2_rc1-r2::gentoo USE="-ogg -static-libs" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="sse" 0 KiB [^]
  25. [ebuild R ] sys-devel/libtool-2.4.6-r3:2::gentoo USE="-vanilla" 951 KiB [^]
  26. [ebuild R ] media-libs/libvorbis-1.3.5::gentoo USE="-static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  27. Ref1, Ref2
    [ebuild N ] app-eselect/eselect-wxwidgets-20140423::gentoo 7 KiB
    [ebuild R ] x11-libs/pango-1.40.5::gentoo USE="X* introspection {-test}" ABI_X86="(64) -32 (-x32)" 0 KiB
    [ebuild N ] x11-libs/wxGTK- USE="X debug (-aqua) -doc -gstreamer -libnotify -opengl -sdl -tiff -webkit" ABI_X86="(64) -32 (-x32)" 56939 KiB [^]
  28. [ebuild R ] x11-libs/libX11-1.6.5::gentoo USE="-doc -ipv6 -static-libs {-test}" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  29. Ref
    [ebuild R ] x11-libs/libXaw-1.0.13::gentoo USE="-deprecated -doc -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  30. Ref
    [ebuild R ] x11-libs/libXext-1.3.3::gentoo USE="-doc -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  31. [ebuild R ] x11-libs/libXrender-0.9.10::gentoo USE="-static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  32. [ebuild R ] x11-libs/libXxf86vm-1.1.4::gentoo USE="-static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  33. Ref
    [ebuild R ] media-libs/mesa-17.0.6::gentoo USE="bindist classic debug* dri3 egl gallium gbm llvm nptl -d3d9 -gles1 -gles2 -opencl -openmax -osmesa -pax_kernel -pic (-selinux) -vaapi -valgrind -vdpau -vulkan -wayland -xa -xvmc" ABI_X86="(64) -32 (-x32)" VIDEO_CARDS="r600 radeon (-freedreno) -i915 -i965 -imx -intel -nouveau -r100 -r200 -r300 -radeonsi (-vc4) (-vivante) -vmware" 0 KiB [^]
  34. [ebuild N ] media-gfx/nvidia-cg-toolkit-3.1.0013-r3::gentoo USE="examples -doc" ABI_X86="(64) -32" 24248 KiB [^]
  35. [ebuild R ] dev-util/pkgconfig-0.28-r2::gentoo USE="-hardened -internal-glib" ABI_X86="(64) -32 (-x32)" 0 KiB [^]
  36. [ebuild N ] dev-libs/apr-1.5.2:1::gentoo USE="urandom -doc -older-kernels-compatibility (-selinux) -static-libs" 808 KiB
    [ebuild N ] dev-util/scons-2.4.1::gentoo USE="-doc" PYTHON_TARGETS="python2_7 (-pypy)" 625 KiB
    [ebuild N ] dev-libs/apr-util-1.5.4:1::gentoo USE="berkdb gdbm -doc -freetds -ldap -mysql -nss -odbc -openssl -postgres -sqlite -static-libs" 679 KiB
    [ebuild N ] net-libs/serf-1.3.8:1::gentoo USE="-kerberos" 140 KiB
    [ebuild N ] dev-vcs/subversion-1.9.5::gentoo USE="berkdb debug dso http -apache2 -ctypes-python -doc -extras -gnome-keyring -java -kwallet -nls -perl -python -ruby -sasl {-test} -vim-syntax" PYTHON_TARGETS="python2_7" 7720 KiB

    None of which were on the Gentoo mirrors. I ended up sourcing from the respective links below: [^]

  37. [ebuild N ] dev-lang/swig-3.0.12::gentoo USE="pcre -ccache -doc" 7959 KiB [^]
  38. Ref
    [ebuild R ] sys-libs/zlib-1.2.11::gentoo USE="-minizip -static-libs" ABI_X86="(64) -32 (-x32)" 594 KiB [^]
  39. Which yielded

    *** Crystal Space -- Configuration Summary ***
    Build mode: optimize
    Version: 2.1 (SVN: no)

    Optional Dependencies
    alsa (audio)
    cairo (image)
    cal3d (models)
    curl (other)
    freetype2 (other)
    gtk (other)
    jpeg (image)
    linux-joystick (other)
    mng (image)
    ode (physics)
    ogg (audio)
    openal (audio)
    opengl (rendering)
    oss (audio)
    png (image)
    speex (audio)
    vorbis (audio)
    x11 (rendering)
    zlib (other)

    3ds (models)
    assimp (models)
    bullet (physics)
    cairomm (image)
    cegui (gui)
    cg (rendering)
    jackasyn (audio)
    java (bindings)
    lcms (image)
    perl (bindings)
    python (bindings)
    theoradec (image)
    vgvm (image)
    wxwidgets (gui) [^]

  40. Her notes say ~30 mins, my results can vouch :

    real 32m31.527s
    user 32m8.751s
    sys 0m52.268s


  41. Into which I inserted :

    export LD_LIBRARY_PATH="$HOME/dev/cal3d/src/cal3d/.libs:$HOME/dev/cs-forupload/:"$LD_LIBRARY_PATH
    export CRYSTAL=$HOME/dev/cs-forupload


  42. To which I inserted :



  1. Thank you for those detailed notes! I'll add a link to this from Eulora's installation notes page.

    Comment by Diana Coman — December 25, 2020 @ 13:30

  2. [...] its constraints to improve the automation on the lbn gathering process and his returns. With the client I'm using, system logs were not enabled by default (chat, crafting, exploring, position and recipes [...]

    Pingback by Elvin Coaljob's Euloran Gatherings « Dorion Mode — April 30, 2021 @ 03:26

  3. [...] I started using it 6 or 7 years ago, e.g. my Firefox is from the v40s vintage. It's where I ran Eulora1 and run Eulora2 and other programs that I care about that require a graphical [...]

    Pingback by The evolution of my OSen operation « Dorion Mode — March 16, 2023 @ 19:17

RSS feed for comments on this post. TrackBack URL

Leave a comment

Dorion Mode is proudly powered by MP-WP. Copyright Robinson Dorion