New issue
Advanced search Search tips

Issue 874241 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 873201
Owner: ----
Closed: Aug 15
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug
Build-Toolchain



Sign in to add a comment

swiftshader compile fail on chromeos due to basic_string

Project Member Reported by dongseon...@intel.com, Aug 14

Issue description

ChromeOS browser simple build fails due to swiftshader
I follow https://chromium.googlesource.com/chromiumos/docs/+/master/simple_chrome_workflow.md

[290/20971] SOLINK swiftshader/libGLESv2.so
FAILED: swiftshader/libGLESv2.so swiftshader/libGLESv2.so.TOC 
python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="x86_64-cros-linux-gnu-nm" --sofile="swiftshader/libGLESv2.so" --tocfile="swiftshader/libGLESv2.so.TOC" --output="swiftshader/libGLESv2.so"  -- x86_64-cros-linux-gnu-clang++ -B/home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/x86_64-pc-linux-gnu/x86_64-cros-linux-gnu/binutils-bin/2.27.0-gold -Wno-unknown-warning-option -shared -Wl,--version-script=../../third_party/swiftshader/src/OpenGL/libGLESv2/libGLESv2.lds -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -fuse-ld=gold -B../../third_party/binutils/Linux_x64/Release/bin -Wl,--threads -Wl,--thread-count=4 -Wl,--icf=all -m64 -Wl,-O2 -Wl,--gc-sections -Wl,--gdb-index --sysroot=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/x86_64-cros-linux-gnu/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/x86_64-cros-linux-gnu/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/llvm/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/llvm/lib64 -Wl,--hash-style=both -Wl,--gc-sections -Wl,-O1 -Wl,-O2 -Wl,--as-needed -stdlib=libc++ -o "swiftshader/libGLESv2.so" -Wl,-soname="libGLESv2.so" @"swiftshader/libGLESv2.so.rsp"
../../third_party/swiftshader/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp:51: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
../../third_party/swiftshader/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp:52: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
../../third_party/swiftshader/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp:53: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
../../third_party/swiftshader/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp:54: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
 
Hi Dongseong, I've never had this issue locally, unfortunately. Is it just a missing "#include <string>" at the top of third_party/swiftshader/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp or is it a deeper issue? Could you double-check in your setup, please? Thanks.
Cc: capn@chromium.org
Cc: kylec...@chromium.org
CCing kylechar@. Hi Kyle, are you able to reproduce this issue locally? Thanks.

I can reproduce it in the following way

> cros chrome-sdk --board=amd64-generic --nogoma --clang
$ autoninja -C out_amd64-generic/Release/ chrome 

Here's verbose log with -v option
(sdk amd64-generic *R70-10957.0.0-rc2) dshwang@dshwang-xeon ~/chromium/src/out_amd64-generic/Release $ python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="x86_64-cros-linux-gnu-nm" --sofile="swiftshader/libGLESv2.so" --tocfile="swiftshader/libGLESv2.so.TOC" --output="swiftshader/libGLESv2.so"  -- x86_64-cros-linux-gnu-clang++ -B/home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/x86_64-pc-linux-gnu/x86_64-cros-linux-gnu/binutils-bin/2.27.0-gold -v -Wno-unknown-warning-option -shared -Wl,--version-script=../../third_party/swiftshader/src/OpenGL/libGLESv2/libGLESv2.lds -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -fuse-ld=gold -B../../third_party/binutils/Linux_x64/Release/bin -Wl,--threads -Wl,--thread-count=4 -Wl,--icf=all -m64 -Wl,-O2 -Wl,--gc-sections -Wl,--gdb-index --sysroot=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/x86_64-cros-linux-gnu/lib -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/x86_64-cros-linux-gnu/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/llvm/lib64 -Wl,-rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/llvm/lib64 -Wl,--hash-style=both -Wl,--gc-sections -Wl,-O1 -Wl,-O2 -Wl,--as-needed -stdlib=libc++ -o "swiftshader/libGLESv2.so" -Wl,-soname="libGLESv2.so" @"swiftshader/libGLESv2.so.rsp"
Chromium OS 7.0_pre333878_p20180808-r1 clang version 7.0.0 (/var/cache/chromeos-cache/distfiles/host/egit-src/clang.git 38ad3c9160e5814ec8cad29a990cf76730c5f20e) (/var/cache/chromeos-cache/distfiles/host/egit-src/llvm.git 40c66c3d40377cf85640b3a35e6ec5c5b1cbc41f) (based on LLVM 7.0.0svn)
Target: x86_64-cros-linux-gnu
Thread model: posix
InstalledDir: /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin
Found candidate GCC installation: /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x
Selected GCC installation: /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x
Candidate multilib: .;@m64
Selected multilib: .;@m64
 "/home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/x86_64-pc-linux-gnu/x86_64-cros-linux-gnu/binutils-bin/2.27.0-gold/ld.gold" --sysroot=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic -z relro --hash-style=gnu --build-id --eh-frame-hdr -m elf_x86_64 -shared -o swiftshader/libGLESv2.so ../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/../lib64/crti.o /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x/crtbeginS.o -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/x86_64-cros-linux-gnu/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/llvm/lib64 -L/home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x -L/home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x/../../../../x86_64-cros-linux-gnu/lib/../lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib/../lib64 -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/../lib64 -L/home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x/../../../../x86_64-cros-linux-gnu/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -L../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib --version-script=../../third_party/swiftshader/src/OpenGL/libGLESv2/libGLESv2.lds --fatal-warnings -z noexecstack -z now -z relro -z defs --as-needed --threads --thread-count=4 --icf=all -O2 --gc-sections --gdb-index -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib64 -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib64 -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib64 -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/lib -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/local/lib -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/x86_64-cros-linux-gnu/lib -rpath-link=../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/llvm/lib64 --hash-style=both --gc-sections -O1 -O2 --as-needed -soname=libGLESv2.so --whole-archive obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2/entry_points.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/AnalyzeCallDepth.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/Compiler.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/Diagnostics.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/DirectiveHandler.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/InfoSink.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/Initialize.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/InitializeParseContext.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/IntermTraverse.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/Intermediate.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/OutputASM.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/ParseHelper.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/PoolAlloc.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/SymbolTable.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/TranslatorASM.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/ValidateLimitations.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/ValidateSwitch.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/debug.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/glslang_lex.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/glslang_tab.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/intermOut.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/parseConst.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/util.o obj/third_party/swiftshader/src/OpenGL/compiler/swiftshader_opengl_compiler/ossource_posix.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/DiagnosticsBase.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/DirectiveHandlerBase.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/DirectiveParser.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/ExpressionParser.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/Input.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/Lexer.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/Macro.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/MacroExpander.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/Preprocessor.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/Token.o obj/third_party/swiftshader/src/OpenGL/compiler/preprocessor/swiftshader_opengl_preprocessor/Tokenizer.o obj/third_party/swiftshader/src/Reactor/swiftshader_reactor/Routine.o obj/third_party/swiftshader/src/Reactor/swiftshader_reactor/Optimizer.o obj/third_party/swiftshader/src/Reactor/swiftshader_reactor/SubzeroReactor.o obj/third_party/swiftshader/src/OpenGL/common/swiftshader_opengl_common/Image.o obj/third_party/swiftshader/src/OpenGL/common/swiftshader_opengl_common/MatrixStack.o obj/third_party/swiftshader/src/OpenGL/common/swiftshader_opengl_common/Object.o obj/third_party/swiftshader/src/OpenGL/common/swiftshader_opengl_common/debug.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceAssembler.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceCfg.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceCfgNode.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceClFlags.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceELFObjectWriter.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceELFSection.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceFixups.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceGlobalContext.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceGlobalInits.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceInst.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceInstrumentation.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceIntrinsics.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceLiveness.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceLoopAnalyzer.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceMangling.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceMemory.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceOperand.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceRNG.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceRangeSpec.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceRegAlloc.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceRevision.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceSwitchLowering.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceTargetLowering.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceTargetLoweringX86.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceThreading.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceTimerTree.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceTypes.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceVariableSplitting.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/ItaniumDemangle.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/APInt.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Atomic.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/CommandLine.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/ConvertUTF.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/ConvertUTFWrapper.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Debug.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Errno.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/ErrorHandling.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/FoldingSet.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Hashing.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Host.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/ManagedStatic.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/MemoryBuffer.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Mutex.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/NativeFormatting.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Path.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Process.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Program.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Regex.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Signals.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/SmallPtrSet.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/SmallVector.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/StringExtras.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/StringMap.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/StringRef.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/StringSaver.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/TargetParser.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Threading.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Timer.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Triple.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/Twine.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/circular_raw_ostream.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/raw_os_ostream.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/raw_ostream.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/regcomp.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/regerror.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/regexec.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/regfree.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/regstrlcpy.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceInstX8664.o obj/third_party/swiftshader/src/Reactor/swiftshader_subzero/IceTargetLoweringX8664.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Blitter.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Clipper.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Color.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Context.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/ETC_Decoder.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Matrix.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/PixelProcessor.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Plane.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Point.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/QuadRasterizer.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Renderer.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Sampler.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/SetupProcessor.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Surface.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/TextureStage.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/Vector.o obj/third_party/swiftshader/src/Renderer/swiftshader_renderer/VertexProcessor.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/Constants.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/PixelPipeline.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/PixelProgram.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/PixelRoutine.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/PixelShader.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/SamplerCore.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/SetupRoutine.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/Shader.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/ShaderCore.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/VertexPipeline.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/VertexProgram.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/VertexRoutine.o obj/third_party/swiftshader/src/Shader/swiftshader_shader/VertexShader.o obj/third_party/swiftshader/src/Main/swiftshader_main/Config.o obj/third_party/swiftshader/src/Main/swiftshader_main/FrameBuffer.o obj/third_party/swiftshader/src/Main/swiftshader_main/SwiftConfig.o obj/third_party/swiftshader/src/Main/swiftshader_main/FrameBufferOzone.o obj/third_party/swiftshader/src/Common/swiftshader_common/CPUID.o obj/third_party/swiftshader/src/Common/swiftshader_common/Configurator.o obj/third_party/swiftshader/src/Common/swiftshader_common/Debug.o obj/third_party/swiftshader/src/Common/swiftshader_common/Half.o obj/third_party/swiftshader/src/Common/swiftshader_common/Math.o obj/third_party/swiftshader/src/Common/swiftshader_common/Memory.o obj/third_party/swiftshader/src/Common/swiftshader_common/Resource.o obj/third_party/swiftshader/src/Common/swiftshader_common/Socket.o obj/third_party/swiftshader/src/Common/swiftshader_common/Thread.o obj/third_party/swiftshader/src/Common/swiftshader_common/Timer.o obj/third_party/swiftshader/src/OpenGL/libGLESv2/libswiftshader_libGLESv2_static.a --no-whole-archive -ldl -lpthread -lrt -lc++ -lm /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/lib64/clang/7.0.0/lib/linux/libclang_rt.builtins-x86_64.a -lgcc_eh -lc /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/lib64/clang/7.0.0/lib/linux/libclang_rt.builtins-x86_64.a -lgcc_eh /home/dshwang/chromium/src/build/cros_cache/chrome-sdk/tarballs/amd64-generic+10960.0.0+target_toolchain/usr/bin/../lib/gcc/x86_64-cros-linux-gnu/4.9.x/crtendS.o ../../../../../../media/sdc/workspacec/chromiumos/chroot/build/amd64-generic/usr/lib/../lib64/crtn.o
../../third_party/swiftshader/src/OpenGL/compiler/DirectiveHandler.cpp:60: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
../../third_party/swiftshader/src/OpenGL/compiler/DirectiveHandler.cpp:61: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
../../third_party/swiftshader/src/OpenGL/compiler/DirectiveHandler.cpp:62: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
../../third_party/swiftshader/src/OpenGL/compiler/DirectiveHandler.cpp:63: error: undefined reference to 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()'
clang-7: error: linker command failed with exit code 1 (use -v to see invocation)

by the way, it's link fail. #include is fine.
DirectiveHandler.o doesn't have std::string descturctor impl for some reasons.

I just tried it locally, repro steps from #4 don't cause any issues, it compiles fine. I think you have a problem with your build environment? Is your .gclient setup for Chrome OS builds and have you run gclient sync?
Cc: vapier@chromium.org
Components: -Internals>GPU>SwiftShader Infra>Client>ChromeOS>Build
+vapier

Sorry for confusing. Now I think it's chromeos toolchain issue rather than swiftshader.

How to reproduce it
1. build chromeos image using cros_sdk with --board=amd64_generic USE=clang
2. build chromium browser in simple chrome workflow with --chroot option
https://chromium.googlesource.com/chromiumos/docs/+show/master/simple_chrome_workflow.md#504
in my case,
cros chrome-sdk --board=amd64-generic --nogoma --clang --gn-extra-args='proprietary_codecs=true ffmpeg_branding="Chrome"' --chroot=/home/dshwang/chromiumos/chroot

I think std library is somehow incompatible between cros_sdk and cros chrome-sdk environment.

Components: -Infra>Client>ChromeOS>Build Tools>ChromeOS-Toolchain
you should blow away your out/ directories and rebuild from scratch.  there seems to have been a libc++ ABI-incompatible change deployed.
Mergedinto: 873201
Status: Duplicate (was: Untriaged)
please see  Issue 873201 

Sign in to add a comment