LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 06-05-2022, 05:37 AM   #1
dodoLQ
Member
 
Registered: Dec 2014
Location: France
Distribution: Slackware
Posts: 213

Rep: Reputation: Disabled
Palemoon-31 compilation


Hi, trying to compile Pale-Moon-31.0.0_Release.tar.gz using GRE-RELBASE_20220320.tar.gz but configure fails at this point:
Code:
0:12.45   --enable-optimize=-O2 -msse2 -mfpmath=sse
 0:12.45   BASH_ARGC=([0]="4")
 0:12.45   BASH_ARGV=([0]="/tmp/Pale-Moon-31.0.0_Release/platform/python/mozbuild/mozbuild/action/dump_env.py" [1]="/tmp/obj-palemoon/_virtualenv/bin/python" [2]="/tmp/Pale-Moon-31.0.0_Release/.mozconfig" [3]="/tmp/Pale-Moon-31.0.0_Release/platform")
 0:12.45 ERROR: Cannot find project browser
 0:12.48 *** Fix above errors and then restart with\
 0:12.48                "/usr/bin/gmake -f client.mk build"
 0:12.48 gmake: *** [client.mk:370: configure] Error 1
root@corestar:/tmp#
Inspected client.mk at line 370 doesn't inspired me..
Code:
<------>@cd $(OBJDIR) && $(BUILD_PROJECT_ARG) $(CONFIGURE_ENV_ARGS) $(CONFIGURE) $(CONFIGURE_ARGS) \
<------>  || ( echo '*** Fix above errors and then restart with\
               "$(MAKE) -f client.mk build"' && exit 1 )
<------>@touch $(OBJDIR)/Makefile
<------>$(call BUILDSTATUS,TIER_FINISH configure)
Any ideas? Thanks
I'm using the SB for Palemoon-30 under Slack64_15.0.
 
Old 06-05-2022, 06:27 AM   #2
cwizardone
LQ Veteran
 
Registered: Feb 2007
Distribution: Slackware64-current with "True Multilib" and KDE4Town.
Posts: 9,152

Rep: Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323
Is there anything in the thread at the following link, that might help?
https://www.linuxquestions.org/quest...re-4175709634/

Last edited by cwizardone; 06-05-2022 at 10:25 AM.
 
Old 06-06-2022, 11:01 AM   #3
JayByrd
Member
 
Registered: Aug 2021
Location: Seattle, WA
Distribution: Slackware
Posts: 302

Rep: Reputation: 310Reputation: 310Reputation: 310Reputation: 310
Quote:
Originally Posted by dodoLQ View Post
Hi, trying to compile Pale-Moon-31.0.0_Release.tar.gz using GRE-RELBASE_20220320.tar.gz but configure fails at this point:
Code:
0:12.45   --enable-optimize=-O2 -msse2 -mfpmath=sse
 0:12.45   BASH_ARGC=([0]="4")
 0:12.45   BASH_ARGV=([0]="/tmp/Pale-Moon-31.0.0_Release/platform/python/mozbuild/mozbuild/action/dump_env.py" [1]="/tmp/obj-palemoon/_virtualenv/bin/python" [2]="/tmp/Pale-Moon-31.0.0_Release/.mozconfig" [3]="/tmp/Pale-Moon-31.0.0_Release/platform")
 0:12.45 ERROR: Cannot find project browser
 0:12.48 *** Fix above errors and then restart with\
 0:12.48                "/usr/bin/gmake -f client.mk build"
 0:12.48 gmake: *** [client.mk:370: configure] Error 1
root@corestar:/tmp#
Any ideas? Thanks
I'm using the SB for Palemoon-30 under Slack64_15.0.
The line in red is the key...

In the "OPTIONS" section of the SlackBuild script, change
Code:
--enable-application=browser
to
Code:
--enable-application=palemoon
.

This worked for me for version 31.0.
 
1 members found this post helpful.
Old 06-08-2022, 12:27 PM   #4
dodoLQ
Member
 
Registered: Dec 2014
Location: France
Distribution: Slackware
Posts: 213

Original Poster
Rep: Reputation: Disabled
A genius answer, thank you JayByrd Will try that this we! Also thx to cwizardone, will read the entire thread..

Something bother-me, why i'm getting a ? on Tux logo in every posts?

Last edited by dodoLQ; 06-08-2022 at 12:31 PM.
 
