Skip to content
chrismedrela edited this page May 16, 2014 · 10 revisions

Fast installation

If you want to only feel Breeze and give it a chance and you don't want to bother with installation, run sbt, configure a new project and run interactive console:

$ sbt
set libraryDependencies += "org.scalanlp" % "breeze_2.10" % "0.7"
set resolvers += "Sonatype Releases" at "https://oss.sonatype.org/content/repositories/releases/"
set scalaVersion := "2.10.3"
console

That's all! Now, you can go to Quickstart or read the instruction for recommended installation way:

Recommended installation

We assume, that you have installed SBT 0.10.x or later. Add these lines to your SBT project definition:

libraryDependencies  ++= Seq(
            // other dependencies here
            "org.scalanlp" % "breeze_2.10" % "0.7",
            // native libraries are not included by default. add this if you want them (as of 0.7)
            // native libraries greatly improve performance, but increase jar sizes.
            "org.scalanlp" % "breeze-natives_2.10" % "0.7",
)

resolvers ++= Seq(
            // other resolvers here
            "Sonatype Releases" at "https://oss.sonatype.org/content/repositories/releases/"
)

// Scala 2.9.2 is still supported for 0.2.1, but is dropped afterwards.
// Don't use an earlier version of 2.10, you will probably get weird compiler crashes.
scalaVersion := "2.10.3"

Then run sbt update so SBT will download them from maven central.

Get the trunk version

If you want to use 0.8-SNAPHOST version instead of the latest release, which is 0.7, add to libraryDependencies:

"org.scalanlp" %% "breeze" % "0.8-SNAPSHOT"

and insert into resolvers:

"Sonatype Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/"

Maven

Maven looks like this:

<dependency>
  <groupId>org.scalanlp</groupId>
	<artifactId>breeze_2.10</artifactId>
	<version>0.6.1</version>
</dependency>

Other build tools

http://mvnrepository.com/artifact/org.scalanlp/breeze-math_2.10/0.6.1 (as an example) is a great resource for finding other configuration examples for other build tools.

Building Breeze

You should not need to build Breeze yourself but in the case you do, here are the steps:

Breeze is hosted on github and is built with sbt.

Set up sbt following their instructions, and then run sbt. The following targets are useful:

  • compile -- Builds the library
  • test -- Runs the unit tests
  • doc -- Builds scaladoc for the public API
  • publish-local -- Copies jars to local Ivy repository.
  • assembly -- Builds a distributable jar
  • console -- starts a scala repl

Note: you might need more than the default amount of memory to get Breeze to build. The following environment variable is known to work well:

export SBT_OPTS="-Xmx3g -XX:+CMSClassUnloadingEnabled -XX:PermSize=256M -XX:MaxPermSize=512M"
Clone this wiki locally