-
Notifications
You must be signed in to change notification settings - Fork 117
Home
CXXGraph is a small library, header only, that manages the Graph and it's algorithms in C++. In other words a "Comprehensive C++ Graph Library". An alternative to Boost Graph Library (BGL).
We are looking for:
- Site Developer for the development of the CXXGraph site ( for the moment on GitHub Page );
- Developers and Committers, also at first experience, we will guide you step by step to the open-source world!
If you are interested, please contact us at zigrazor@gmail.com or contribute to this project. We are waiting for you!
On Unix/Linux system you need to execute the following command to install:
$ sudo tar xjf CXXGraph-{version}.tar.bz2
to uninstall:
$ sudo rm -f /usr/include/Graph.hpp /usr/include/CXXGraph*
On Fedora/CentOS/RedHat system you need to execute the following command to install:
$ sudo rpm -ivh CXXGraph-{version}.noarch.rpm
to uninstall:
$ sudo rpm -e CXXGraph-{version}
On Debian/Ubuntu system you need to execute the following command to install:
$ sudo dpkg -i CXXGraph_{version}.deb
to uninstall:
$ sudo apt-get remove CXXGraph
You can install from source the library using CMake. After the compilation phase, you can use:
$ sudo make install
to install the library.
The Classes Explanation can be found in the Doxygen Documentation, in the Classes Section
The minimun C++ standard required is C++17 and a G++ compiler version greater than 7.3.0. Are also required OpenSSL library
The use of the library is very simple, just put the header file where you need!
Work in Progess
The Unit-Test required the CMake version greater than 3.9 and the google test library.
sudo apt-get install openssl libssl-dev
yum install openssl-devel
You can find more information on how to install OpenSSL at this link
git clone https://github.com/google/googletest.git
cd googletest # Main directory of the cloned repository.
mkdir -p build # Create a directory to hold the build output.
cd build
cmake .. # Generate native build scripts for GoogleTest.
make # Compile
sudo make install # Install in /usr/local/ by default
From the base directory:
mkdir -p build # Create a directory to hold the build output.
cd build # Enter the build folder
cmake .. # Generate native build scripts for GoogleTest.
make # Compile
After the compilation, you can run the executable that is under the "build" directory with the name "test_exe", with the simple command ./test_exe
.
The Benchmark required the CMake version greater than 3.9 and the google test and the google benchmark library.
# Check out the library.
$ git clone https://github.com/google/benchmark.git
# Benchmark requires Google Test as a dependency. Add the source tree as a subdirectory.
$ git clone https://github.com/google/googletest.git benchmark/googletest
# Go to the library root directory
$ cd benchmark
# Make a build directory to place the build output.
$ cmake -E make_directory "build"
# Generate build system files with cmake.
$ cmake -E chdir "build" cmake -DCMAKE_BUILD_TYPE=Release ../
# or, starting with CMake 3.13, use a simpler form:
# cmake -DCMAKE_BUILD_TYPE=Release -S . -B "build"
# Build the library.
$ cmake --build "build" --config Release
# install library
$ sudo cmake --build "build" --config Release --target install
From the base directory:
mkdir -p build # Create a directory to hold the build output.
cd build # Enter the build folder
cmake -DBENCHMARK=ON .. # Generate native build scripts for GoogleTest.
make # Compile
After the compilation, you can run the executable that is under the "build" directory with the name "benchmark", with the simple command ./benchmark
.
You can check benchmark result at this link
To create tarballs package you need to follow the following steps:
# Enter Packaging Directory
$ cd packaging
# execute the script to generate tarballs
$ ./tarballs.sh
To create rpm package you need to follow the following steps:
# Enter Packaging Directory
$ cd packaging/rpm
# execute the script to generate tarballs
$ ./make_rpm.sh
To create deb package you need to follow the following steps:
# Enter Packaging Directory
$ cd packaging/deb
# execute the script to generate tarballs
$ ./make_deb.sh
If you want give your support you can create a pull request or report an issue . If you want to change the code, or fix issue, or implement a new feature please read our CONTRIBUTING Guide
If you want to disscuss new feature or you have any question or suggestion about library please open a Discussion.
E-Mail : zigrazor@gmail.com
To support me just add Star the project or follow me
To get updated watch the project
We are referenced by:
Thanks to the community of TheAlgorithms for some algorithms ispiration.
Thanks to GeeksForGeeks for some algorithms inspiration.
Thank you to all the people who have already contributed to CXXGraph!
If you use this software please follow the CITATION istruction. Thank you!
We have been participated at Hacktoberfest 2021, thank you to all the contributors!
View the Estimated Value of the Project
@ZigRazor |
---|