无法通过命令在ubuntu上运行firefox

时间:2018-02-15 16:45:11

标签: bash shell ubuntu firefox

我有以下脚本,通过它我可以在Heroku实例上安装Firefox。无论出于何种原因,即使路径确实存在,脚本也没​​有正确地将firefox与正确的路径相关联。

#!/bin/sh

set -e

BUILD_DIR=$1
CACHE_DIR=$2

# config
VERSION=58.0.1
LANG=en-US
PLATFORM=linux64
# PLATFORM=linux

# Buildpack URL
ARCHIVE_NAME=firefox

FILE_NAME=${ARCHIVE_NAME}-${VERSION}.tar.bz2

BUILDPACK_FIREFOX_PACKAGE="https://download.mozilla.org/?product=firefox-latest-ssl&os=linux64&lang=en-US"

mkdir -p $CACHE_DIR
if ! [ -e $CACHE_DIR/$FILE_NAME ]; then
  echo "-----> Fetching Firefox package from ${BUILDPACK_FIREFOX_PACKAGE}"
  curl $BUILDPACK_FIREFOX_PACKAGE -L -o $CACHE_DIR/$FILE_NAME
fi

echo "-----> Extracting Firefox binaries to ${BUILD_DIR}/vendor/${ARCHIVE_NAME}"
mkdir -p $CACHE_DIR/$ARCHIVE_NAME
mkdir -p $BUILD_DIR/vendor
tar jxf $CACHE_DIR/$FILE_NAME -C $BUILD_DIR/vendor/

echo "-----> exporting PATH and LIBRARY_PATH"
PROFILE_PATH="$BUILD_DIR/.profile.d/firefox.sh"
mkdir -p $(dirname $PROFILE_PATH)
echo 'export PATH="$PATH:$HOME/vendor/firefox"' >> $PROFILE_PATH
echo 'export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:vendor/firefox"' >> $PROFILE_PATH

所以在按照以下方式安装Firefox后,我无法运行它。

如果我这样做 which firefox

输出是: /app/vendor/firefox/firefox

如果我这样做 whereis firefox

输出是: firefox: /app/vendor/firefox/firefox /app/vendor/firefox/firefox.sig

如果我./firefox

输出是: bash: /app/vendor/firefox/firefox: No such file or directory

但该文件肯定存在,因为

~/vendor/firefox $ pwd
/app/vendor/firefox
~/vendor/firefox $ ls -l
-rwx------ 1 u5487 dyno   206820 Jan 28 20:23 firefox

我在某处读到了我需要做一个符号链接的问题,但有没有什么方法可以让它在没有它的情况下工作?在shell脚本本身或以某种方式不同?

file firefox

firefox: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.18, BuildID[sha1]=f8af6497e4ec47fd4bd584917a78f224f88baee, stripped

0 个答案:

没有答案