Old 06-08-2022, 12:42 PM   #5
cwizardone
LQ Veteran
 
Registered: Feb 2007
Distribution: Slackware64-current with "True Multilib" and KDE4Town.
Posts: 9,152

Rep: Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323Reputation: 7323
Quote:
Originally Posted by dodoLQ View Post
A genius answer, thank you JayByrd Will try that this we! Also thx to cwizardone, will read the entire thread..

Something bother-me, why i'm getting a ? on Tux logo in every posts?
IIRC, that means you are online (signed on to the board).

Last edited by cwizardone; 06-08-2022 at 01:10 PM.
 
Old 06-11-2022, 03:06 AM   #6
dodoLQ
Member
 
Registered: Dec 2014
Location: France
Distribution: Slackware
Posts: 213

Original Poster
Rep: Reputation: Disabled
Still have a pb here:
Code:
0:05.21   File "/tmp/Pale-Moon-31.0.0_Release/platform/python/mozbuild/mozbuild/configure/__init__.py", line 322, in include_file
 0:05.21     source = open(path, 'rb').read()
 0:05.21 IOError: [Errno 2] No such file or directory: u'/tmp/Pale-Moon-31.0.0_Release/platform/toolkit/moz.configure'
 0:05.21 *** Fix above errors and then restart with\
 0:05.21                "/usr/bin/gmake -f client.mk build"
 0:05.21 gmake: *** [client.mk:370: configure] Error 1
I think GRE-RELBASE_20220320 is obsolete (no toolkit dir).. Where can i find a proper release of GRE for compiling Palemoon-31 ?
 
Old 06-11-2022, 05:46 AM   #7
elcore
Senior Member
 
Registered: Sep 2014
Distribution: Slackware
Posts: 1,754

Rep: Reputation: Disabled
Quote:
Originally Posted by cwizardone View Post
IIRC, that means you are online (signed on to the board).
Not really, the "?" temporarily appears only when writing a quick reply.
Standard reply and reply with quote does not display the "?" it just shows the useragent string icon.
 
Old 06-11-2022, 01:26 PM   #8
JayByrd
Member
 
Registered: Aug 2021
Location: Seattle, WA
Distribution: Slackware
Posts: 302

Rep: Reputation: 310Reputation: 310Reputation: 310Reputation: 310
Quote:
Originally Posted by dodoLQ View Post
Still have a pb here:
I think GRE-RELBASE_20220320 is obsolete (no toolkit dir).. Where can i find a proper release of GRE for compiling Palemoon-31 ?
Try this: http://www.palemoon.org/sourcecode.shtml

Each official release of Pale Moon is accompanied by a corresponding release of the UXP/GRE on the same day. The lastest releases are:
Code:
Pale Moon 31.1.0
UXP RB_20220607_2
 
Old 06-12-2022, 04:06 AM   #9
dodoLQ
Member
 
Registered: Dec 2014
Location: France
Distribution: Slackware
Posts: 213

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by JayByrd View Post
Code:
Pale Moon 31.1.0
UXP RB_20220607_2
Ok,i'll try that thanks
 
Old 06-12-2022, 12:16 PM   #10
dodoLQ
Member
 
Registered: Dec 2014
Location: France
Distribution: Slackware
Posts: 213

Original Poster
Rep: Reputation: Disabled
Compiled fine 8)
Here's my SB with some modifications, inpired from SBo's Palemoon-30:
Code:
#!/bin/bash

# Slackware build script for Pale Moon
# Modified by SlackBuilds.org
# Special thanks to Ponce

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=palemoon
VERSION=${VERSION:-31.1.0}
SRCNAM1=${SRCNAM1:-Pale-Moon-${VERSION}_Release_build2}
SRCNAM2=${SRCNAM2:-UXP-RB_20220607_2}
BUILD=${BUILD:-1}
PKGTYPE=${PKGTYPE:-txz}

DOCS="AUTHORS LICENSE README.md"
DOCS_GRE="AUTHORS LEGAL SECURITY.md"

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
  echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
  exit 0
fi

TMP=${TMP:-/tmp}
PKG=$TMP/package-$PRGNAM

OBJ=${OBJ:-obj-$PRGNAM}
GTK=${GTK:-gtk2}

