From d057e71bcd0a93a18edda2659c49fdf537031d49 Mon Sep 17 00:00:00 2001 From: Armin Weatherwax Date: Fri, 4 Dec 2009 11:03:07 +0100 Subject: Trying the new 64bit libs and adding the adjustments needed. (Cherry picked by Jacek from 13412855) --- linden/indra/cmake/LLWindow.cmake | 4 +- linden/indra/develop.py | 2 + linden/indra/newview/linux_tools/wrapper.sh | 45 ++++++---- linden/indra/newview/llappviewerlinux.cpp | 2 +- linden/indra/newview/viewer_manifest.py | 108 ++++++++++++++++++++++- linden/install.xml | 130 ++++++++++++++++++++++++---- 6 files changed, 252 insertions(+), 39 deletions(-) (limited to 'linden') diff --git a/linden/indra/cmake/LLWindow.cmake b/linden/indra/cmake/LLWindow.cmake index e749055..db24c70 100644 --- a/linden/indra/cmake/LLWindow.cmake +++ b/linden/indra/cmake/LLWindow.cmake @@ -17,7 +17,9 @@ else (STANDALONE) use_prebuilt_binary(mesa) if (LINUX AND VIEWER) set (SDL_FOUND TRUE) - set (SDL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/i686-linux) +#awfixme set (SDL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/i686-linux) +#awfixme set (SDL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${ARCH}-linux) + set (SDL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/x86_64-linux) set (SDL_LIBRARY SDL) endif (LINUX AND VIEWER) endif (STANDALONE) diff --git a/linden/indra/develop.py b/linden/indra/develop.py index 7e7350e..8ea435c 100755 --- a/linden/indra/develop.py +++ b/linden/indra/develop.py @@ -225,6 +225,8 @@ class UnixSetup(PlatformSetup): cpu = 'i386' elif cpu.endswith('86'): cpu = 'i686' + elif cpu in ('x86_64'): + cpu = 'x86_64' elif cpu in ('athlon',): cpu = 'i686' elif cpu == 'Power Macintosh': diff --git a/linden/indra/newview/linux_tools/wrapper.sh b/linden/indra/newview/linux_tools/wrapper.sh index 00d91f4..cb07784 100755 --- a/linden/indra/newview/linux_tools/wrapper.sh +++ b/linden/indra/newview/linux_tools/wrapper.sh @@ -48,10 +48,13 @@ ## - GStreamer is automatically disabled - for now - on 64-bit systems due ## to common fatal incompatibilities; remove/comment these lines if you want ## to try anyway. -if [ "`uname -m`" = "x86_64" ]; then - export LL_DISABLE_GSTREAMER=x - echo '64-bit Linux detected: Disabling GStreamer (streaming video and music) by default; edit ./secondlife to re-enable.' -fi + +#FIXME:-> +#if [ "`uname -m`" = "x86_64" ]; then +# export LL_DISABLE_GSTREAMER=x +# echo '64-bit Linux detected: Disabling GStreamer (streaming video and music) by default; edit ./secondlife to re-enable.' +#fi +#FIXME:<- ## Everything below this line is just for advanced troubleshooters. ##------------------------------------------------------------------- @@ -115,8 +118,11 @@ if [ -n "$LL_TCMALLOC" ]; then fi export GST_PLUGIN_PATH="${GST_PLUGIN_PATH}:${RUN_PATH}/lib/gstreamer-plugins/" - -export SL_ENV='LD_LIBRARY_PATH="`pwd`"/lib:"`pwd`"/app_settings/mozilla-runtime-linux-i686:"${LD_LIBRARY_PATH}"' +if [ "`uname -m`" = "x86_64" ]; then + export SL_ENV='LD_LIBRARY_PATH="`pwd`"/lib:"`pwd`"/app_settings/mozilla-runtime-linux-x86_64:"${LD_LIBRARY_PATH}"' +else + export SL_ENV='LD_LIBRARY_PATH="`pwd`"/lib:"`pwd`"/app_settings/mozilla-runtime-linux-i686:"${LD_LIBRARY_PATH}"' +fi export SL_CMD='$LL_WRAPPER bin/do-not-directly-run-imprudence-bin' export SL_OPT="`cat gridargs.dat` $@" @@ -129,17 +135,20 @@ if [ -n "$LL_RUN_ERR" ]; then if [ "$LL_RUN_ERR" = "runerr" ]; then # generic error running the binary echo '*** Bad shutdown. ***' - if [ "`uname -m`" = "x86_64" ]; then - echo - cat << EOFMARKER -You are running the Imprudence Viewer on a x86_64 platform. The -most common problems when launching the Viewer (particularly -'bin/do-not-directly-run-imprudence-bin: not found' and 'error while -loading shared libraries') may be solved by installing your Linux -distribution's 32-bit compatibility packages. -For example, on Ubuntu and other Debian-based Linuxes you might run: -$ sudo apt-get install ia32-libs ia32-libs-gtk ia32-libs-kde ia32-libs-sdl -EOFMARKER - fi + +#FIXME: -> +# if [ "`uname -m`" = "x86_64" ]; then +# echo +# cat << EOFMARKER +#You are running the Imprudence Viewer on a x86_64 platform. The +#most common problems when launching the Viewer (particularly +#'bin/do-not-directly-run-imprudence-bin: not found' and 'error while +#loading shared libraries') may be solved by installing your Linux +#distribution's 32-bit compatibility packages. +#For example, on Ubuntu and other Debian-based Linuxes you might run: +#$ sudo apt-get install ia32-libs ia32-libs-gtk ia32-libs-kde ia32-libs-sdl +#EOFMARKER +# fi +#FIXME: <- fi fi diff --git a/linden/indra/newview/llappviewerlinux.cpp b/linden/indra/newview/llappviewerlinux.cpp index d02e86a..54ba305 100644 --- a/linden/indra/newview/llappviewerlinux.cpp +++ b/linden/indra/newview/llappviewerlinux.cpp @@ -263,7 +263,7 @@ static inline BOOL do_elfio_glibc_backtrace() for (btpos = 0; btpos < btsize; ++btpos) { // the format of the StraceFile is very specific, to allow (kludgy) machine-parsing - fprintf(StraceFile, "%-3d ", btpos); + fprintf(StraceFile, "%-3ld ", (long)btpos); int symidx; for (symidx = 0; symidx < nSymNo; ++symidx) { diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py index 35957a5..d7d99d1 100755 --- a/linden/indra/newview/viewer_manifest.py +++ b/linden/indra/newview/viewer_manifest.py @@ -805,13 +805,11 @@ class LinuxManifest(ViewerManifest): # 'dst': self.get_dst_prefix(), # 'inst': self.build_path_of(installer_name)}) - class Linux_i686Manifest(LinuxManifest): def construct(self): super(Linux_i686Manifest, self).construct() self.path("imprudence-stripped","bin/do-not-directly-run-imprudence-bin") # self.path("../linux_crash_logger/linux-crash-logger-stripped","linux-crash-logger.bin") - self.path("linux_tools/launch_url.sh","launch_url.sh") if self.prefix("res-sdl"): self.path("*") @@ -929,6 +927,7 @@ class Linux_x86_64Manifest(LinuxManifest): super(Linux_x86_64Manifest, self).construct() self.path("imprudence-stripped","bin/do-not-directly-run-imprudence-bin") # self.path("../linux_crash_logger/linux-crash-logger-stripped","linux-crash-logger.bin") + self.path("linux_tools/launch_url.sh","launch_url.sh") if self.prefix("res-sdl"): self.path("*") @@ -936,7 +935,110 @@ class Linux_x86_64Manifest(LinuxManifest): self.end_prefix("res-sdl") self.path("featuretable_linux.txt") - self.path("secondlife-i686.supp") + #self.path("secondlife-x86_64.supp") + + self.path("app_settings/mozilla-runtime-linux-x86_64") + + if self.prefix("../../libraries/x86_64-linux/lib_release_client", dst="lib"): + self.path("libapr-1.so.0") + self.path("libaprutil-1.so.0") + self.path("libdb-4.2.so") + self.path("libcrypto.so.0.9.8") + self.path("libexpat.so.1") + self.path("libssl.so.0.9.8") + self.path("libuuid.so", "libuuid.so.1") + self.path("libSDL-1.2.so.0") + self.path("libELFIO.so") + self.path("libopenjpeg.so.1.3.0", "libopenjpeg.so.1.3") + self.path("libxml2.so.2") + self.path("libz.so.1") + + # OpenAL + self.path("libopenal.so.1") + self.path("libalut.so.0") + + # GTK+ and dependencies + self.path("libatk-1.0.so.0") + self.path("libcairo.so.2") + self.path("libfontconfig.so.1") + self.path("libfreetype.so.6") + self.path("libgdk_pixbuf-2.0.so.0") + self.path("libgdk-x11-2.0.so.0") + self.path("libgtk-x11-2.0.so.0") + self.path("libpango-1.0.so.0") + self.path("libpangoft2-1.0.so.0") + self.path("libpangox-1.0.so.0") + self.path("libpangoxft-1.0.so.0") + self.path("libpixman-1.so.0") + + # Gstreamer libs + self.path("libgstbase-0.10.so.0") + self.path("libgstreamer-0.10.so.0") + self.path("libgstaudio-0.10.so.0") + self.path("libgstbase-0.10.so.0") + self.path("libgstcontroller-0.10.so.0") + self.path("libgstdataprotocol-0.10.so.0") + self.path("libgstinterfaces-0.10.so.0") + self.path("libgstnetbuffer-0.10.so.0") + self.path("libgstpbutils-0.10.so.0") + self.path("libgstriff-0.10.so.0") + self.path("libgstrtp-0.10.so.0") + self.path("libgstrtsp-0.10.so.0") + self.path("libgstsdp-0.10.so.0") + self.path("libgsttag-0.10.so.0") + self.path("libgstvideo-0.10.so.0") + + # Gstreamer plugin dependencies + self.path("libogg.so.0") + self.path("libtheora.so.0") + self.path("libvorbis.so.0") + self.path("libvorbisenc.so.2") + self.path("liboil-0.3.so.0") + + # Gstreamer plugins + if self.prefix("gstreamer-plugins"): + self.path("libgstalsa.so") + self.path("libgstasf.so") + self.path("libgstaudioconvert.so") + self.path("libgstaudioresample.so") + self.path("libgstautodetect.so") + self.path("libgstavi.so") + self.path("libgstcoreelements.so") + self.path("libgstcoreindexers.so") + self.path("libgstdecodebin2.so") + self.path("libgstdecodebin.so") + self.path("libgstesd.so") + self.path("libgstffmpeg.so") + self.path("libgstffmpegcolorspace.so") + self.path("libgstgnomevfs.so") + self.path("libgsticydemux.so") + self.path("libgstid3demux.so") + self.path("libgstmpegdemux.so") + self.path("libgstmultifile.so") + self.path("libgstmultipart.so") + self.path("libgstogg.so") + self.path("libgstossaudio.so") + self.path("libgstplaybin.so") + self.path("libgstpulse.so") + self.path("libgstqtdemux.so") + self.path("libgstqueue2.so") + self.path("libgsttcp.so") + self.path("libgsttheora.so") + self.path("libgsttypefindfunctions.so") + self.path("libgstudp.so") + self.path("libgstvideoscale.so") + self.path("libgstvolume.so") + self.path("libgstvorbis.so") + self.path("libgstwavparse.so") + + self.end_prefix("gstreamer-plugins") + self.end_prefix("lib") + + # Vivox runtimes + #if self.prefix(src="vivox-runtime/i686-linux", dst="bin"): + # self.path("SLVoice") + # self.end_prefix() + if __name__ == "__main__": main() diff --git a/linden/install.xml b/linden/install.xml index f163ff4..6edc10b 100644 --- a/linden/install.xml +++ b/linden/install.xml @@ -67,6 +67,13 @@ url http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/SDL-1.2.5-linux-20080818.tar.bz2 + linux64 + + md5sum + 24456b23dd2960cdeb8e021f48c8985c + url + http://imprudenceviewer.org/download/libs/SDL-1.2.14-linux64-lenny-20091202.tar.bz2 + windows md5sum @@ -99,9 +106,9 @@ linux64 md5sum - 1a7e1186855d48d8316ce86803095f70 + ae13485e8f53e53c2c04c4b57013346c url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/apr_suite-1.2.8-linux64-20080909a.tar.bz2 + http://imprudenceviewer.org/download/libs/apr_suite-1.2.8-linux64-lenny-20091202.tar.bz2 windows @@ -291,6 +298,13 @@ url http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/dbusglib-linux-20080707.tar.bz2 + linux64 + + md5sum + 9738472b94191fae2b0fe3fce8df17b0 + url + http://imprudenceviewer.org/download/libs/dbusglib-linux64-20091129.tar.bz2 + elfio @@ -306,6 +320,13 @@ url http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/elfio-1.0.3-linux-20080812.tar.bz2 + linux64 + + md5sum + e829a52ba67e02b011cf2e372914d32f + url + http://imprudenceviewer.org/download/libs/elfio-1.0.3-linux64-20091129.tar.bz2 + expat @@ -335,9 +356,9 @@ linux64 md5sum - 278c61871419b9a4d50a4f88b7922403 + 2d9224d2bb6e75bf71f5ca150e4fcd77 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/expat-1.95.8-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/expat-2.0.1-4-linux64-lenny-20091129.tar.bz2 windows @@ -413,6 +434,13 @@ url http://imprudenceviewer.org/download/libs/fontconfig-2.7.3-linux-20091104.tar.bz2 + linux64 + + md5sum + 75d0b4a6a69b617e41232bff2910f583 + url + http://imprudenceviewer.org/download/libs/fontconfig-2.7.3-linux64-20091202.tar.bz2 + freetype @@ -439,6 +467,13 @@ url http://imprudenceviewer.org/download/libs/freetype-2.3.11-linux-20091103.tar.bz2 + linux64 + + md5sum + 0334f47d86b6b80b40749b5b51cc08fe + url + http://imprudenceviewer.org/download/libs/freetype-2.3.11-linux64-20091128.tar.bz2 + windows md5sum @@ -510,6 +545,13 @@ url http://imprudenceviewer.org/download/libs/glib-2.20.5-linux-20091115.tar.bz2 + linux64 + + md5sum + 4a85f3748e3fbd2e6248e80bfa263cd5 + url + http://imprudenceviewer.org/download/libs/glib-2.20.5-linux64-20091128.tar.bz2 + windows md5sum @@ -532,6 +574,13 @@ url http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/google-linux-20080812.tar.bz2 + linux64 + + md5sum + 6a83ddce8673acb5057ed3a14769deee + url + http://imprudenceviewer.org/download/libs/google-linux64-20091203.tar.bz2 + gstreamer @@ -557,9 +606,9 @@ linux64 md5sum - befc7520fe01250f39458f65c29bc584 + 1dd30764ff45d80f73b4e5b6c4660cd2 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/gstreamer-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/gstreamer-0.10.24-linux64-20091203.tar.bz2 windows @@ -590,6 +639,13 @@ url http://imprudenceviewer.org/download/libs/gstreamer-plugins-linux-20091125.tar.bz2 + linux64 + + md5sum + 8e21045776401973c5034de30258ce8c + url + http://imprudenceviewer.org/download/libs/gstreamer-plugins-linux64-20091203.tar.bz2 + windows md5sum @@ -620,6 +676,13 @@ cairo: Copyright © 2002 University of Southern California, Copyright © 2005 Re url http://imprudenceviewer.org/download/libs/gtk-etc-linux-20091115.tar.bz2 + linux64 + + md5sum + b21bb7378dec45ff4ef4982c9511b581 + url + http://imprudenceviewer.org/download/libs/gtk-etc-linux64-20091128.tar.bz2 + havok @@ -785,6 +848,13 @@ Portions copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura url http://imprudenceviewer.org/download/libs/liboil-0.3.16-linux-20091125.tar.bz2 + linux64 + + md5sum + 15d8f97d5ec3a27f643708511ca8bee6 + url + http://imprudenceviewer.org/download/libs/liboil-0.3.16-linux64-20091130.tar.bz2 + libpng @@ -844,6 +914,13 @@ Portions copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura url http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/libuuid-linux-20080812.tar.bz2 + linux64 + + md5sum + + url + http://imprudenceviewer.org/download/libs/libuuid-linux64-lenny-20091130.tar.bz2 + libxml @@ -869,9 +946,9 @@ Portions copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura linux64 md5sum - 921d7f980519101afb74623e29e9d175 + 92993220ad1a191c629e7f5cee169f77 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/libxml-2.6.24-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/libxml2-2.7.4-r1-linux64-20091129.tar.bz2 windows @@ -905,9 +982,9 @@ Portions copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura linux64 md5sum - c2ae53462b56e0999ba386774ab0b789 + a99b3b8c6a5d0949cae04ac9c6de7042 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llmozlib-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/llmozlib-linux64-20091129.tar.bz2 windows @@ -1024,6 +1101,13 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn url http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/ndofdev-linux-0.2-20080828.tar.bz2 + linux64 + + md5sum + c5eb5b49d48ee370fc6ed8798e1fc58c + url + http://imprudenceviewer.org/download/libs/ndofdev-linux64-0.2-20091129.tar.bz2 + windows md5sum @@ -1060,9 +1144,9 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn linux64 md5sum - 964c71e6ee22be1bcaf6d480e74cdd14 + 83c72b57a95e8c42560fb67955169f19 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/ogg-vorbis-1.2.0-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/ogg-vorbis-linux64-20091202.tar.bz2 windows @@ -1097,6 +1181,13 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn url http://imprudenceviewer.org/download/libs/openal-linux-20091115.tar.bz2 + linux64 + + md5sum + ca923ac36d81185279b9cc8f0dcd9461 + url + http://imprudenceviewer.org/download/libs/openal-linux64-lenny-20091202.tar.bz2 + windows md5sum @@ -1176,9 +1267,9 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn linux64 md5sum - 44f1bc9d47e4a54fc274c213f2cb565f + 947419e06f0f85fbf4ae089e8e2a6a9d url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.2.0-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/openjpeg-1.3-linux64-20091202.tar.bz2 windows @@ -1265,6 +1356,13 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn url http://imprudenceviewer.org/download/libs/theora-linux-20091115.tar.bz2 + linux64 + + md5sum + b1141b53eb3576cc0c32997bf0fb097c + url + http://imprudenceviewer.org/download/libs/theora-linux64-20091202.tar.bz2 + tut @@ -1403,9 +1501,9 @@ Copyright (C) 2004-2005 Vladimir Berezniker @ http://public.xdi.org/=vmpn linux64 md5sum - 4bddfb2c6dd7b1470a3ed675ac14bd9a + d085a173e3c05ff3bb0ee36ba42deb2c url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/zlib-1.2.3-linux64-20080909.tar.bz2 + http://imprudenceviewer.org/download/libs/zlib-1.2.3-linux64-lenny-20091202.tar.bz2 windows -- cgit v1.1