libdataset

command
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 28, 2021 License: BSD-3-Clause Imports: 11 Imported by: 0

README

libdataset

This directory holds a C shared library version of the dataset Go package. It is used to support using dataset from other languages such as Python 3 via the ctypes binding.

Linux/Darwin

To compile you need to have Go 1.16 and GNU Make. Running make in this directory will generate the compiled shared library and create header file (e.g. libdataset.so, libdataset.dll, or libdataset.dylib and libdataset.h). You can then copy the shared library and header file to an appropriate on your system.

Windows 10

Install Go 1.16 or better from the Golang website using the provided Windows binaries. Install Miniconda (from Anaconda). Using Miniconda install git, gcc (i.e. m2w64-gcc) and zip (m2-zip). Run "make.bat" to compile DLL. Modify and run release.bat to generate a release version.

Issues

  • Windows 10: Need to install gcc and git via Miniconda after installing the Go binaries for Windows from the golang.org website
  • Mac OS X (Darwin): only one Go c-shared library seems possible at in a python session, the Go code doesn't seem to be movable in memory, this is related to a long standing issue in Mac OS X only supporting xcode's linker

Documentation

Overview

Copyright (c) 2021, Caltech All rights not granted herein are expressly reserved by Caltech.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL