Skip to content

jgrapht/jgrapht-capi

Repository files navigation

Build project License License Language

JGraphT Native Library

This library provides a native C api to the JGraphT library. Since the JGraphT library is written in Java, we use GraalVM in order to build a shared library.

Important! This is alpha software and the interface many change!

Build

We use cmake to build the native library.

mkdir build/
cd build/
cmake ..
make

Installation

Use make install to install the library. After a successful installation, you should see the following files:

jgrapht_capi.h
jgrapht_capi_types.h
jgrapht_capi_dynamic.h
graal_isolate.h
graal_isolate_dynamic.h

and the shared library libjgrapht_capi.so.

Requirements

The build will succeed only if you have the following piece of software installed:

  • GraalVM 20.0 with Java 11 support
  • Native Image component from GraalVM
  • GNU C compiler or clang
  • glibc-devel, zlib-devel (header files for the C library and zlib)
  • Maven build tool
  • CMake

For Windows you will need Microsoft Visual C++ (MSVC) 2017 15.5.5 or later. Build the system using the proper Developer Command Prompt for your version of Visual Studio. This means x64 Native Tools Command Prompt. Use Visual Studio 2017 or later.

License

This library may be used under the terms of either the

or the

As a recipient, you may choose which license to receive the code under. A copy of the EPL license and the LPGL license is included in this repository.

Please note that this library is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Please refer to the license for details.

SPDX-License-Identifier: LGPL-2.1-or-later OR EPL-2.0

Author

(C) Copyright 2020, by Dimitrios Michail

Enjoy!

About

JGraphT Library C-API

Resources

License

EPL-2.0, LGPL-2.1 licenses found

Licenses found

EPL-2.0
license-EPL.txt
LGPL-2.1
license-LGPL.txt

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published