-
Notifications
You must be signed in to change notification settings - Fork 5.7k
PhantomJS 2
The next version, PhantomJS 2, is still in the development. It will be based on Qt 5.
As of May 2014 it is based on webkit 538.1 (7 months old).
git clone git://github.com/ariya/phantomjs.git
cd phantomjs
Warning: Building PhantomJS 2 from source can take a very long time (~30 minutes with 4 parallel compile jobs).
First, install the following packages: sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer fontconfig libfreetype6 libssl-dev
.
On recent Ubuntu distros, the libicu48 package doesn't exist. You can build it with the following commands:
curl http://download.icu-project.org/files/icu4c/4.8.1.1/icu4c-4_8_1_1-src.tgz -O
tar -xvf icu4c-4_8_1_1-src.tgz
cd icu/source
./configure
make
sudo make install
On Debian-based distro, just run:
sudo apt-get install sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer fontconfig libfreetype6 libssl-dev
On Fedora-based distro (tested on CentOS 6), just run:
sudo yum -y install gcc gcc-c++ make flex bison gperf ruby openssl-devel freetype-devel fontconfig-devel libicu-devel sqlite-devel
Then, launch the build:
./build.sh --confirm
NOTE: Using sh
, instead of bash
explicitly, has been reported to fail on some systems.
PhantomJS 2 depends on ICU.
If you use Homebrew, just run:
brew install fontconfig icu4c
brew link fontconfig icu4c (note: you may need to use --force)
If you don't/can't/won't use Homebrew, install ICU like this:
curl -O http://download.icu-project.org/files/icu4c/53.1/icu4c-53_1-src.tgz
tar xf icu4c-53_1-src.tgz
cd icu/source && ./runConfigureICU MacOSX
make -j4
sudo make install
Then, launch the build:
./build.sh --confirm --qt-config "-I /usr/local/include/ -L /usr/local/lib/"
You will need to edit build.sh:
- Add
OSTYPE=freebsd
- Change the two
make -j$COMPILE_JOBS
lines near the end to callgmake
instead ofmake
- Follow the Linux instructions above
NOTE: MSVC2012
is the toolchain currently supported.
After you get the source code, clone this repository to src\qt\3rdparty
. This will download all 3rd party libraries, headers, which are needed to build PhantomJS 2 on Windows.
NOTE: Repository contains libraries for MSVC2012. If you need other versions, please let me know (Vitallium) by creating an issue in repository.
NOTE: You must have Perl, Python, and Ruby on PATH.
Use Visual Studio Command Prompt, go to src\qt\qtbase
, and run configure.bat
. This might fail, but you should get src\qt\qtbase\bin\qmake.exe
.
Now you are ready to build. Use Visual Studio Command Prompt and run
build.cmd
from top directory. The results will go into bin
.
We have two development repositories: KDAB and Vitallium's. We're in the process of merge these two repositories into one.
The main goal before we will create a branch for 2 version is make PhantomJS build on all supported platforms: Linux, OS X and Windows. Those repositories can be found at:
- KDAB repository: https://github.com/KDAB/phantomjs
- Vitallium's repository: https://github.com/Vitallium/phantomjs