Skip to content
This repository has been archived by the owner on Sep 13, 2024. It is now read-only.

Building

Edmunt Pienkowsky edited this page Jul 26, 2023 · 3 revisions

Building chan_quectel

CMake is now used as a build system:

Requirements.

Required libraries:

  • ALSA,
  • SQLite3.

On Ubuntu just install libasound2-dev and libsqlite3-dev packages:

sudo apt-get install libasound2-dev libsqlite3-dev

Installing Asterisk headers.

If you build Asterisk from sources install Asterisk headers via sudo make install-headers after standard make && sudo make install pair. See also my install-asterisk-headers action that demonstrates how to download, extract, configure, build and install Asterisk headers.

On Ubuntu you can just install asterisk-dev package:

sudo apt-get install asterisk-dev

Building chan_quectel module.

mkdir build
cmake -B build
cmake --build build
DESTDIR=$(pwd)/install/chan-quectel cmake --install build

or using helper scripts

./make-build-dir.cmake
./build-chan-quectel.cmake
./install-chan-quectel.cmake

You may specify Asterisk version via ASTERISK_VERSION_NUM variable:

cmake -B build -DASTERISK_VERSION_NUM=162000

Generating Makefile for OpenWRT package

In order to generate Makefile for OpenWRT package one must install openwrt component:

DESTDIR=$(pwd)/install cmake --install build --component openwrt

or using helper script:

./install-openwrt-makefile.cmake

Instalation folder: intall/openwrt. Then follow the instructions from install/openwrt/README.txt.

Building Debian package (experimental)

Debian package may be created by CPack DEB generator:

cmake --build build --target package

or using helper script:

./make-package.cmake

Packages are created in package subdirectory.

Github workflow.

See also my publish workflow that demostrates how to build and publish OpenWRT and deb packages.