lean2/doc/make/ubuntu-12.04-detailed.md
Leonardo de Moura b92a3e482d Create doc directory for documentation. Move wiki pages to doc. Reorganize README.md
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-09-13 10:57:45 -07:00

2.1 KiB

Preparing working environment on Ubuntu 12.04

Install basic packages

 sudo apt-get install git
 sudo apt-get install libgmp-dev
 sudo apt-get install libmpfr-dev
 sudo apt-get install cmake

 sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
 sudo update-alternatives --remove-all gcc
 sudo update-alternatives --remove-all g++
 sudo apt-get update
 sudo apt-get install g++-4.8 -y
 sudo apt-get upgrade -y && sudo apt-get dist-upgrade -y

 sudo ln -s /usr/bin/g++-4.8 /usr/bin/g++

Optional packages

 sudo apt-get install gitg
 sudo apt-get install valgrind
 sudo apt-get install doxygen
 sudo apt-get install kcachegrind

Fork Lean on github : https://github.com/leodemoura/lean

Create a projects directory

 cd ~
 mkdir projects
 cd projects

Clone your fork

 git clone https://github.com/[your-user-name]/lean.git

Build Lean in debug mode

 cd lean
 mkdir -p build/debug
 cd build/debug
 cmake -D CMAKE_BUILD_TYPE=Debug ../../src
 make

If you are using Emacs, here are some basic configurations

 (custom-set-variables
   '(c-basic-offset 4)
   '(global-font-lock-mode t nil (font-lock))
   '(show-paren-mode t nil (paren))
   '(transient-mark-mode t))


 (tool-bar-mode -1)
 (setq visible-bell t)
 (setq-default indent-tabs-mode nil)
 (setq visible-bell t)
 (column-number-mode 1)

 ;; Coding Style
 (setq auto-mode-alist (cons '("\\.h$" . c++-mode) auto-mode-alist))
 (defconst my-cc-style
   '("cc-mode"
    (c-offsets-alist . ((innamespace . [0])))))
 (c-add-style "my-cc-mode" my-cc-style)
 (add-hook 'c++-mode-hook '(lambda ()
                              (c-set-style "my-cc-mode")
                              (gtags-mode 1)
                             ))

 ;; C++ 11 new keywords
 (font-lock-add-keywords 'c++-mode
    '(("\\<\\(thread_local\\)\\>" . font-lock-warning-face)
     ("\\<\\(constexpr\\)\\>" . font-lock-keyword-face)
     ))