[OpenIndiana-discuss] firefox 31.2.0esr broken?

Udo Grabowski (IMK) udo.grabowski at kit.edu
Wed Oct 15 13:53:12 UTC 2014


I also use the orginal firefox and thunderbird scripts that
for some reason were replaced by a simple copy of firefox-bin and
thunderbird-bin for an unkown reason. If the binary first looks
into /usr//lib/firefox, it of course gets the wrong (old) libraries.
Find attached my versions of these files, adapt for your locations.

Below are my library mappings:

# ldd firefox-bin
	libCrun.so.1 =>	 /usr/lib/libCrun.so.1
	libCstd.so.1 =>	 /usr/lib/libCstd.so.1
	libpthread.so.1 =>	 /lib/libpthread.so.1
	libc.so.1 =>	 /lib/libc.so.1
	libm.so.2 =>	 /lib/libm.so.2

# ldd plugin-container
	libCrun.so.1 =>	 /usr/lib/libCrun.so.1
	libCstd.so.1 =>	 /usr/lib/libCstd.so.1
	libpthread.so.1 =>	 /lib/libpthread.so.1
	libc.so.1 =>	 /lib/libc.so.1
	libxul.so =>	 /usr/local/lib/firefox/libxul.so
	libsmime3.so =>	 /usr/local/lib/firefox/libsmime3.so
	libssl3.so =>	 /usr/local/lib/firefox/libssl3.so
	libnss3.so =>	 /usr/local/lib/firefox/libnss3.so
	libnssutil3.so =>	 /usr/local/lib/firefox/libnssutil3.so
	libXrender.so.1 =>	 /usr/X11/lib/libXrender.so.1
	libmozsqlite3.so =>	 /usr/local/lib/firefox/libmozsqlite3.so
	libnspr4.so =>	 /usr/local/lib/firefox/libnspr4.so
	libplc4.so =>	 /usr/local/lib/firefox/libplc4.so
	libplds4.so =>	 /usr/local/lib/firefox/libplds4.so
	libmozalloc.so =>	 /usr/local/lib/firefox/libmozalloc.so
	libdbus-1.so.3 =>	 /usr/lib/libdbus-1.so.3
	libgobject-2.0.so.0 =>	 /usr/lib/libgobject-2.0.so.0
	libglib-2.0.so.0 =>	 /usr/lib/libglib-2.0.so.0
	libX11.so.4 =>	 /usr/X11/lib/libX11.so.4
	libsocket.so.1 =>	 /lib/libsocket.so.1
	libnsl.so.1 =>	 /lib/libnsl.so.1
	libXext.so.0 =>	 /usr/X11/lib/libXext.so.0
	libpangoft2-1.0.so.0 =>	 /usr/lib/libpangoft2-1.0.so.0
	libfreetype.so.6 =>	 /usr/lib/libfreetype.so.6
	libfontconfig.so.1 =>	 /usr/lib/libfontconfig.so.1
	libpangocairo-1.0.so.0 =>	 /usr/lib/libpangocairo-1.0.so.0
	libpango-1.0.so.0 =>	 /usr/lib/libpango-1.0.so.0
	libcairo.so.2 =>	 /usr/lib/libcairo.so.2
	libgtk-x11-2.0.so.0 =>	 /usr/lib/libgtk-x11-2.0.so.0
	libatk-1.0.so.0 =>	 /usr/lib/libatk-1.0.so.0
	libgdk-x11-2.0.so.0 =>	 /usr/lib/libgdk-x11-2.0.so.0
	libgdk_pixbuf-2.0.so.0 =>	 /usr/lib/libgdk_pixbuf-2.0.so.0
	libm.so.2 =>	 /lib/libm.so.2
	libXt.so.4 =>	 /usr/X11/lib/libXt.so.4
	libgthread-2.0.so.0 =>	 /usr/lib/libgthread-2.0.so.0
	libthread.so.1 =>	 /lib/libthread.so.1
	librt.so.1 =>	 /lib/librt.so.1
	libdl.so.1 =>	 /lib/libdl.so.1
	libbsm.so.1 =>	 /lib/libbsm.so.1
	libsecdb.so.1 =>	 /lib/libsecdb.so.1
	libXau.so.6 =>	 /usr/lib/libXau.so.6
	libXdmcp.so.6 =>	 /usr/lib/libXdmcp.so.6
	libmp.so.2 =>	 /lib/libmp.so.2
	libmd.so.1 =>	 /lib/libmd.so.1
	libgmodule-2.0.so.0 =>	 /usr/lib/libgmodule-2.0.so.0
	libz.so.1 =>	 /usr/lib/libz.so.1
	libbz2.so.1 =>	 /usr/lib/libbz2.so.1
	libexpat.so.1 =>	 /usr/lib/libexpat.so.1
	libpixman-1.so.0 =>	 /usr/lib/libpixman-1.so.0
	libpng14.so.14 =>	 /usr/lib/libpng14.so.14
	libXcomposite.so.1 =>	 /usr/lib/libXcomposite.so.1
	libXdamage.so.1 =>	 /usr/lib/libXdamage.so.1
	libXfixes.so.1 =>	 /usr/lib/libXfixes.so.1
	libgio-2.0.so.0 =>	 /usr/lib/libgio-2.0.so.0
	libtsol.so.2 =>	 /usr/lib/libtsol.so.2
	libXinerama.so.1 =>	 /usr/lib/libXinerama.so.1
	libXi.so.5 =>	 /usr/lib/libXi.so.5
	libXrandr.so.2 =>	 /usr/lib/libXrandr.so.2
	libXcursor.so.1 =>	 /usr/lib/libXcursor.so.1
	libSM.so.6 =>	 /usr/lib/libSM.so.6
	libICE.so.6 =>	 /usr/lib/libICE.so.6
	libinetutil.so.1 =>	 /lib/libinetutil.so.1
	libscf.so.1 =>	 /lib/libscf.so.1
	libresolv.so.2 =>	 /lib/libresolv.so.2
	libuutil.so.1 =>	 /lib/libuutil.so.1
	libgen.so.1 =>	 /lib/libgen.so.1
	libnvpair.so.1 =>	 /lib/libnvpair.so.1
	libsmbios.so.1 =>	 /usr/lib/libsmbios.so.1
	libXevie.so.1 =>	 /usr/lib/libXevie.so.1
	libXss.so.1 =>	 /usr/lib/libXss.so.1

