Status: Untriaged
Owner: ----
Priority: Medium
Type: Defect
New issue 14636 by hinta...@
gmail.com: m116 coponent+svg build, svg modules uses non-public symbols
https://bugs.chromium.org/p/skia/issues/detail?id=14636What steps will reproduce the problem?
component build with svg module enabled (I know you don't really support component build, nor new modules...):
bin/gn ... --args='is_official_build=true is_component_build=true skia_enable_svg=true ...'
build is fine, but when trying to use for linking applications, the svg module invokes non-public symbols in libskia:
===
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::~SkDOM()'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkTextBlobRunIterator::SkTextBlobRunIterator(SkTextBlob const*)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::getFirstChild(SkDOMNode const*, char const*) const'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::getName(SkDOMNode const*) const'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkOSPath::Basename(char const*)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::AttrIter::next(char const**)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::getType(SkDOMNode const*) const'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::AttrIter::AttrIter(SkDOM const&, SkDOMNode const*)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::build(SkStream&)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkStrSearch(char const* const*, int, char const*, unsigned long)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkOSPath::Dirname(char const*)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDebugf(char const*, ...)'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::getNextSibling(SkDOMNode const*, char const*) const'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkTextBlobRunIterator::next()'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::SkDOM()'
/usr/bin/ld: /tmp/ft2-demos/skia/out/Shared//libsvg.so: undefined reference to `SkDOM::getRootNode() const'
clang-16: error: linker command failed with exit code 1 (use -v to see invocation)
===
These are all non-public symbols inside libskia, which are therefore available in non-component builds.
What is the expected output? What do you see instead?
linking should complete without symbol resolution problems
What version of the product are you using? On what operating system?
m116, linux x86_64
Please submit a code sample via
fiddle.skia.org showing the issue.
The code is posted to freetype-devel as part of the new OT-SVG hook bridge.
Provide any additional information below.
Of course a static build works, but with 6 binaries depending on the new hook bridge, the size increases from 13MB to 160 MB!
--
You received this message because:
1. The project was configured to send all issue notifications to this address
You may adjust your notification preferences at:
https://bugs.chromium.org/hosting/settings