mirror of
https://github.com/tensorflow/haskell.git
synced 2024-11-26 21:09:44 +01:00
9f2f4e2877
* Sorted test names. * Don't require a terminal to run tests. Should resolve "the input device is not a TTY" problem with Jenkins. * Added build indicator to README.md. * Fixed up URL.
54 lines
1.9 KiB
Markdown
54 lines
1.9 KiB
Markdown
[![Build Status](https://ci.tensorflow.org/buildStatus/icon?job=tensorflow-haskell-master)](https://ci.tensorflow.org/job/tensorflow-haskell-master)
|
|
|
|
The tensorflow-haskell package provides Haskell bindings to
|
|
[TensorFlow](https://www.tensorflow.org/).
|
|
|
|
This is not an official Google product.
|
|
|
|
# Instructions
|
|
|
|
## Build with Docker on Linux
|
|
|
|
As an expedient we use [docker](https://www.docker.com/) for building. Once you have docker
|
|
working, the following commands will compile and run the tests.
|
|
|
|
git clone --recursive https://github.com/tensorflow/haskell.git tensorflow-haskell
|
|
cd tensorflow-haskell
|
|
IMAGE_NAME=tensorflow/haskell:v0
|
|
docker build -t $IMAGE_NAME docker
|
|
# TODO: move the setup step to the docker script.
|
|
stack --docker --docker-image=$IMAGE_NAME setup
|
|
stack --docker --docker-image=$IMAGE_NAME test
|
|
|
|
There is also a demo application:
|
|
|
|
cd tensorflow-mnist
|
|
stack --docker --docker-image=$IMAGE_NAME build --exec Main
|
|
|
|
## Build on Mac OS X
|
|
|
|
The following instructions were verified with Mac OS X El Capitan.
|
|
|
|
- Install dependencies via [Homebrew](http://brew.sh):
|
|
|
|
brew install swig
|
|
brew install bazel
|
|
|
|
- Build the TensorFlow library and install it on your machine:
|
|
|
|
cd third_party/tensorflow
|
|
./configure # Choose the defaults when prompted
|
|
bazel build -c opt tensorflow:libtensorflow_c.so
|
|
install bazel-bin/tensorflow/libtensorflow_c.so /usr/local/lib
|
|
cd ../..
|
|
|
|
- Run stack:
|
|
|
|
stack test
|
|
|
|
Note: you may need to upgrade your version of Clang if you get an error like the following:
|
|
|
|
tensorflow/core/ops/ctc_ops.cc:60:7: error: return type 'tensorflow::Status' must match previous return type 'const ::tensorflow::Status' when lambda expression has unspecified explicit return type
|
|
return Status::OK();
|
|
|
|
In that case you can just upgrade XCode and then run `gcc --version` to get the new version of the compiler.
|