Closed Bug 1523056 Opened 5 years ago Closed 5 years ago

Cannot open shared libmozsandbox.so when launching firefox built with different versions of clang and llvm-objdump

Categories

(Firefox Build System :: General, defect)

Desktop
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: TYLin, Unassigned)

References

Details

(Keywords: regression)

I'm on mozilla-central https://hg.mozilla.org/mozilla-central/rev/e4b9b1084292

After building on Linux, I got the following error when launching firefox.

$./mach run
 0:00.10 /home/aethanyc/Projects/gecko-dev/obj-firefox/dist/bin/firefox -no-remote -profile /home/aethanyc/Projects/gecko-dev/obj-firefox/tmp/profile-default
XPCOMGlueLoad error for file /home/aethanyc/Projects/gecko-dev/obj-firefox/dist/bin/libxul.so:
libmozsandbox.so: cannot open shared object file: No such file or directory
Couldn't load XPCOM.

Reverting "Bug 1516228 - Use llvm-objdump for ELF in dependentlibs.py, too." and rebuilding fixed the issue for me. https://hg.mozilla.org/integration/autoland/rev/53d93ee3ad84

FWIW, I have the following in my mozconfig.

ac_add_options --enable-debug
ac_add_options --disable-optimize

and I install llvm 6.0 for llvm-objdump.

Flags: needinfo?(mh+mozilla)

I have seen this on both opt and debug builds even after running bootstrap and clobber. It seems like a regression from Bug 1516228 would be the right timeline since my last successful local build too.

I have the same problem after pulling an update, on opt, with and without clobber. Fedora 28

Pretty sure the problem here is that we're using different versions of clang and llvm-objdump. On my system in .mozconfig I have set CC and CXX to clang-7 and clang++-7 which are installed in /usr/bin but we're using /usr/bin/llvm-objdump which is version 6.

Adding |export LLVM_OBJDUMP=llvm-objdump-7| to my mozconfig fixes the issue.

Summary: Cannot open shared libmozsandbox.so when launching debug firefox → Cannot open shared libmozsandbox.so when launching firefox built with different versions of clang and llvm-objdump

So, the problem is not exactly the version discrepancy ; that doesn't actually matter... what matters is that llvm-objdump only shows the contents of the .dynamic section starting from version 7 :(

Anyways, this bug is fixed by the backout.

Status: NEW → RESOLVED
Closed: 5 years ago
Flags: needinfo?(mh+mozilla)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.