cxx-static-shared-example
FunctionalPlus
cxx-static-shared-example | FunctionalPlus | |
---|---|---|
12 | 10 | |
32 | 2,006 | |
- | - | |
0.0 | 7.7 | |
over 2 years ago | 19 days ago | |
CMake | C++ | |
- | Boost Software License 1.0 |
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.
cxx-static-shared-example
-
How does one just "create a library, package, or tool" ?
Anyone can create a library using cmake-init. This example goes into a little more detail and while it's for C++, the very same things apply sans a single target property on the library.
-
CMake template for C++ library (static/shared & Windows/Linux) project
Thanks, I noticed a project friendlyanon/cxx-static-shared-example that have feature I didn't used.
-
how can I make a dynamic library using cmake?
https://github.com/friendlyanon/cxx-static-shared-example explains how to do libraries correctly, https://github.com/friendlyanon/cmake-init gives you a template that's ready to go. If something is not clear, ask away.
-
Beginner Question: How do I link a shared library (DLL) with my game's executable?
Here is an example going deeper into how to create a shared library using CMake: https://github.com/friendlyanon/cxx-static-shared-example You'd have to do these regardless of CMake, this just shows how to do it with it.
-
A comprehensive resource for making libraries?
This example is more focused on explaining on the what and why.
-
CPack builds too much
Or if you are also packaging .deb then you're going to need a toolchain anyway, you can put these variables there as well.
-
I am trying to replace CMake with c++
To learn how to write a CML that is ideally written to be easy for both consumers building the library, developers developing the library and consumers vendoring the library via add_subdirectory (which will be a very very important thing to do in the near future), please check out this educational example repository https://github.com/friendlyanon/cxx-static-shared-example
-
Ive created a github repo showcasing modern, target based, cmake projects
This repo will show you how to make your project CML for an easy to (re)use library that supports packaging.
-
Nuke for C++
CMake's what you want. You need to know how separation of concerns applies when it comes the lists files. Resources in general suck, the CMake docs are not really discoverable, but are very good otherwise. You can get a handle of how things are supposed to be put together here.
-
CLion IDE
cxx-static-shared-example - 50 lines for requirements + however many for sources + 60 for install rules: now this is a library that builds some artifacts. Still extremely simple and straightforward.
FunctionalPlus
-
Leaving Haskell Behind
Hoogle is really amazing!
Inspired by it, I implemented something similar for FunctionalPlus (a functional-programming library for C++): https://www.editgym.com/fplus-api-search/
I'd love to see more projects taking this path too. :)
-
C++ algorithm helpers - kdalgorithms
You can get a feel for it on its api search site: as an example, enter these queries:
-
C++20 Ranges The Key Advantage - Algorithm Composition
I use a library called FunctionalPlus daily.
-
Why C++ for everything?
As idiomatic, I will try to adopt as much as possible purely functional programming in C++ by using https://github.com/Dobiasd/FunctionalPlus . Do you have by any chance any alternative suggestion?
-
Building a Dual Shared and Static Library with CMake
Any project CML file that is more complex than this is mismanaged and needs fixing asap. There is absolutely no reason to make CML files describing requirements of a library substantially more complex other than if you have a vendetta against yourself, package maintainers and your users.
-
CLion IDE
FunctionalPlus - 30 lines for usage requirements + 60 for install rules: just simple commands creating a target, setting properties and defining install rules. Hmm, nothing unholy here.
-
Integrating sanitizers into your CI workflow
Another option is to use a superbuild CML where you can do all the nasty, platform specific things. Example of a superbuild CML.
-
Best practice unit tests + examples with cmake
You can copy this project structure: https://github.com/Dobiasd/FunctionalPlus
- CMake and the Future of C++ Package Management
What are some alternatives?
Sharpmake - Sharpmake is an open-source C#-based solution for generating project definition files, such as Visual Studio projects and solutions, GNU makefiles, Xcode projects, etc.
C++ B-tree - Git mirror of the official (mercurial) repository of cpp-btree
meson - The Meson Build System
v8pp - Bind C++ functions and classes into V8 JavaScript engine
ccls - C/C++/ObjC language server supporting cross references, hierarchies, completion and semantic highlighting
dynamic_bitset - Simple Useful Libraries: C++17/20 header-only dynamic bitset
HMake - C++ build system that uses C++ for build configuration.
Hashmaps - Various open addressing hashmap algorithms in C++
prorab - :construction_worker: non-recursive GNU make-based build framework
function2 - Improved and configurable drop-in replacement to std::function that supports move only types, multiple overloads and more
cmake-init - The missing CMake project initializer
sparsehash - C++ associative containers