5 ms·
What's the C++ support like?
by problems 9y ago
What's the C++ support like?
- egraether 9y agoSourcetrail developer here: Pretty solid. We use clang libTooling.
- gigatexal 9y agoC# support would be cool too!
- malnourish 9y agoHow's the performance on a large codebase? North of 500k lines, few thousand cpp/h files, 40+mb
- nebucnaut 9y agoWe have been working on that for the past few month. Right now the performance is pretty good for C++ projects up to around 2 million lines of code. For C projects the performance is even better! If you want to test it, just download the pre-indexed clang project (900k loc) from our website (https://www.sourcetrail.com/downloads#extra https://www.sourcetrail.com/downloads#extra). Indexing the project took 12 minutes on a 5 year old laptop.
- malnourish 9y agoReally great news! I think I'll give this a demo when I have some capacity. Thanks
- davidshepherd7 9y agoI tried it on a fairly big repo today (~500k loc) and once it was done with the initial processing performance was fine.
- rasjani 9y agoCompile commands ? Please Yes?
- nebucnaut 9y agoYes, we support Compile Commands :)
- jschwartzi 9y agoThere is also a tool called Bear which will generate compile commands from Make-based builds, in case you were wondering. I've used it with some success. https://github.com/rizsotto/Bear https://github.com/rizsotto/Bear
- rasjani 9y agoIm well aware of bear. Works fine in some cases, not so well in others. Author is also doing scan-build replacement in python which imho is far superior to bear.
- voltagex_ 9y agoWhat are compile commands?
- nebucnaut 9y agoA Compile Command is a JSON file entry that specifies what the C/C++ compiler should do when compiling a file. So it defines a file to compile and all the required flags (like include paths or preprocessor defines). These Compile Commands are used for all kind of Clang based tools. You can read more here: https://clang.llvm.org/docs/JSONCompilationDatabase.html https://clang.llvm.org/docs/JSONCompilationDatabase.html