discord-bot/libs/DPP-10.0.29/docpages/building/freebsd.md

76 lines
2.1 KiB
Markdown
Raw Normal View History

2024-02-22 16:09:56 -05:00
\page buildfreebsd Building on FreeBSD
\note This page assumes you are the root user. If you are not, start the package install commands with `sudo`, along with `make install`. You will need `sudo` installed if you are not the root user.
## 1. Toolchain
Since the project uses `CMake`, you'll need to install it! If you don't have it, you can do the following:
```bash
pkg install cmake
```
## 2. Install Voice Dependencies (Optional)
If you wish to use voice support, you'll need to install opus and libsodium:
First, you need to install opus.
```bash
cd /usr/ports/audio/opus
make && make install
```
Then, you need to install libsodium.
```bash
cd /usr/ports/security/libsodium
make && make install
```
## 3. Build Source Code
```bash
cmake -B ./build
cmake --build ./build -j8
```
Replace the number after `-j` with a number suitable for your setup, usually the same as the number of cores on your machine. `cmake` will fetch any dependencies that are required for you and ensure they are compiled alongside the library.
## 4. Install Globally
```bash
cd build
make install
```
## 5. Installation to a Different Directory (Optional)
If you want to install the library, its dependencies and header files to a different directory, specify this directory when running `cmake`:
```bash
cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/install
```
Then once the build is complete, run `sudo make install` to install to the location you specified.
## 6. Using the Library
Once installed, you can make use of the library in standalone programs simply by including it and linking to it:
```bash
clang++ -std=c++17 -L/usr/local/lib -I/usr/local/include -ldpp bot.cpp -o dppbot
```
The important flags in this command-line are:
* `-std=c++17` - Required to compile the headers
* `-L/usr/local/lib` - Required to tell the linker where libdpp is located.
* `-I/usr/local/include` - Required to tell the linker where dpp headers are located.
* `-ldpp` - Link to `libdpp.so`.
* `bot.cpp` - Your source code.
* `-o dppbot` - The name of the executable to make.
\include{doc} install_prebuilt_footer.dox
**Have fun!**