Welcome to your comprehensive guide on how to build and test the EPAM Indigo projects! This repository includes tools and frameworks that will empower you in cheminformatics and related tasks. Today, we will walk you through the entire process step-by-step.
Introduction
The EPAM Indigo projects include various components like:
- Bingo: A chemistry search engine compatible with Oracle, Microsoft SQL Server, and PostgreSQL databases.
- Bingo-Elastic: A set of APIs for efficient chemistry search in Elasticsearch with both Java and Python.
- Indigo: A universal cheminformatics library that has bindings to .NET, Java, Python, R, and WebAssembly.
- Various tools such as Legio, ChemDiff, and indigo-depict that offer additional functionalities.
For more detailed documentation, visit lifescience.opensource.epam.com.
Prerequisites
Before building the project, make sure you have the following tools installed:
- GIT 1.8.2+
- CC++ compilers with C++14 support (GCC, Clang, MSVC)
- CMake 3.4+
- Python 3.6+
- JDK 1.8+
- .NET Standard 2.0+
- Emscripten SDK
- Ninja
Building Indigo
To build the Indigo project, follow these steps:
- First, create a build folder:
mkdir build
cd build
cmake .. -DBUILD_INDIGO=ON -DBUILD_INDIGO_WRAPPERS=ON -DBUILD_INDIGO_UTILS=ON
cmake --build . --config Release --target all
Running Tests
Once you have built the project, you can run tests. Here’s how to do it:
- To run Python integration tests:
python -m pip install --user dist/epam.indigo-version-arch.whl
python api/tests/integration_test.py -t 1
python api/tests/integration_test.py -t 1 -p test_name
Building Indigo-WASM
Follow these steps for building Indigo with WebAssembly:
Build Tools Prerequisites
- Git: Ensure Git is accessible in your command line.
- Python: Install the latest version from python.org.
- CMake: Get it from cmake.org.
- Ninja: Download it from ninja-build.
- Emscripten SDK: Follow instructions on emsdk.
Get Indigo Sources
git clone https://github.com/epam/Indigo.git
Final Build Steps
- Activate your emscripten environment:
cd emsdk && emsdk activate latest
mkdir build && cd build
emcmake cmake .. -DCMAKE_BUILD_TYPE=Debug -G Ninja && ninja indigo-ketcher-js-test
Troubleshooting
If you encounter issues during the building or testing phases, consider the following troubleshooting ideas:
- Ensure all required dependencies are installed and properly configured.
- Verify your environment variables are set correctly, especially for Emscripten and Ninja tools.
- Check the compatibility of your versions, particularly for CMake and Python.
- Consult the detailed documentation available at lifescience.opensource.epam.com.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Conclusion
By following this guide, you should now be equipped to build and test the EPAM Indigo projects successfully! From cheminformatics to backend integration, you have a powerful toolkit at your disposal. At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.