Closed
Bug 31287
Opened 26 years ago
Closed 26 years ago
Unable to build with --enable-boehm on Linux: mulitple definition errors in gc_cpp.cc
Categories
(SeaMonkey :: Build Config, defect, P3)
Tracking
(Not tracked)
RESOLVED
FIXED
M18
People
(Reporter: hacksaw, Assigned: beard)
Details
Attachments
(3 files)
|
1.49 KB,
text/plain
|
Details | |
|
2.78 KB,
patch
|
Details | Diff | Splinter Review | |
|
137.26 KB,
patch
|
Details | Diff | Splinter Review |
* Overview Description:
Compiling with the --enable-boehm option on gcc 2.95.2 reports 3 seperate
"multiple definition" errors in "gc_cpp.cc".
* Steps to Reproduce:
1) compile with ----enable-boehm on Linux
* Actual Results:
See attached file for a snippet of (g)make's output. In short, the following
sybols were apparently redefined: GC_push_all_stacks, GC_stop_world, and
GC_start_world.
Expected Results:
A complete build resulting in a browser that never leaks memory and saves the
world. ;-)
* Reproducibility:
I'm currently only able to test this on my Debian (Potato) GNU/Linux (2.2.13)
machine.
* Build Date & Platform Bug Found:
Mar. 7-9 CVS HEAD
* Additional Information:
The problem seems to be in generic_threads.c vs. linux_threads.c: both contain
different definitions of GC_stop_world, GC_start_world etc.
Ok, I was able to get gc/boehm to build but viewer & mozilla segfaulted in
xpcom::nsLeakDetector. I played with it some more and was able to get all of
the components registered before it segfaulted. Looking at
gc/boehm/README.linux, I'm wondering if there's not a less invasive gc we could
use. For using boehm with threads, it appears to expect you to include "gc.h"
in every file that makes a thread call. Or is that only necessary if you're
doing some sort of gc on threads? I'm guessing that would include NSPR as well.
Beard, any suggestions?
The patches have been checked in but if I understand correctly, there are still
some changes that need to be made to at least NSPR for this option to work
correctly.
> The patches have been checked in [...]
Great work! I have it running now, though for some strange reason I can't
start a second instance or restart after exiting (I had another build do this
earlier today).
>I have it running now [...]
Just an update--it's now back to segfaulting as cls described. Is there any
particular aspect of the NSPR stuff I could help look into?
The build option compiles again but some changes remain to allow gc work with
nspr on linux. Reassigning to beard as he's the one actually doing the
integration.
Assignee: cls → beard
Status: ASSIGNED → NEW
Target Milestone: --- → M16
mass re-assign of all bugs where i was listed as the qa contact
QA Contact: cyeh → chofmann
| Assignee | ||
Comment 12•26 years ago
|
||
Wade Hennessey is working on this, and it's almost ready. Nominating for beta3
checkin. This code will go in under #ifdef, so it's safe.
Keywords: nsbeta3
| Assignee | ||
Comment 13•26 years ago
|
||
I think we can close this bug now, given wade's recent checkins.
Status: ASSIGNED → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
Updated•21 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•