To install D++ from XBPS source packages collection, follow the step below (as root):
xbps-install -Sy dpp-devel
This will install D++ development files and related libraries
You will now be able to use D++ by including its library on the command line:
g++ mybot.cpp -o mybot -ldpp
- Note
- Compiling your bot with a raw `g++` command is not advised in any real project, and the example above should be used only as a test. From here, you should learn to create a bot in D++ by moving on to Building a Discord Bot Using CMake (UNIX) or if you have not yet created a token for your bot, Creating a Bot Token - If you are having trouble setting up CMake, you can try our template cmake bot project.
To build D++ with coroutine support as an XBPS package, follow the steps below. Ensure that xbps-src is set up beforehand:
# Inside the void-packages root folder
git checkout master && git pull
# Modifies the configure arguments to include coroutine support (-DDPP_CORO=ON)
grep -q 'configure_args=.*-DDPP_CORO=ON' srcpkgs/dpp/template || sed -i -e 's/\(configure_args="[^"]*\)"/\1 -DDPP_CORO=ON"/' srcpkgs/dpp/template
./xbps-src -K pkg dpp
Then as root:
# Inside the void-packages root folder
xbps-install --repository hostdir/binpkgs dpp-devel
This will do the following three things:
- Update the void-packages repository to the latest commit on master
- Patch the template file of D++ to enable coroutine support
- Build an XBPS package for D++ and install it
- Note
- Cloning the void-packages repository may take some time
- Warning
- D++ Coroutines are a very new feature and are currently only supported by D++ on g++ 13, clang/LLVM 14, and MSVC 19.37 or above. Additionally, D++ must be built with the CMake option DPP_CORO, and your program must both define the macro DPP_CORO and use C++20 or above. The feature is experimental and may have bugs or even crashes, please report any to GitHub Issues or to our Discord Server.