FARSIGHT Tutorials/Building Software/Bio-Formats/Building C++ Bindings

From FarsightWiki
(Difference between revisions)
Jump to: navigation, search
m
 
(20 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Overview =
+
= NOTICE =
 +
It is no longer necessary to build the Bio-Formats C++ bindings to use Bio-Formats with FARSIGHT. Rather, see the [http://www.loci.wisc.edu/bio-formats/itk Bio-Formats ITK] page for instructions.
  
The Bio-Formats C++ bindings provide language bindings for calling into the [[Bio-Formats]] Java library from C++ in a cross-platform manner. As of this writing the bindings are functional with GCC on Linux and Mac OS X systems, as well as with Visual C++ 2005 and Visual C++ 2008 on Windows.
+
If you still want to build the Bio-Formats C++ bindings, you can find up-to-date instructions on the [http://www.loci.wisc.edu/bio-formats/bio-formats-c-bindings Bio-Formats C++ Bindings] page.
 
+
 
+
= Prerequisites =
+
 
+
The following packages should be installed in order:
+
 
+
# [[FARSIGHT Tutorials/Building Software/Installing CMake|Installing CMake]]
+
# [[FARSIGHT Tutorials/Building Software/Installing Apache Ant|Installing Apache Ant]]
+
# [[FARSIGHT Tutorials/Building Software/Installing Subversion|Installing Subversion]]
+
# [[FARSIGHT Tutorials/Building Software/Installing Boost|Installing Boost Thread]]
+
# [[FARSIGHT Tutorials/Building Software/Installing JDK|Installing Java Development Kit]]
+
# [[FARSIGHT Tutorials/Building Software/Installing Visual C++|Installing Visual C++]] (Windows only)
+
# [[FARSIGHT Tutorials/Building Software/Bio-Formats/Downloading Jace|Downloading Jace]]
+
 
+
 
+
= Downloading Bio-Formats =
+
 
+
Execute the following command:
+
 
+
  svn co https://skyking.microscopy.wisc.edu/svn/java/trunk /path/to/loci
+
 
+
Where /path/to/loci is the desired location of your LOCI Software source code checkout.
+
 
+
The above command assumes you have the svn command line tool for Subversion installed. It should also work fine to plug in the above information to any graphical Subversion client (e.g., TortoiseSVN).
+
 
+
 
+
= Compiling the code =
+
 
+
Once you have the required tools and libraries installed, you must first build the loci_tools.jar library:
+
 
+
# Change to the root directory of the checkout.
+
# Execute the command:
+
 
+
  ant tools
+
 
+
Finally, you can compile the Bio-Formats C++ bindings:
+
 
+
# Change to the components/native/bf-cpp directory.
+
# Execute the command:
+
 
+
  ant -Djace.home=/path/to/jace
+
 
+
Where /path/to/jace is the location of your Jace source code checkout. Do not use a relative path, and use forward slashes, even on Windows.
+
 
+
If all goes well, the build system will:
+
 
+
# Build the Jace Java and C++ libraries.
+
# Generate the Bio-Formats C++ proxy classes.
+
# Build the Bio-Formats C++ shared library.
+
# Build the showinf command line tool, for testing the functionality.
+
 
+
Please be patient, as the build may require several minutes to complete.
+
 
+
 
+
= Build results =
+
 
+
Afterwards, the build subdirectory will contain the following files:
+
 
+
# libjace.so / libjace.jnilib / jace.dll : Jace shared library
+
# libbfjace.so / libbfjace.dylib / bfjace.dll : Bio-Formats C++ bindings
+
# jace-runtime.jar : Jace Java classes needed at runtime
+
# loci_tools.jar : Bio-Formats Java library needed at runtime
+
# showinf / showinf.exe : Example command line application
+
 
+
Items 1-4 are necessary and required to deploy Bio-Formats with your C++ application. All other files, including the showinf program and various build files generated by CMake, are not needed.
+
 
+
If you prefer, instead of using the loci_tools.jar bundle, you can provide individual JAR files as appropriate for your application. For details, see:
+
 
+
  http://www.loci.wisc.edu/ome/formats-library.html
+
 
+
Please direct questions to the Bio-Formats team at bioformats@loci.wisc.edu.
+

Latest revision as of 20:31, 17 August 2011

NOTICE

It is no longer necessary to build the Bio-Formats C++ bindings to use Bio-Formats with FARSIGHT. Rather, see the Bio-Formats ITK page for instructions.

If you still want to build the Bio-Formats C++ bindings, you can find up-to-date instructions on the Bio-Formats C++ Bindings page.

Personal tools