arm-gtest
Bear
arm-gtest | Bear | |
---|---|---|
3 | 50 | |
3 | 4,510 | |
- | - | |
1.7 | 5.7 | |
11 months ago | 3 days ago | |
C++ | C++ | |
- | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
arm-gtest
-
Makefile versus CMake build system
The learning curve is really not as steep as it may seem. Using Cmake actually makes the whole build process a lot easier and much more modular allowing you to easily swap in/out different components by including different cmake files or not. I made an example repo not so long ago that demonstrates this: link.
-
TDD and CI -- How do you do it?
A few days ago I posted my sample project which uses the cmake approach for this. As u\embeddedartistry mentioned two output directories are configured, one for native compilation (unit test) and one for cross-compilation (target binaries etc.). I just created a small script that builds both targets with a single command and I find it very pleasant to work with so far. All with a single command you can: build unit tests, run the unit tests, build target binaries and flash binaries onto the target. You can also only run the tests or only flash of course. Essentially it contains different cmake files for each target which are included in the main cmake file so it's easy to swap in/out different libraries or targets.
-
ARM TDD development sample project
https://github.com/tomasvr/arm-gtest Hey everyone, a while back I started learning about TDD and how it can be applied to embedded projects (book). I created a sample project which sets up the necessary environment and automates most of the boring stuff so that you can run unit tests natively and flash the target hardware with a single command. By default, the repository is configured for the stm32f1 (blackpill) MCU but it can be configured for other ARM-based MCU supported by libopencm3 as described in the readme. I hope it can be of use to someone!
Bear
-
emacs lsp-mode with MPLAB X project
Have you tried Bear? I used it for several projects and overall it works very well.
-
Eglot + clangd not working for NetHack code base
An update: I am now able to make everything work by generating `compile_commands.json` using compiledb. I'm aware that there is another tool Bear but for some reason it generates an empty `compile_commands.json` file for me.
-
I have an existing legacy build system. How do I leverage this with CLion to index my project?
Try https://github.com/rizsotto/Bear
-
New User C Setup Help?
Regarding the libraries, you might need to add it to clangd’s configuration. A convenient way is to have a compile_commands.json in your project (this is generated by some build tools like CMake, but if you don’t use them, have a look at bear).
-
vscode alternative for C++ on M1 mac?
Note that you need to have a compile_commands.json file. That file can easily be generated by CMake, Meson, etc. For other build systems checkout Bear https://github.com/rizsotto/Bear
-
I hope that cscope can make a comeback in the versions after 0.9
make a 'gcc' command/executable that do nothing and make it first in your PATH and then run bear with make: https://github.com/rizsotto/Bear/issues/219 It is unfortunate that bear doesn't catch the output of the make command with '--dry-run' as it still prints the compile commands, it seems not that hard to support this and I think many ppl would benefit..
-
CLion 2023.1 released
You could try to start with Bear: https://github.com/rizsotto/Bear In worst cases, I had to use strace to catch every gcc/g++ invocation and restructure the compile_commands.json out of the strace logs.
-
Is CMake necessary to set up a C++ "IDE" in neovim?
But it sounds like maybe you’re assuming for the purposes of using something like clangd (highly recommended for coding in cpp projects in general, you want to be using this in vscode or whatever else anyway, codelion notwithstanding I suppose) with neovim on a c++ project that you have to use cmake to produce a compilation database to use with neovim plugins (e.g. clangd via nvim-lsp et. al.). In this case, be aware that the https://github.com/rizsotto/Bear tool is a handy way to just tack it on to whatever command you’re using to run a c++ code build step, and it will give you a compile_commands.json, corresponding to the compiler commands it invoked, on a silver platter.
-
Makefile versus CMake build system
I guess your questionmarks are about installing "bear", he refers to this project: https://github.com/rizsotto/Bear
-
how to use .clang-format with lunarvim ?
You just simply go to the root of your project, use bear and just open your C files. That's all.
What are some alternatives?
areg-sdk - AREG is an asynchronous Object RPC framework to simplify multitasking programming by blurring borders between processes and treating remote objects as if they coexist in the same thread.
compiledb - Tool for generating Clang's JSON Compilation Database files for make-based build systems.
vscode-cpptools - Official repository for the Microsoft C/C++ extension for VS Code.
NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.
scan-build - Clang's scan-build re-implementation in python
coc-clangd - clangd extension for coc.nvim
clangd - clangd language server
ccls - C/C++/ObjC language server supporting cross references, hierarchies, completion and semantic highlighting
vscode-cmake-tools - CMake integration in Visual Studio Code
doom-nvim - A Neovim configuration for the advanced martian hacker [Moved to: https://github.com/doom-neovim/doom-nvim]
ClangBuildAnalyzer - Clang build analysis tool using -ftime-trace
CliWrap - Library for running command-line processes