Files
neuron/Install-dependent-libraries.md
T
2022-01-20 10:09:22 +08:00

2.2 KiB

Script to install dependent libraries

openssl

# Ubuntu
$ apt-get install libssl-dev

# CentOS
$ yum install openssl-devel

# MacOS
$ brew install openssl

mbedtls

git clone -b v3.1.0 https://github.com/ARMmbed/mbedtls.git
cd mbedtls
mkdir build
cd build
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DUSE_SHARED_MBEDTLS_LIBRARY=OFF \
-DENABLE_TESTING=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON ..
ninja
ninja install

nanomq/nng

git clone -b nng-mqtt https://github.com/nanomq/nng.git nanomq-nng
cd nanomq-nng
mkdir build
cd build
cmake -G Ninja -DBUILD_SHARED_LIBS=OFF -DNNG_TESTS=OFF \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DNNG_ENABLE_TLS=ON ..
ninja
ninja install

nng

git clone -b v1.5.1 git@github.com:nanomsg/nng.git
cd nng
mkdir build
cd build
cmake -G Ninja -DBUILD_SHARED_LIBS=1 ..
ninja
ninja test
ninja install

jansson

git clone git@github.com:akheron/jansson.git
cd jansson
mkdir build
cd build
cmake -G Ninja -DJANSSON_BUILD_DOCS=OFF ..
ninja
ninja install

jwt

git clone git@github.com:benmcollins/libjwt.git
cd libjwt
mkdir build
cd build
cmake -G Ninja -DBUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={YOUR_OPENSSL_ROOT_DIR} ..
ninja
ninja install

MQTT-C

git clone -b 1.1.5 https://github.com/LiamBindle/MQTT-C.git 
cd MQTT-C
mkdir build
cd build
cmake -G Ninja -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DMQTT_C_OpenSSL_SUPPORT=ON ..
ninja
ninja install

yaml

git clone https://github.com/yaml/libyaml.git
cd libyaml
mkdir build && cd build && cmake DBUILD_SHARED_LIBS=1 .. && make
make install

open62541

git clone -b v1.2.2 https://github.com/open62541/open62541.git
cd open62541
mkdir build
cd build
cmake -G Ninja -DBUILD_SHARED_LIBS=OFF -DUA_ENABLE_AMALGAMATION=ON -DUA_ENABLE_ENCRYPTION=ON -DUA_ENABLE_ENCRYPTION_OPENSSL=ON ..
ninja && ninja install