-
Notifications
You must be signed in to change notification settings - Fork 1
Install DLint Manually
All following instructions assume that the current working directory is the root direcotry of DLint and that the main jalangi directory is a sibling directory of DLint (do not worry about it: commands in Install
section will make sure this happens). This project currently supports Mac OS and Linux.
This project is built upon jalangi.
If you already have Jalangi executed on your machine, you can skip this section and go to the Install
section.
Jalangi is tested on Mac OS X 10.8 with Chromium browser. Jalangi should work on Mac OS 10.7, Ubuntu 11.0 and higher and Windows 7 or higher. Jalangi will NOT work with IE.
- Latest version of Node.js available at http://nodejs.org/. We have tested Jalangi with Node v0.10.25.
- Sun's JDK 1.6 or higher. We have tested Jalangi with Java 1.6.0_43.
- Command-line git.
- libgmp (http://gmplib.org/) is required by cvc3. Concolic testing uses cvc3 and automaton.jar for constraint solving. The installation script checks if cvc3 and automaton.jar are installed properly.
- Chrome browser if you need to test web apps.
- Python (http://python.org) version 2.7 or higher
On Windows you need the following extra dependencies:
- Install Microsoft Visual Studio 2010 (Free express version is fine).
- If on 64bit also install Windows 7 64-bit SDK.
If you have a fresh installation of Ubuntu, you can install all the requirements by invoking the following commands from a terminal.
sudo apt-get update
sudo apt-get install python-software-properties python g++ make
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
sudo update-java-alternatives -s java-7-oracle
sudo apt-get install git
sudo apt-get install libgmp10
sudo apt-get install chromium-browser
Step 1: execute the following commands to install basic libraries for DLint:
node src/js/install.js
npm install cli
npm install stats
npm install jshint
npm install doctrine
npm install xmldom
npm install jsdom@3.1.2
npm install node-js-beautify
npm install google-search-scraper
export PATH="`pwd`/scripts/path_unix":$PATH
Step 2:
- Install our custom version of Firefox: Linux (64 bit), (Mirror-1), Mac OS (64 bit), (Mirror-1). More details here.
- In file,
src/java/evaluation/ExperimentRunner.java
andsrc/java/evaluation/OctaneExperimentRunner.java
: Make sure the variablefirefoxBinary
points to the location where you installed the custom version of Firefox.
// modify the following assignment with the correct value.
final String firefoxBinary = "/Applications/Nightly.app/Contents/MacOS/firefox-bin";
Step3: execute the following commands to compile the Java code:
javac -d thirdparty -cp thirdparty/selenium-server-standalone-2.41.0.jar `pwd`/src/java/evaluation/ExperimentRunner.java
javac -d thirdparty -cp thirdparty/selenium-server-standalone-2.41.0.jar `pwd`/src/java/evaluation/JalangiFirefoxRunner.java
javac -d thirdparty -cp thirdparty/selenium-server-standalone-2.41.0.jar `pwd`/src/java/evaluation/OctaneExperimentRunner.java
Step 4: Install the GUI warning viewer for DLint:
cd ..
git clone https://github.com/JacksonGL/noide.git
cd noide
npm install ncp
npm install less
npm install vash
npm install rimraf
npm install express
npm install morgan
npm install chokidar
npm install socket.io
npm install browserify
npm install js-beautify
npm install body-parser
npm install cookie-parser
npm install static-favicon
npm install emitter-component
npm run build
cd ../DLint
Now you are good to go, have fun with DLint!