-
Notifications
You must be signed in to change notification settings - Fork 0
Cloned from http://jni-inchi.sourceforge.net/
License
Unknown and 2 other licenses found
Licenses found
Unknown
LICENSE-EXTERNAL.txt
GPL-3.0
LICENSE-GPL.txt
LGPL-3.0
LICENSE-LGPL.txt
SureChEMBL/jni-inchi
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Java Native Interface for InChI =============================== (C) 2006-2011 Sam Adams, sea36 at users.sourceforge.net Unilever Centre for Molecular Science Informatics, University of Cambridge, UK Precompiled InChI library files and the API header file have been included in this distribution, for convenience. These files are Copyright (C) The International Union of Pure and Applied Chemistry 2005: IUPAC International Chemical Identifier (InChI) (contact: secretariat@iupac.org). The complete InChI distribution, including source code, is available from the IUPAC website (http://www.iupac.org/inchi). 1. Contents 1. Contents 2. Introduction 3. Package contents 4. Installation 5. Usage 6. Customisation 7. License 2. Introduction This package provides Java Native Interface (JNI) wrappers for software version 1.03 of the InChI chemical identifier C++ library distributed by IUPAC. The following features are supported: * Structure to (Standard/Non-Stanadard) InChI * InChI to Structure (0D - no coordinates) * InChI to InChI * InChI to InChIKey * Check InChI * Check InChIKey * Full range of InChI flags/options While the Java code is cross-platfrom, the C InChI library requires compiling for a specific operating system/architecture. JNI InChI includes precompiled binaries for several common platfroms, and automatically deploys and loads the appropriate library using the JNati library. Compilation of the native code is integrated into the build system making it simple to compile JNI InChI for use on other platforms. * http://jni-inchi.sourceforge.net * http://jnati.sourceforge.net * http://www.iupac.org/inchi/ * http://java.sun.com/j2se/1.4.2/docs/guide/jni/ 3. Package contents / readme and license files /pom.xml Maven Project Object Model file /src/main/java Java source code /src/main/native C source code /src/test/java Java unit tests 4. Installation The simplest method of obtaining JNI InChI is to use the JAR file, available for download from the project web site (http://jni-inchi.sourceforge.net). This comes with precompiled binaries for several common operating systems and architectures. If an appropriate binary is available for your system it will automatically be extracted from the JAR and loaded, otherwise you will need to recompile JNI InChI for your machine. In order to build JNI InChI the following software is required: * Java (JDK) 1.5 or higher * Maven 2.0 * GNU Make * GCC/G++ The JAVA_HOME environment variable MUST be set, pointing to the location of the JDK. The Maven build system takes care of JNI InChI's dependencies, and runs Make to build the native code required. From JNI InChI's root directory (containing the file pom.xml) simply run 'mvn package' to compile a JAR file for your system. Maven will compile the Java code, call Make to build the C code, run a suite of unit tests to ensure the code has compiled successfully and package everything into a JAR file in the target directory: jniinchi-(version).jar This can be installed into your local Maven repository by running 'mvn install' 5. Usage It is not expected that most users interact with the InChI API wrappers directly, but rather through further wrappers which provide an interface to whichever molecular handling library or toolkit they are using. InChI generators for both CML (JUMBO) and CDK have been written as examples, and are available through the respective projects. The class net.sf.jniinchi.JniInchiWrapper provides access to the InChI library's functionality through methods such as: static JniInchiOutput getInchi(JniInchiInput input) and static JniInchiOutputStructure getStructureFromInchi(JniInchiInputInchi input) The first of which is used to generate an InChI from a structure, and the second to generate a structure from an InChI. 6. Customisation JNI InChI is designed to run without requiring any configuration, however there are a number of customisations that can be made, if required. For more details see the jnati project documentation. 7. License JNI-InChI is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. JNI-InChI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with JNI-InChI. If not, see <http://www.gnu.org/licenses/>.
About
Cloned from http://jni-inchi.sourceforge.net/
Topics
Resources
License
Unknown and 2 other licenses found
Licenses found
Unknown
LICENSE-EXTERNAL.txt
GPL-3.0
LICENSE-GPL.txt
LGPL-3.0
LICENSE-LGPL.txt