Skip to main content

An algorithm library based on C/C++

Project description

An algorithm library {#mainpage}

docs conan xmake meson wasm msvc linux macos mingw msys2 freebsd

documentation

required tools

optional tools

build

xmake

xmake f
xmake
xmake i

cmake

cmake -S . -B build
cmake --build build
cmake --install build

meson

meson setup build
meson install -C build

vcpkg

cmake -S . -B build -DLIBA_VCPKG=1
cp -r build/vcpkg/* $VCPKG_INSTALLATION_ROOT
cp -r -Force build/vcpkg/* $ENV:VCPKG_INSTALLATION_ROOT

conan

conan create .

cargo

cargo build --release

cython

python setup.py build_ext --inplace

usage

C/C++

xmake.lua

add_requires("alib") -- static
add_requires("liba") -- shared

CMakeLists.txt

find_package(liba CONFIG REQUIRED)
target_link_libraries(<TARGET> PRIVATE alib) # static
target_link_libraries(<TARGET> PRIVATE liba) # shared

conanfile.txt

[requires]
liba/[~0.1]

Lua

luarocks install liba # release
luarocks install liba --dev # latest

main.lua

local liba = require("liba")
print("version", liba.VERSION)

Java

Main.java

public class Main {
    public static void main(String[] args) {
        System.out.println("version " + liba.VERSION);
    }
}

Rust

Cargo.toml

cargo add liba # release
cargo add --git https://github.com/tqfx/liba.git # latest

main.rs

use liba;
fn main() {
    println!(
        "version {}.{}.{}+{}",
        liba::version::major(),
        liba::version::minor(),
        liba::version::patch(),
        liba::version::tweak()
    );
}

Python

export LIBA_OPENMP=1
pip install liba # release
pip install git+https://github.com/tqfx/liba.git # latest

main.py

import liba
print("version", liba.VERSION)

JavaScript

npm i @tqfx/liba

index.js

import liba from "@tqfx/liba";
console.log("version", liba.VERSION);

QuickJS

main.js

import * as liba from "liba.so";
console.log("version", liba.VERSION);

Copyright {#copyright}

Copyright (C) 2020-present tqfx, All rights reserved.

This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

liba-0.1.11.tar.gz (356.0 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page