Skip to main content

> Installation_

Get Argus up and running on your system quickly with multiple installation options.

// Quick Install​

System Requirements

Compiler: GCC 13.0+ or Clang 14+

Package Managers​

# With Regex support (requires PCRE2)
vcpkg install argus[regex]
# Without Regex support (default)
vcpkg install argus

From Source​

git clone https://github.com/lucocozz/argus.git
cd argus
meson setup builddir # -Dregex=true for regex support
meson compile -C builddir
sudo meson install -C builddir
System Packages

System packages are not currently available. Use package managers or build from source.

// Dependencies​

Argus has minimal dependencies:

DependencyRequiredPurposeNotes
PCRE2 â„šī¸OptionalRegex validationEnable with -Dregex=true
MesonBuild onlyBuild systemVersion 1.1.0+ required
NinjaBuild onlyBackendRecommended for faster builds
PCRE2 Auto-Installation

PCRE2 is automatically downloaded and built when regex support is enabled. No manual installation required!

// Configuration Options​

When building from source, customize your installation:

# Enable regex support (adds PCRE2 dependency)
meson setup builddir -Dregex=true

# Release build for production (default)
meson setup builddir

# Install to custom location
meson setup builddir --prefix=/opt/argus

// Verification​

Test your installation:

test.c
#include <argus.h>
#include <stdio.h>

ARGUS_OPTIONS(
options,
HELP_OPTION(),
)

int main(int argc, char **argv)
{
argus_t argus = argus_init(options, "test", "0.1.0");
int status = argus_parse(&argus, argc, argv);

if (status == ARGUS_SUCCESS)
printf("✅ Argus is working!\n");

return 0;
}
# Compile and test
gcc test.c -o test -largus
./test --help

// Integration​

CMakeLists.txt
find_package(PkgConfig REQUIRED)
pkg_check_modules(ARGUS REQUIRED argus)

add_executable(myapp main.c)
target_link_libraries(myapp ${ARGUS_LIBRARIES})
target_include_directories(myapp PRIVATE ${ARGUS_INCLUDE_DIRS})

// Troubleshooting​

Common Issues​

Library not found during linking
# Add library path
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
sudo ldconfig

# Or specify path explicitly
gcc main.c -L/usr/local/lib -largus -o myapp
Headers not found
# Add include path
gcc main.c -I/usr/local/include -largus -o myapp

# Check installation
find /usr -name "argus.h" 2>/dev/null
Compiler version error
# Check compiler version
gcc --version
clang --version

# Required: GCC 13.0+ or Clang 14+
# Update if needed or use MSYS2 on Windows

Platform-Specific Notes​

Linux: Use package managers or build from source. Ensure GCC 13+ or Clang 14+.

macOS: Package managers provide the best experience. Ensure GCC 13+ or Clang 14+.

Windows: vcpkg recommended. MSVC not supported - use GCC 13+ via MSYS2/MinGW or Clang 14+.