1
0
mirror of https://github.com/falk-werner/webfused synced 2024-10-27 20:44:08 +00:00
falk-werner_webfused/doc/build.md

98 lines
2.4 KiB
Markdown
Raw Normal View History

2020-03-20 15:27:48 +00:00
# Build Instructions
To install dependecies, see below.
2020-06-06 10:50:02 +00:00
meson build
2020-03-20 15:27:48 +00:00
cd build
2020-06-06 10:50:02 +00:00
ninja
2020-03-20 15:27:48 +00:00
./webfused -f webfused.conf
## Dependencies
- [webfuse](https://github.com/falk-werner/webfuse)
- [libfuse](https://github.com/libfuse/libfuse/)
- [libwebsockets](https://libwebsockets.org/)
2020-10-14 18:10:25 +00:00
- [jansson](https://github.com/akheron/jansson)
2020-03-20 15:27:48 +00:00
- [openssl](https://www.openssl.org/)
- [libconfig](https://hyperrealm.github.io/libconfig/)
- [linux-pam](http://www.linux-pam.org/)
- [Google Test](https://github.com/google/googletest) *(Test only)*
2020-06-06 10:50:02 +00:00
It is recommended to provide all dependencies outside of the project.
To simply development, some dependencies are bundled using meson wrap files. Note that installing webfused will also install subprojects, when they are used (this is typically not what you want).
2020-03-20 15:27:48 +00:00
### libfuse
To install libfuse, meson is needed. Please refer to [meson quick guide](https://mesonbuild.com/Quick-guide.html) for setup instructions.
2020-03-20 15:45:52 +00:00
wget https://github.com/libfuse/libfuse/archive/fuse-3.9.1.tar.gz -O fuse.tar.gz
2020-03-20 15:27:48 +00:00
tar -xf fuse.tar.gz
2020-03-20 15:45:52 +00:00
cd libfuse-fuse-3.9.1
2020-03-20 15:27:48 +00:00
mkdir .build
cd .build
meson ..
ninja
sudo ninja install
### libwebsockets
2020-10-14 18:10:25 +00:00
wget https://github.com/warmcat/libwebsockets/archive/v4.0.13.tar.gz -O libwebsockets.tar.gz
2020-03-20 15:27:48 +00:00
tar -xf libwebsockets.tar.gz
2020-10-14 18:10:25 +00:00
cd libwebsockets-4.0.13
2020-03-20 15:27:48 +00:00
mkdir .build
cd .build
cmake ..
make
sudo make install
### jansson
wget https://github.com/akheron/jansson/archive/v2.12.tar.gz -O jansson.tar.gz
tar -xf jansson.tar.gz
cd jansson-2.12
mkdir .build
cd .build
cmake ..
make
sudo make install
### openssl
sudo apt update
sudo install openssl libssl-dev
### webfuse
wget https://github.com/falk-werner/webfuse/archive/v0.2.0.tar.gz -O webfuse.tar.gz
tar -xf webfuse.tar.gz
cd webfuse-0.2.0
mkdir .build
cd .build
cmake -DWITHOUT_TESTS=ON ..
make
sudo make install
### libconfig
sudo apt update
sudo apt install libconfig-dev
### linux-pam
sudo apt update
sudo apt install libpam0g-dev
### GoogleTest
Installation of GoogleTest is optional webfuse library, but required to compile tests.
wget -O gtest-1.10.0.tar.gz https://github.com/google/googletest/archive/release-1.10.0.tar.gz
tar -xf gtest-1.10.0.tar.gz
cd googletest-release-1.10.0
mkdir .build
cd .build
cmake ..
make
sudo make install