[webkit-dev] What is WebCore.order used for?
Maciej Stachowiak
mjs at apple.com
Sun Jun 28 16:14:10 PDT 2009
On Jun 28, 2009, at 3:26 PM, Drew Wilson wrote:
> I'm adding the initial APIs for SharedWorkers, which require me to
> add a couple of .idl files, as well as implementations in WebCore/
> workers and JS bindings in bindings/js.
>
> I'm getting a bunch of weird link errors which I haven't figured out:
>
>
> "__ZN7WebCore23JSSharedWorkerPrototype4selfEPN3JSC9ExecStateEPNS1_14JSGlobalObjectE
> ", referenced from:
>
> __ZN7WebCore25JSSharedWorkerConstructorC1EPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectE
> in JSSharedWorkerConstructor.o
>
> __ZN7WebCore25JSSharedWorkerConstructorC2EPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectE
> in JSSharedWorkerConstructor.o
>
> I note that there are a number of Worker symbols in WebCore.order,
> and I'm wondering if I might need to add SharedWorker symbols in
> there as well - is there any documentation for what WebCore.order is
> used for, and when/how to update it?
Others have explained that these errors are likely not from the .order
file. I don't think they relate to exports either. Exports would only
be relevant if an external module linking to WebCore was failing to
resolve the symbol, or if the .exp file was cited as referencing a
missing symbol.
It seems like the cited symbol is simply missing at link time, either
because a file is missing from the build or because the code generator
failed to produce the required definition. Specifically, it's
complaining that this function is missing:
WebCore::JSSharedWorkerPrototype::self(JSC::ExecState*,
JSC::JSGlobalObject*)
And it's called from this function:
WebCore
::JSSharedWorkerConstructor
::JSSharedWorkerConstructor(JSC::ExecState*,
WebCore::JSDOMGlobalObject*)
I found this out using c++filt.
My guess is you may have forgotten to add the autogenerated bindings
files to the build, so the handwritten parts of the bindings find the
headers but can't resolve the symbols at link time.
Regards,
Maciej
More information about the webkit-dev
mailing list