Top Level Namespace

Defined Under Namespace

Modules: CbcWrapper

Constant Summary collapse

ROOT_DIR =
File.dirname(File.absolute_path(__FILE__))
TARBALL_PATH =
"/tmp/Cbc.tgz"
CBC_SRC_DIR =
"/tmp/Cbc-2.9.9"
CBC_INSTALL =
"#{ROOT_DIR}/install"

Instance Method Summary collapse

Instance Method Details

#install_cbcObject



7
8
9
10
11
12
13
14
15
16
17
18
# File 'ext/cbc-wrapper/extconf.rb', line 7

def install_cbc
  system "curl -o #{TARBALL_PATH} https://www.coin-or.org/download/source/Cbc/Cbc-2.9.9.tgz"
  Dir.chdir "/tmp" do
    system "rm -rf #{CBC_SRC_DIR}; tar -xzf #{TARBALL_PATH}"
    res = system "cd #{CBC_SRC_DIR} && ./configure --prefix=#{CBC_INSTALL} -C --with-pic --without-static && make -j `bash -c \"grep -c ^processor /proc/cpuinfo\"` && make install"
    unless res
      puts "Failed to build CBC, aborting... Cbc source is in #{CBC_SRC_DIR}"
      exit 1
    end
    system "rm -rf #{CBC_SRC_DIR}"
  end
end