# You can try changing the optimization level to simply "-O2" if your processor
# doesn't support sse2 instructions.
# "-Os" might help if you experience segfaults.
OPTIMIZE=${OPTIMIZE:-"-O2 -msse2 -mfpmath=sse"}
if [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
else
  SLKCFLAGS="-O2"
  LIBDIRSUFFIX=""
fi

# look into adding this as an option:
# elif [ "$ARCH" = "x86_64" ]; then
#	  SLKCFLAGS="-O2 -D_FORTIFY_SOURCE=2 -fstack-protector --param ssp-buffer-size=4 -fPIE -pie -Wl,-z,relro,-z,now -mindirect-branch=th


# The default is to build with official branding. This SlackBuild is used to
# produce officially approved third party "contributed builds" of Pale Moon.
# This SlackBuild can also be used to produce unapproved packages -- which
# requires the use of the "new moon", or if applicable, "unstable" branding.
# In general, the "unstable" branding is intended for those building from the
# master trunck of the Pale Moon github repository.
BRANDING=${BRANDING:---enable-official-branding}
if [ "$BRANDING" = "NewMoon" ]; then
     BRANDING="--disable-official-branding --with-branding=browser/branding/unofficial"
elif
  [ "$BRANDING" = "unstable" ]; then
    BRANDING="--disable-official-branding --with-branding=other-licenses/branding/palemoon/unstable"
fi

rm -rf $PKG $TMP/gold $TMP/$OBJ
mkdir -p $TMP $PKG $TMP/gold $TMP/$OBJ

DEBUG=" --enable-strip --disable-debug --disable-debug-symbols --enable-release"
if [ "${ENABLE_DEBUG:-no}" = "yes" ]; then
  DEBUG=" --disable-strip --disable-install-strip --enable-debug --enable-debug-symbols "
  # On IA32, use gold since GNU ld runs out of memory linking libxul.so
  # when debug is turned on
  if [ "$ARCH" = "i586" -o "$ARCH" = "i686" ]; then
    echo "#!/bin/bash" >> $TMP/gold/gold
    echo "/usr/bin/ld.gold \"\$@\"" >> $TMP/gold/gold
    cp $TMP/gold/gold $TMP/gold/ld
    chmod +x $TMP/gold/*
    PATH="$TMP/gold:$PATH"
    export CC="$CC -B$TMP/gold"
    export CXX="$CXX -B$TMP/gold"
  fi
fi

set -e

# We need to use the incredibly ancient autoconf-2.13 for this  :/
# (Taken from Slackware's Firefox build Script)
cd $TMP
rm -rf autoconf-2.13
tar xvf $CWD/autoconf-2.13.tar.xz
cd autoconf-2.13
zcat $CWD/autoconf-2.13-consolidated_fixes-1.patch.gz | patch -p1 --verbose
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

# Build a temporary copy of autoconf-2.13 only to be used to compile
# Pale Moon, since it somewhat inexplicably requires this ancient version:
rm -rf $TMP/autoconf-tmp
mkdir -p $TMP/autoconf-tmp
# This will be at the beginning of the $PATH, so protect against nonsense
# happening in $TMP:
chmod 700 $TMP/autoconf-tmp
rm -rf $TMP/autoconf-tmp/*
mkdir -p $TMP/autoconf-tmp/usr

./configure \
  --prefix=$TMP/autoconf-tmp/usr \
  --program-suffix=-2.13 \
  --infodir=$TMP/autoconf-tmp/usr/info \
  --mandir=$TMP/autoconf-tmp/usr/man \
  --build=$ARCH-slackware-linux

make || make -j1
make install
PATH=$TMP/autoconf-tmp/usr/bin:$PATH

# Build Pale Moon
cd $TMP
rm -rf $SRCNAM1
tar -xvf $CWD/$SRCNAM1.tar.gz --transform="flags=r;s/pale-moon/$SRCNAM1/"
cd $SRCNAM1
rmdir platform    <--- Added
tar -xvf $CWD/$SRCNAM2.tar.gz --transform="flags=r;s/uxp/platform/"    <--- Modified here

#patch -p1 < $CWD/0001-Issue-7-Add-GCC-11-initial-support.patch   <--- We don't need this anymore

if [ "${ADNAUSEAM:-block}" = "unblock" ]; then
	patch -p1 < $CWD/adNauseam-unblock.patch
fi

chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

# Without LANG=C, building the Python environment may fail with:
# "UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 36: ordinal not in range(128)"
export LANG=C

export MOZCONFIG="$TMP/$SRCNAM1/.mozconfig"
export MOZILLA_OFFICIAL=1
export MOZ_MAKE_FLAGS=$MAKEFLAGS
export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
export BUILDING_RELEASE=1
export MOZ_ADDON_SIGNING=
export MOZ_REQUIRE_SIGNING=
export MOZ_TELEMETRY_REPORTING=
export PYTHON=/usr/bin/python2

# A stale DBUS_SESSION_BUS_ADDRESS var can cause build failures
unset DBUS_SESSION_BUS_ADDRESS

# Dev tools are enabled by default in the official binaries, so we should do the same here;
# passing DEVTOOLS=no to the script, however, will disable them.
if [ "$DEVTOOLS" = "no" ]; then
	DEVTOOLS="--disable-devtools"
else
	DEVTOOLS="--enable-devtools"
fi


# Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
# Our building options, in a configure-like display ;)
OPTIONS="\
  ${BRANDING} \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION \
  --x-libraries=/usr/lib${LIBDIRSUFFIX} \
  --enable-default-toolkit=cairo-$GTK \
  --disable-accessibility \
  $DEBUG \
  $DEVTOOLS \
  --enable-application=palemoon \
  --disable-crashreporter \
  --disable-updater \
  --disable-tests \
  --enable-jemalloc \
  --with-pthreads"

echo "mk_add_options MOZ_OBJDIR=$TMP/$OBJ" > .mozconfig

# Write in the .mozconfig the options above
for option in $OPTIONS; do echo "ac_add_options $option" >> .mozconfig; done
echo "ac_add_options --enable-optimize=\"$OPTIMIZE\"" >> .mozconfig

if ! pkg-config --exists libpulse; then
echo "ac_add_options --disable-pulseaudio" >> .mozconfig; fi

if pkg-config --exists jack && [ "${BLACKLIST_JACK:-no}" != "yes" ]; then
echo "ac_add_options --enable-jack" >> .mozconfig; fi

./mach build

## Clean up; and package Pale Moon.
DESTDIR=$PKG ./mach install
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
cd $TMP/$OBJ

cd $PKG

# We don't need these (just symlinks anyway):
rm -rf usr/lib${LIBDIRSUFFIX}/$PRGNAM-devel-$VERSION

# Avoid duplicate binaries; details: https://bugzilla.mozilla.org/show_bug.cgi?id=658850
# Pale Moon package scripts appear to attempt this, on other 'distros'; those scripts,
# however, appear to fail on Slackware.
rm -f usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/$PRGNAM-bin

# Use system provided Hunspell, if desired.
if [ "${USE_SYSTEM_HUNSPELL}" = "yes" ]; then
  rm -rfv usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/dictionaries
  cp -vsr /usr/share/hunspell usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/dictionaries
fi

# Install icons:
for PX in 16 32 48 ; do
  mkdir -p $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps
  ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/chrome/icons/default/default${PX}.png \
        $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps/$PRGNAM.png
done
# ... and the 128px icon file too:
mkdir -p $PKG/usr/share/icons/hicolor/128x128/apps
ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/icons/mozicon128.png \
      $PKG/usr/share/icons/hicolor/128x128/apps/$PRGNAM.png

mkdir -p $PKG/usr/share/applications
cat $CWD/palemoon.desktop > $PKG/usr/share/applications/$PRGNAM.desktop

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/GRE
for i in $DOCS; do
  cp  $TMP/$SRCNAM1/$i $PKG/usr/doc/$PRGNAM-$VERSION
done
for i in $DOCS_GRE; do
  cp $TMP/$SRCNAM1/platform/$i $PKG/usr/doc/$PRGNAM-$VERSION/GRE/
done

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

/sbin/makepkg -l y -c n $TMP/$PRGNAM-$VERSION-$ARCH-$BUILD.$PKGTYPE
Posting from palemoon-31.1
 
1 members found this post helpful.
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Fatdog64 710 First Compilation: Palemoon 27.0.2 Missing features.h Fatal Error Adhil Puppy 10 03-13-2017 01:08 AM
Palemoon in Slackware Current AlexSlack Slackware 14 05-01-2016 01:33 PM
Palemoon segmentation fault with Slackware-current mfgordon Slackware 10 04-16-2016 06:11 PM
What's your opinion on PaleMoon compared to Firefox? Mr. Alex Linux - Software 16 06-19-2014 02:56 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:14 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration