One Firefox runtime works on all GNU/Linux distributions (per architecture)

RESOLVED WORKSFORME

Status

RESOLVED WORKSFORME
13 years ago
19 days ago

People

(Reporter: gk4, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

13 years ago
User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5

Regardless of how Firefox is installed, it should be able to run on any GNU/Linux distribution (ie,. Fedora, OpenSuSE, RHEL, SLES, NLD, Debian, ...); however, this is difficult because of the differing levels of C++ libraries provided on these systems.  Historically, the C++ ABI on Linux has been unstable and the Linux distros must provide compatibility packages.  This can be resolved by the application at build time when using ABI techniques described by the LSB.
http://researchweb.watson.ibm.com/journal/sj/442/yeoh.pdf
http://www-128.ibm.com/developerworks/library/l-lsb.html
http://www.linuxbase.org/test/registered.html

Reproducible: Always

Comment 1

13 years ago
Sounds like we should just ditch the libstdc++ dependency.
Sounds a bit of a big job, but confirming. :P
Status: UNCONFIRMED → NEW
Ever confirmed: true

Comment 3

13 years ago
Ditching libstdc++ is trivial: other dependencies aren't quite so trivial, but at leadst aren't dependent on the c++ abi.
(Reporter)

Comment 4

13 years ago
The desire is to build Firefox with the lsbcc wrapper script to link it to well a well defined level of the library ABIs.  You should use lsbcc instead of gcc in your makefiles.  LSB Desktop 3.1 is coming out this March.  You should go with those ABI definitions.  Please refer to the referenced URLs.

Comment 5

13 years ago
Are you proposing that we do this for the official binary builds, or simply support it in the build system? Have you tried building with LSB already (by setting CC/CXX in the environment or using the chroot script)?

I'm having trouble finding important details about what LSB actually specifies: does it include GTK2 and pango? If we do runtime detection of optional libs such as dbus/libgnomeui does that affect certification?

From what I have seen, the the only significant advantage of the LSB scripts over our existing build mechanisms is that we could build backwards-compatible binaries on new OSes, instead of using the least-common-denominator OS to produce our release packages.
(Reporter)

Comment 6

13 years ago
The LSB would be the virtual LCD OS.

See chapter 10 of the LSB Desktop 3.1 for the current scope of the desktop portion of the specification.

http://ftp.freestandards.org/~mats/rcbooks/LSB-Desktop-generic/LSB-Desktop-generic.html




glandium: as a Linux packaging guru, what are your thoughts on keeping this bug open?
Flags: needinfo?(mh+mozilla)
We're already ensuring Firefox works across the most common distros. See the compatibility matrix https://developer.mozilla.org/en-US/docs/Linux_Compatibility_Matrix
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Flags: needinfo?(mh+mozilla)
Resolution: --- → WORKSFORME
Component: Build Config → General
Product: Firefox → Firefox Build System
You need to log in before you can comment on or make changes to this bug.