sas / clang-cache Goto Github PK
View Code? Open in Web Editor NEWClang caching daemon
License: BSD 3-Clause "New" or "Revised" License
Clang caching daemon
License: BSD 3-Clause "New" or "Revised" License
This issue does not happen when we run clang-cache in foreground mode (with -f
). Basically, the daemon is unable to do anything after the first client connects to send a compilation. Even sending a SIGTERM does not kill it.
It seems like clang-cache can compile single single files successfully, but when many instances are created in rapid succession, clang-cache deadlocks.
I see this when self-hosting/compiling llvm and clang 3.5.0. The cmake compiler tests hang. if I compile the test files "by hand" the compile is successful.
clang-cache is setup via environment variables:
export CXX="clang-cache -c clang++ --"
export CC="clang-cache -c clang --"
Then,
cd llvm-build
cmake ../llvm # <-- hangs!
clang-cache eats 100% CPU and does nothing. Looks like a dead/live-lock to me.
I compiled clang-cache from source on linux, Ubuntu 14.04.1 LTS .
Thrift compiled from source: git ce36aac
./configure --prefix=/usr/local/thrift --without-java --without-python
The latest thrift realease doesn't seem to compile with clang 3.5.0.
clang-cache git 0e02d7f
clang and llvm 3.5.0
Launch clang-cache with:
./src/clang-cache -c g++ -- `pkg-config --cflags thrift` -std=c++11 -pedantic -Wall -Wextra -Werror -I../src/daemon -Isrc/daemon -I../src -Isrc -MMD -o src/daemon/server/server.o -c ../src/daemon/server/server.cpp
Then edit the server.cpp file, goto line 43, and press ctrl+K on utils::sock_path(), the cursor will jump on line 18.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.