mirror of
https://github.com/MaskRay/ccls.git
synced 2025-06-07 16:54:54 +00:00
A few notes in the readme
This commit is contained in:
parent
d136012fab
commit
2a204bcaf8
22
README.md
22
README.md
@ -3,7 +3,7 @@
|
||||
[](https://telegram.me/cclsp)
|
||||
[](https://gitter.im/ccls-project/ccls)
|
||||
|
||||
ccls, which originates from [cquery](https://github.com/cquery-project/cquery), is a C/C++/Objective-C language server.
|
||||
This is a temporary fork of ccls with experimental CUDA support. `ccls` originates from [cquery](https://github.com/cquery-project/cquery), is a C/C++/Objective-C language server.
|
||||
|
||||
* code completion (with both signature help and snippets)
|
||||
* [definition](src/messages/textDocument_definition.cc)/[references](src/messages/textDocument_references.cc), and other cross references
|
||||
@ -17,6 +17,26 @@ ccls, which originates from [cquery](https://github.com/cquery-project/cquery),
|
||||
* semantic highlighting and preprocessor skipped regions
|
||||
* semantic navigation: `$ccls/navigate`
|
||||
|
||||
## CUDA quickstart
|
||||
|
||||
Your `.ccls` configuration should look something like:
|
||||
```
|
||||
%compile_commands.json
|
||||
%cu --cuda-gpu-arch=sm_70
|
||||
%cu --cuda-path=/usr/local/cuda-9.2/
|
||||
```
|
||||
This fork changes the compile commands from the `compile_commands.json` file that look like:
|
||||
|
||||
/usr/local/cuda/bin/nvcc -ccbin=gcc-6 -I../src -I../external/cutlass -I../external/cub -isystem=../external/googletest/googletest/include -Xcompiler -fopenmp --expt-extended-lambda --std=c++11 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_70,code=compute_70 -g -x cu -c /home/max/dev/cuml/ml-prims/test/add.cu -o test/CMakeFiles/mlcommon_test.dir/add.cu.o && /usr/local/cuda/bin/nvcc -ccbin=gcc-6 -I../src -I../external/cutlass -I../external/cub -isystem=../external/googletest/googletest/include -Xcompiler -fopenmp --expt-extended-lambda --std=c++11 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_70,code=compute_70 -g -x cu -M /home/max/dev/cuml/ml-prims/test/add.cu -MT test/CMakeFiles/mlcommon_test.dir/add.cu.o -o $DEP_FILE
|
||||
|
||||
To something more like:
|
||||
|
||||
clang -I../src -I../external/cutlass -I../external/cub -isystem=../external/googletest/googletest/include --std=c++11 --cuda-gpu-arch=sm_70 --cuda-path=/usr/local/cuda-9.2/ -c add.cu
|
||||
|
||||
In other words, it whitelists includes (`-I`) and c++ standard flags, but ignores all the `nvcc` switches that `clang` doesn't understand. Note that clang understands CUDA files by default.
|
||||
|
||||
## General Info
|
||||
|
||||
It has a global view of the code base and support a lot of cross reference features, see [wiki/FAQ](../../wiki/FAQ).
|
||||
It starts indexing the whole project (including subprojects if exist) parallelly when you open the first file, while the main thread can serve requests before the indexing is complete.
|
||||
Saving files will incrementally update the index.
|
||||
|
Loading…
Reference in New Issue
Block a user