# ldd libflashplayer.so
	libsocket.so.1 =>	 /lib/libsocket.so.1
	libnsl.so.1 =>	 /lib/libnsl.so.1
	librt.so.1 =>	 /lib/librt.so.1
	libpthread.so.1 =>	 /lib/libpthread.so.1
	libX11.so.4 =>	 /usr/lib/libX11.so.4
	libXext.so.0 =>	 /usr/lib/libXext.so.0
	libXt.so.4 =>	 /usr/lib/libXt.so.4
	libfreetype.so.6 =>	 /usr/lib/libfreetype.so.6
	libfontconfig.so.1 =>	 /usr/lib/libfontconfig.so.1
	libc.so.1 =>	 /lib/libc.so.1
	libCrun.so.1 =>	 /usr/lib/libCrun.so.1
	libCstd.so.1 =>	 /usr/lib/libCstd.so.1
	libgtk-x11-2.0.so.0 =>	 /usr/lib/libgtk-x11-2.0.so.0
	libgdk-x11-2.0.so.0 =>	 /usr/lib/libgdk-x11-2.0.so.0
	libatk-1.0.so.0 =>	 /usr/lib/libatk-1.0.so.0
	libgdk_pixbuf-2.0.so.0 =>	 /usr/lib/libgdk_pixbuf-2.0.so.0
	libm.so.2 =>	 /lib/libm.so.2
	libpangoxft-1.0.so.0 =>	 /usr/lib/libpangoxft-1.0.so.0
	libpangox-1.0.so.0 =>	 /usr/lib/libpangox-1.0.so.0
	libpango-1.0.so.0 =>	 /usr/lib/libpango-1.0.so.0
	libgobject-2.0.so.0 =>	 /usr/lib/libgobject-2.0.so.0
	libgmodule-2.0.so.0 =>	 /usr/lib/libgmodule-2.0.so.0
	libglib-2.0.so.0 =>	 /usr/lib/libglib-2.0.so.0
	libmp.so.2 =>	 /lib/libmp.so.2
	libmd.so.1 =>	 /lib/libmd.so.1
	libXau.so.6 =>	 /usr/lib/libXau.so.6
	libXdmcp.so.6 =>	 /usr/lib/libXdmcp.so.6
	libSM.so.6 =>	 /usr/lib/libSM.so.6
	libICE.so.6 =>	 /usr/lib/libICE.so.6
	libz.so.1 =>	 /usr/lib/libz.so.1
	libbz2.so.1 =>	 /usr/lib/libbz2.so.1
	libexpat.so.1 =>	 /usr/lib/libexpat.so.1
	libpangocairo-1.0.so.0 =>	 /usr/lib/libpangocairo-1.0.so.0
	libXcomposite.so.1 =>	 /usr/lib/libXcomposite.so.1
	libXdamage.so.1 =>	 /usr/lib/libXdamage.so.1
	libXfixes.so.1 =>	 /usr/lib/libXfixes.so.1
	libcairo.so.2 =>	 /usr/lib/libcairo.so.2
	libpng14.so.14 =>	 /usr/lib/libpng14.so.14
	libgio-2.0.so.0 =>	 /usr/lib/libgio-2.0.so.0
	libpangoft2-1.0.so.0 =>	 /usr/lib/libpangoft2-1.0.so.0
	libgthread-2.0.so.0 =>	 /usr/lib/libgthread-2.0.so.0
	libsecdb.so.1 =>	 /usr/lib/libsecdb.so.1
	libtsol.so.2 =>	 /usr/lib/libtsol.so.2
	libXrender.so.1 =>	 /usr/lib/libXrender.so.1
	libXinerama.so.1 =>	 /usr/lib/libXinerama.so.1
	libXi.so.5 =>	 /usr/lib/libXi.so.5
	libXrandr.so.2 =>	 /usr/lib/libXrandr.so.2
	libXcursor.so.1 =>	 /usr/lib/libXcursor.so.1
	libXft.so.2 =>	 /usr/lib/libXft.so.2
	libpixman-1.so.0 =>	 /usr/lib/libpixman-1.so.0
	libresolv.so.2 =>	 /lib/libresolv.so.2
	libXevie.so.1 =>	 /usr/lib/libXevie.so.1
	libXss.so.1 =>	 /usr/lib/libXss.so.1

On 15/10/2014 15:42, Udo Grabowski (IMK) wrote:
> I'm inclined to suspect that you have an LD_LIBRARY_PATH defined
> somewhere which redirects firefox to use wrong library versions ?
>


-- 
Dr.Udo Grabowski   Inst.f.Meteorology & Climate Research IMK-ASF-SAT
http://www.imk-asf.kit.edu/english/sat.php
KIT - Karlsruhe Institute of Technology           http://www.kit.edu
Postfach 3640,76021 Karlsruhe,Germany T:(+49)721 608-26026 F:-926026
-------------- next part --------------
#!/bin/bash
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****

## 
## Usage:
##
## $ mozilla [args]
##
## This script is meant to run the application binary from mozilla/dist/bin.
##
## The script will setup all the environment voodoo needed to make
## the application binary to work.
##

#uncomment for debugging
#set -x

moz_libdir=/usr/local/lib/firefox

# Use run-mozilla.sh in the current dir if it exists
# If not, then start resolving symlinks until we find run-mozilla.sh
found=0
progname="$0"
curdir=`dirname "$progname"`
progbase=`basename "$progname"`
run_moz="$curdir/run-mozilla.sh"
if test -x "$run_moz"; then
  dist_bin="$curdir"
  found=1
else
  here=`/bin/pwd`
  while [ -h "$progname" ]; do
    bn=`basename "$progname"`
    cd `dirname "$progname"`
    # Resolve symlink of dirname
    cd `/bin/pwd`
    progname=`/bin/ls -l "$bn" | sed -e 's/^.* -> //' `
    progbase=`basename "$progname"`
    if [ ! -x "$progname" ]; then
      break
    fi
    curdir=`dirname "$progname"`
    run_moz="$curdir/run-mozilla.sh"
    if [ -x "$run_moz" ]; then
      cd "$curdir"
      dist_bin=`/bin/pwd`
      run_moz="$dist_bin/run-mozilla.sh"
      found=1
      break
    fi
  done
  cd "$here"
fi
if [ $found = 0 ]; then
  # Check default compile-time libdir
  if [ -x "$moz_libdir/run-mozilla.sh" ]; then
    dist_bin="$moz_libdir"
    run_moz="$moz_libdir/run-mozilla.sh"
  else
    echo "Cannot find Firefox runtime directory. Exiting."
    exit 1
  fi
fi

script_args=""
debugging=0
MOZILLA_BIN="${progbase}-bin"

if [ "$OSTYPE" = "beos" ]; then
  mimeset -F "$MOZILLA_BIN"
fi

pass_arg_count=0
while [ $# -gt $pass_arg_count ]
do
  case "$1" in
    -p | --pure | -pure)
      MOZILLA_BIN="${MOZILLA_BIN}.pure"
      shift
      ;;
    -g | --debug)
      script_args="$script_args -g"
      debugging=1
      shift
      ;;
    -d | --debugger)
      script_args="$script_args -d $2"
      shift 2
      ;;
    *)
      # Move the unrecognized argument to the end of the list.
      arg="$1"
      shift
      set -- "$@" "$arg"
      pass_arg_count=`expr $pass_arg_count + 1`
      ;;
  esac
done


if [ $debugging = 1 ]
then
  echo $dist_bin/run-mozilla.sh $script_args $dist_bin/$MOZILLA_BIN "$@"
fi
"$dist_bin/run-mozilla.sh" $script_args "$dist_bin/$MOZILLA_BIN" "$@"
exitcode=$?

exit $exitcode
# EOF.
-------------- next part --------------
#!/bin/bash
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****

## 
## Usage:
##
## $ mozilla [args]
##
## This script is meant to run the application binary from mozilla/dist/bin.
##
## The script will setup all the environment voodoo needed to make
## the application binary to work.
##

#uncomment for debugging
#set -x

moz_libdir=/usr/local/lib/thunderbird

# Use run-mozilla.sh in the current dir if it exists
# If not, then start resolving symlinks until we find run-mozilla.sh
found=0
progname="$0"
curdir=`dirname "$progname"`
progbase=`basename "$progname"`
run_moz="$curdir/run-mozilla.sh"
if test -x "$run_moz"; then
  dist_bin="$curdir"
  found=1
else
  here=`/bin/pwd`
  while [ -h "$progname" ]; do
    bn=`basename "$progname"`
    cd `dirname "$progname"`
    # Resolve symlink of dirname
    cd `/bin/pwd`
    progname=`/bin/ls -l "$bn" | sed -e 's/^.* -> //' `
    progbase=`basename "$progname"`
    if [ ! -x "$progname" ]; then
      break
    fi
    curdir=`dirname "$progname"`
    run_moz="$curdir/run-mozilla.sh"
    if [ -x "$run_moz" ]; then
      cd "$curdir"
      dist_bin=`/bin/pwd`
      run_moz="$dist_bin/run-mozilla.sh"
      found=1
      break
    fi
  done
  cd "$here"
fi
if [ $found = 0 ]; then
  # Check default compile-time libdir
  if [ -x "$moz_libdir/run-mozilla.sh" ]; then
    dist_bin="$moz_libdir"
    run_moz="$moz_libdir/run-mozilla.sh"
  else
    echo "Cannot find Thunderbird runtime directory. Exiting."
    exit 1
  fi
fi

script_args=""
debugging=0
MOZILLA_BIN="${progbase}-bin"

if [ "$OSTYPE" = "beos" ]; then
  mimeset -F "$MOZILLA_BIN"
fi

pass_arg_count=0
while [ $# -gt $pass_arg_count ]
do
  case "$1" in
    -p | --pure | -pure)
      MOZILLA_BIN="${MOZILLA_BIN}.pure"
      shift
      ;;
    -g | --debug)
      script_args="$script_args -g"
      debugging=1
      shift
      ;;
    -d | --debugger)
      script_args="$script_args -d $2"
      shift 2
      ;;
    *)
      # Move the unrecognized argument to the end of the list.
      arg="$1"
      shift
      set -- "$@" "$arg"
      pass_arg_count=`expr $pass_arg_count + 1`
      ;;
  esac
done

if [ $debugging = 1 ]
then
  echo $dist_bin/run-mozilla.sh $script_args $dist_bin/$MOZILLA_BIN "$@"
fi
"$dist_bin/run-mozilla.sh" $script_args "$dist_bin/$MOZILLA_BIN" "$@"
exitcode=$?

exit $exitcode
# EOF.


More information about the openindiana-discuss mailing list