PhantomJS 2.0 built for Windows, Mac, and Linux!

8,068 views
Skip to first unread message

oddi...@gmail.com

unread,
May 20, 2014, 2:22:46 PM5/20/14
to phan...@googlegroups.com
This zip contains the build instructions for Windows, Mac, and Linux, along with the pre-built binaries for Windows, Mac, and Linux 32bit and 64bit. The only one I didn't build myself was the 64bit Linux. One thing you should change if you compile yourself is to use https://github.com/Vitallium/phantomjs-qt5 instead of KDAB one as Vitaliy has updated his with the patches from theirs and other fixes. 

http://www.datafilehost.com/d/07ca4477


Much thanks to Vitaliy for spending the time helping me get this built on windows! Here are the step by step build directions that builds it manually(as I couldn't get build.cmd to work)

-= How To Build The Source For Windows=-
cd phantomjs-qt5
git submodule init
git submodule update
cd src/qt
rename phantomjs-3rdparty-win 3rdparty
notepad.exe preconfig.cmd


then change !BUILD_TYPE! to release sand save it

cd ../../
env.cmd
cd src/qt
preconfig.cmd
cd qtbase
nmake
cd ../qtwebkit
..\qtbase\bin\qmake && nmake
cd ..\..
qt\qtbase\bin\qmake && nmake

oddi...@gmail.com

unread,
May 20, 2014, 2:26:24 PM5/20/14
to phan...@googlegroups.com

Also much thanks to KDAB and Sergio for all the hardwork they've done on PhantomJS 2 in the recent months. Lastly Vitaliy said he fixed the onerror issue(Which the windows build above, not the linux/mac ones have applied) and I believe he said the rest of the 1.9 API should work in 2.0 as well.

phantom...@gmail.com

unread,
May 20, 2014, 11:16:03 PM5/20/14
to phan...@googlegroups.com
oh nice.. has there been more (significant?) work on the 2.x series?  I know onError was a big one.

What do the current test results look like?

I should probably pull and rebuild :-P

BTW.  the Linux binaries might be problematic as there are differing ICU versions depending if you're on Debian.

So YMMV... 

But this is becoming exciting.
Message has been deleted

oddity none

unread,
May 21, 2014, 5:16:27 AM5/21/14
to phan...@googlegroups.com

It's 32bit, and my first post has the download link thanks!

On May 21, 2014 2:49 AM, "Chukwudi Nwachukwu" <hsys...@gmail.com> wrote:
Could you please place the prebuilt one somewhere for others to use? Also, is it x86 or x64, you need to specify.

--
You received this message because you are subscribed to the Google Groups "phantomjs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to phantomjs+...@googlegroups.com.
Visit this group at http://groups.google.com/group/phantomjs.
For more options, visit https://groups.google.com/d/optout.

Nwachukwu Martin

unread,
May 21, 2014, 5:33:04 AM5/21/14
to phan...@googlegroups.com
You're right. I've tried running it but it blew up on x64


--
You received this message because you are subscribed to a topic in the Google Groups "phantomjs" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/phantomjs/cgTH-jqCSGg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to phantomjs+...@googlegroups.com.

Someone

unread,
May 21, 2014, 5:49:59 AM5/21/14
to phan...@googlegroups.com
Please build a 64 bit version for Windows. 

Thanks

Vitaliy Slobodin

unread,
May 21, 2014, 5:51:53 AM5/21/14
to phan...@googlegroups.com
Why do you need 64 bit version?

Wednesday, May 21, 2014 1:49 PM
Please build a 64 bit version for Windows. 

Thanks
--
You received this message because you are subscribed to the Google Groups "phantomjs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to phantomjs+...@googlegroups.com.
Visit this group at http://groups.google.com/group/phantomjs.
For more options, visit https://groups.google.com/d/optout.
Tuesday, May 20, 2014 10:22 PM
--
You received this message because you are subscribed to the Google Groups "phantomjs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to phantomjs+...@googlegroups.com.
Visit this group at http://groups.google.com/group/phantomjs.
For more options, visit https://groups.google.com/d/optout.

--
Regards,
Vitaly Slobodin.


Message has been deleted

Jim Evans

unread,
May 21, 2014, 7:17:15 AM5/21/14
to phan...@googlegroups.com
What difference does that make? What bit-ness Internet Explorer supports is entirely irrelevant to PhantomJS.

Also, what you think is 64-bit for Internet Explorer really isn't, at least with IE10 and 11. Though you *think* you're running a 64-bit process for Internet Explorer, that's only the "manager" process, which is responsible for drawing the so-called browser chrome (the address bar, tool bars, and the like). The actual process that does the rendering is a 32-bit iexplore.exe process. See http://blogs.msdn.com/b/ieinternals/archive/2012/03/23/understanding-ie10-enhanced-protected-mode-network-security-addons-cookies-metro-desktop.aspx for more details.

On Wednesday, May 21, 2014 7:02:22 AM UTC-4, Someone wrote:
IE was 64 bit a long time ago. :)

Someone

unread,
May 21, 2014, 7:59:39 AM5/21/14
to phan...@googlegroups.com
Alright then not IE. But Waterfox is fully 64 bit. And this is a fact.

Someone

unread,
May 21, 2014, 8:03:13 AM5/21/14
to phan...@googlegroups.com
And yes now even Chrome. Time has come for 64 bit.

Jim Evans

unread,
May 21, 2014, 8:40:25 AM5/21/14
to phan...@googlegroups.com
I note that neither of the projects you've pointed to are *actually* supported by the browser vendor in question ("Waterfox" is not produced by Mozilla; "64-bit Chrome" is simply the open-source Chromium project compiled as a 64-bit executable by a third party). You haven't provided any use case for a 64-bit executable for PhantomJS other than you just want one. At any rate, this discussion has strayed pretty far afield from the original conversation topic, so I'm going to let this be my last word on the matter.

Someone

unread,
Jun 3, 2014, 11:45:19 AM6/3/14
to phan...@googlegroups.com

Marcel Moch

unread,
Jun 27, 2014, 6:48:06 AM6/27/14
to phan...@googlegroups.com, oddi...@gmail.com
Hello!

First off i'm fairly new to compiling/building and Linux!

For some days now I'm trying to compile/build phantomjs 2 on different platforms with a lot of research in the internet, but without success so far. Right now I'm trying to get this done via VirtualBox and Linux Ubuntu 64-bit.

I followed the instructions on https://github.com/ariya/phantomjs/wiki/PhantomJS-2 but without any success. It builds a fair while, but finally it errors this way:

Encountered 6 configuration warning(s):

! QtQuick module not found, QML APIs will not be built
! Qt not configured to use system libjpeg, QImageDecoder will decode JPEG images
! Qt not configured to use system libpng, QImageDecoder will decode PNG images
! Missing GStreamer or QtMultimedia, disabling HTML5 media element support
! Missing QtTest module, disabling DumpRenderTree, WebKitTestRunner and tests
! QtWebKitQml will not be build. It is not supported with static linking

The WebKit build was disabled for the following reasons:

* Missing bison from PATH
* Missing ruby from PATH
* Missing flex from PATH

make: Für das Ziel »first« ist nichts zu tun. Building main PhantomJS application. Please wait...

cd src/ && ( test -e Makefile.phantomjs || /home/test-os/phantomjs-qt5/src/qt/qtbase/bin/qmake /home/test-os/phantomjs-qt5/src/phantomjs.pro -o Makefile.phantomjs ) && make -f Makefile.phantomjs Project ERROR: Unknown module(s) in QT: webkitwidgets make: *** [sub-src-phantomjs-pro-make_first-ordered] Fehler 3

I researched on the given error-statements, like "QtQuckModule not found" and "Qt not configured to use system libjpeg", also for the "Missing XYZ from PATH", but i didn't find a solution so far.


So by further reseach for phantomjs 2 I found this thread. But I'm wondering how to use the files provided in your zip-file? In the "linux_64" folder i only find this one file "phantomjs" without any externsion. What to do with this? The mentioned packages in the readme.txt i did install by using apt-get install, but what now?

Any help is much appreciated!

Thanks in advance!

Marc

Sean McNamara

unread,
Jun 27, 2014, 8:17:40 AM6/27/14
to phan...@googlegroups.com
Hi,

Looks like a typical case of missing dependencies (which is the most common reason builds fail; see here http://www.itworld.com/big-data/424262/why-software-builds-fail ).


On Fri, Jun 27, 2014 at 6:48 AM, Marcel Moch <m.mo...@googlemail.com> wrote:
Hello!

First off i'm fairly new to compiling/building and Linux!

For some days now I'm trying to compile/build phantomjs 2 on different platforms with a lot of research in the internet, but without success so far. Right now I'm trying to get this done via VirtualBox and Linux Ubuntu 64-bit.

I followed the instructions on https://github.com/ariya/phantomjs/wiki/PhantomJS-2 but without any success. It builds a fair while, but finally it errors this way:

Encountered 6 configuration warning(s):

! QtQuick module not found, QML APIs will not be built
! Qt not configured to use system libjpeg, QImageDecoder will decode JPEG images
! Qt not configured to use system libpng, QImageDecoder will decode PNG images
! Missing GStreamer or QtMultimedia, disabling HTML5 media element support
! Missing QtTest module, disabling DumpRenderTree, WebKitTestRunner and tests
! QtWebKitQml will not be build. It is not supported with static linking

The WebKit build was disabled for the following reasons:

* Missing bison from PATH
* Missing ruby from PATH
* Missing flex from PATH


The above 3 lines look like (what seems to me) a pretty obvious indicator of why the build failed. You either don't have bison, ruby and flex installed at all; or if you do, there aren't any symlinks from the actual binaries to the expected filenames.

So the solution here is first to make absolutely sure that you have run this line from the instructions wiki you linked above:

sudo apt-get install sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer fontconfig libfreetype6
If you're sure you did that, the next step is to start typing one of those commands, like `ruby`, then press the Tab key and see what comes up. Maybe it'll fill it in with "ruby-1.9" or "ruby-2.1" or something. If it doesn't fill in the line at all, then try running `which ruby`. If it doesn't display a path where the ruby binary is, then the above apt-get line didn't successfully install any ruby package. Similarly for bison and flex. If it *does* display a path, for example "/usr/bin/ruby", then we have to determine why the WebKit build incorrectly thinks that these tools are not installed when, in fact, they are. But I am going to work with the hypothesis that the tools aren't installed as I write the rest of this post, because it's the most likely problem.

The reason it might not install one of the dependencies (or any of them...) could be due to a number of reasons, such as: broken dependencies; missing or offline package repositories; or wrong package names (or package names replaced with a virtual package, requiring you to pick a specific implementation package). You really need to read the entire output of the apt-get command and understand each line to determine whether the installation was successful. When running commands like that, you can't just say "oh, I don't understand anything about that, so I'm not going to try and read it, and just assume it worked". Quite the contrary: you must understand exactly what it is telling you. It is impossible for me to tell you what is wrong, because it could be so many different things. You didn't state which version of Ubuntu you're using, so I can't even look up whether those package names are correct for your distro version.

I don't speak German, so copying and pasting the error you get from apt-get is not really going to help unless someone else on this list speaks German. You'd have to translate it to English. I don't have confidence that Google Translate would do a good job, so please translate it manually.

One thing you might use in the future to help you determine whether you are installing the correct packages is the Ubuntu package list online. See here: http://packages.ubuntu.com/trusty/ruby (that specific page displays details on the "ruby" package for Ubuntu 14.04; if you aren't running Ubuntu 14.04, then you will need to go to http://packages.ubuntu.com and search for the package with the correct distro version.) By looking up the package names, you can see whether those packages exist for your Ubuntu version, and if they do, whether they're installable or not (some packages might be deprecated or require you to select a particular version.)
 

make: Für das Ziel »first« ist nichts zu tun. Building main PhantomJS application. Please wait...

cd src/ && ( test -e Makefile.phantomjs || /home/test-os/phantomjs-qt5/src/qt/qtbase/bin/qmake /home/test-os/phantomjs-qt5/src/phantomjs.pro -o Makefile.phantomjs ) && make -f Makefile.phantomjs Project ERROR: Unknown module(s) in QT: webkitwidgets make: *** [sub-src-phantomjs-pro-make_first-ordered] Fehler 3

I researched on the given error-statements, like "QtQuckModule not found" and "Qt not configured to use system libjpeg", also for the "Missing XYZ from PATH", but i didn't find a solution so far.


So by further reseach for phantomjs 2 I found this thread. But I'm wondering how to use the files provided in your zip-file? In the "linux_64" folder i only find this one file "phantomjs" without any externsion. What to do with this? The mentioned packages in the readme.txt i did install by using apt-get install, but what now?


Using the binary that was previously built by the guy who started this thread is a completely different process from compiling. Typically, you would only need to compile if you need a newer version of PJS than the version which has been distributed already. You should be able to install compatible library dependencies on almost any distro and get it running.

On GNU/Linux, executable files don't have any file extension. I guess if you are new to GNU/Linux environment this can seem unusual, but it is perfectly typical. You just need to unpack the phantomjs file from its zip file, then make it executable a la `chmod +x phantomjs`, then run it a la `./phantomjs` (or copy it to /usr/bin and then run it by just typing `phantomjs`). Of course this won't work if you lack the required library dependencies (and the correct versions!) but those dependencies should be documented in the readme.txt and/or the wiki. You don't need bison, flex or ruby to run the built binary, just a bunch of packages starting with "lib" (library packages).

 

--

Marcel Moch

unread,
Jun 27, 2014, 3:27:03 PM6/27/14
to phan...@googlegroups.com
Hello Sean!

Thanks a lot for your post and helpful informations!

First off I'm using Ubuntu 14.04 via Virtual Box 4.3


The above 3 lines look like (what seems to me) a pretty obvious indicator of why the build failed. You either don't have bison, ruby and flex installed at all; or if you do, there aren't any symlinks from the actual binaries to the expected filenames.

So the solution here is first to make absolutely sure that you have run this line from the instructions wiki you linked above:

sudo apt-get install sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer fontconfig libfreetype6
If you're sure you did that, the next step is to start typing one of those commands, like `ruby`, then press the Tab key and see what comes up. Maybe it'll fill it in with "ruby-1.9" or "ruby-2.1" or something. If it doesn't fill in the line at all, then try running `which ruby`. If it doesn't display a path where the ruby binary is, then the above apt-get line didn't successfully install any ruby package. Similarly for bison and flex. If it *does* display a path, for example "/usr/bin/ruby", then we have to determine why the WebKit build incorrectly thinks that these tools are not installed when, in fact, they are. But I am going to work with the hypothesis that the tools aren't installed as I write the rest of this post, because it's the most likely problem.

Yeah, I'm sure i did run this like exactly like it's stated. Then I tried the mentioned command `ruby (here i was a bit confused because you write "Tab key", which I tried but nothing happened; pressed "Enter" instead), and then the first time i entered it there was something like "ruby is inside: ruby 1.9"...i did the command a second time, but then nothing showed up?! "which ruby" didn't provide any putput too. So in result there was no path given that I could have a look at...but I did run the command above without any error related to ruby, flex nor bison, so i'm confused...


You really need to read the entire output of the apt-get command and understand each line to determine whether the installation was successful. When running commands like that, you can't just say "oh, I don't understand anything about that, so I'm not going to try and read it, and just assume it worked". Quite the contrary: you must understand exactly what it is telling you. It is impossible for me to tell you what is wrong, because it could be so many different things. You didn't state which version of Ubuntu you're using, so I can't even look up whether those package names are correct for your distro version.

I did read the output of the apt-get commands I used (there were several others I had to use/install to get this far at all); all of them went fine without any troubles, as far as i could understand the given output. I'm aware that I have to understand at least if the package i wanted to install got installed or not, so I make sure that this is the case.

I don't speak German, so copying and pasting the error you get from apt-get is not really going to help unless someone else on this list speaks German. You'd have to translate it to English. I don't have confidence that Google Translate would do a good job, so please translate it manually.

Sorry, didn't think of that! I thought these error messages are so common that you might understand the short german parts as well...

make: Für das Ziel »first« ist nichts zu tun. Building main PhantomJS application. Please wait...

something like: make: For the target >>first<< is nothing to do.


Typically, you would only need to compile if you need a newer version of PJS than the version which has been distributed already. You should be able to install compatible library dependencies on almost any distro and get it running.

Sure...i could use sudo apt-get install phantomjs, but with this command I only get phantomjs 1.9.7. But I need phantomjs2 for another script i want to use, that's why I'm trying to build PJS 2

On GNU/Linux, executable files don't have any file extension. I guess if you are new to GNU/Linux environment this can seem unusual, but it is perfectly typical. You just need to unpack the phantomjs file from its zip file, then make it executable a la `chmod +x phantomjs`, then run it a la `./phantomjs` (or copy it to /usr/bin and then run it by just typing `phantomjs`). Of course this won't work if you lack the required library dependencies (and the correct versions!) but those dependencies should be documented in the readme.txt and/or the wiki. You don't need bison, flex or ruby to run the built binary, just a bunch of packages starting with "lib" (library packages).

Coming to this solution: I downloaded the zip-file and unpacked it into a new folder. Like it's stated in the readme.txt i used the following commands:

sudo apt-get install libicu48

outout:

Reading package lists... Done
Building dependency tree      
Reading state information... Done
Package libicu48 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'libicu48' has no installation candidate


Then I thought go fot the libicu52, with this result:

Reading package lists... Done
Building dependency tree      
Reading state information... Done
libicu52 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 269 not upgraded.


So i assume this is installed (?)...

sudo apt-get install ttf-mscorefonts-installer fontconfig libfreetype6 libfontconfig1

then used the command `chmod +x phantomjs' and ran it with `./phantomjs`

./phantomjs: error while loading shared libraries: libicui18n.so.48: cannot open shared object file: No such file or directory

So no success again.



My thought was if i can install either phantomjs by using `sudo apt-get install phantomjs`, install the 1.9.7 version and then somehow "re-build" it by using this newly downloaded executable file to get to version 2.0?

Or second thought was to build the official running PJS-version 1.9.7 from source and then execute the downloaded file `phantomjs`? But in which folder?

I wouldn't have thought in advance that it's so hard to build something like that :) Thought I was quite able to "read" what's going on and help myself by using forums, stackoverflow-answers, this google group and all i could find.



I tried it again in a new Virtual Machine I created, again with Ubuntu 14.04, this are the commands so far:

sudo apt-get install git

git clone https://github.com/Vitallium/phantomjs-qt5.git
cd phantomjs
git submodule init
git submodule update

sudo apt-get install sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer fontconfig libfreetype6

ERROR:
Package libicu48 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'libicu48' has no installation candidate

So I tried to use

sudo apt-get install libicu52 (newer version?)

libicu52 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 274 not upgraded.

chmod +x build.sh
./build.sh --confirm --jobs 10

This time the process stopped very quickly...

/home/marc/phantomjs-qt5/src/qt/qtbase/qmake/option.cpp
make: g++: Command not found
make: *** [project.o] Error 127
make: *** Waiting for unfinished jobs....
make: *** [option.o] Error 127
make: *** No targets specified and no makefile found. Stop.
~/phantomjs-qt5/src/qt
./build.sh: line 113: ../qtbase/bin/qmake: No such file or directory

So i ran some other commands i used in my try before I also did navigate to the "root-folder" with cd / before and ran the sudo-command in the root, not in the phantomjs-qt5-folder, like i did this time) :

sudo apt-get update sudo apt-get install build-essential chrpath git-core libssl-dev libfontconfig1-dev sudo apt-get install libfontconfig1-dev ​libxft-dev libqtcore4 libqtgui4 (libqtgui4 gives an error E: Unable to locate package ​libxft-dev)
sudo apt-get install libicu-dev
sudo apt-get install gperf
sudo apt-get install libtool
sudo apt-get install autoconf
sudo apt-get install automake (here was an output like: automake set to manually?)
git clone
git://anongit.freedesktop.org/fontconfig
cd fontconfig
./autogen.sh
make
sudo make install
cd ~/phantomjs-qt5
sudo apt-get install sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer libfreetype6
cd ~/phantomjs-qt5
git submodule init
git submodule update
chmod +x build.sh
./build.sh --confirm --jobs 10

So after 3 hrs of processing it crashed again with the same errors:

Encountered 6 configuration warning(s):

 ! QtQuick module not found, QML APIs will not be built
 ! Qt not configured to use system libjpeg, QImageDecoder will decode JPEG images
 ! Qt not configured to use system libpng, QImageDecoder will decode PNG images
 ! Missing GStreamer or QtMultimedia, disabling HTML5 media element support
 ! Missing QtTest module, disabling DumpRenderTree, WebKitTestRunner and tests
 ! QtWebKitQml will not be build. It is not supported with static linking

The WebKit build was disabled for the following reasons:
    * Missing bison from PATH
    * Missing ruby from PATH
    * Missing flex from PATH

make: Nothing to be done for `first'.

Building main PhantomJS application. Please wait...

cd src/ && ( test -e Makefile.phantomjs || /home/marc/phantomjs-qt5/src/qt/qtbase/bin/qmake /home/marc/phantomjs-qt5/src/phantomjs.pro -o Makefile.phantomjs ) && make -f Makefile.phantomjs
Project ERROR: Unknown module(s) in QT: webkitwidgets
make: *** [sub-src-phantomjs-pro-make_first-ordered] Error 3

Then I typed in `ruby` and got this:

The program 'ruby' can be found in the following packages:
 * ruby
 * ruby1.8
Try: sudo apt-get install <selected package>


So after that I tried to run:

sudo apt-get install ruby

All seemed fine, no errors....but by typing "ruby" again it halts and nothing happens at all...so no path again :( the terminal is just hanging...

I'm desperate ;) Sorry for this extremely long post though; wanted to provide all the info i have so far..

Would be great if you could have a look again and have another hint for one of the ways (build from source, using the prebuild-zip-file).

Byebye,
Marc

Marcel Moch

unread,
Jun 29, 2014, 8:00:21 AM6/29/14
to phan...@googlegroups.com, oddi...@gmail.com
So I tried again some things after my last post and the interrupted building of PJS 2. I looked again for the ruby/flex/bison-packages and installed them by using `sudo apt-get install <package name>`. This all went fine, after the installation and typing `which ruby/flex/bison` I get the path like `usr/bin/ruby`etc.

The same i did for every package mentioned in the command


sudo apt-get install sqlite3 libsqlite3-dev g++ ruby gperf bison flex libfontconfig1 libfontconfig1-dev libicu48 libicu-dev ttf-mscorefonts-installer fontconfig libfreetype6

sqlite3 - installed
libsqlite3-dev - no output (same with `which libsqlite3`, but `sudo at-get install libsqlite3-dev`says "already the newest version")
`which ruby` - output gives correct path
`which gperf` - output gives correct path
`which bison` - output gives correct path
`which flex` - output gives correct path
`sudo apt-get install libfontconfig1 - newest version
`sudo apt-get install libfontconfig1-dev - newest version
`sudo apt-get install libicu48 - same problem as before
"Package libicu48 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'libicu48' has no installation candidate
"
`sudo apt-get install libicu-dev - newest version
`sudo apt-get install ttf-mscorefonts-installer - newest version
`sudo apt-get install fontconfig - newest version
`sudo apt-get install libfreetype6 - newest version

So all - except for the libicu48 - seem ok to me?!

Then I deleted my phantom-js folder and startet the process again:

git submodule init
git submodule update

chmod +x build.sh
./build.sh --confirm --jobs 10



This team the process took about 7 hours (can this be true/normal?) until it broke again with the following output:

`main.cpp:61:91: note: candidates are:
In file included from main.cpp:39:0:
breakpad/src/client/linux/handler/exception_handler.h:129:3: note: google_breakpad::ExceptionHandler::ExceptionHandler(const google_breakpad::MinidumpDescriptor&, google_breakpad::ExceptionHandler::FilterCallback, google_breakpad::ExceptionHandler::MinidumpCallback, void*, bool, int)
   ExceptionHandler(const MinidumpDescriptor& descriptor,
   ^
breakpad/src/client/linux/handler/exception_handler.h:129:3: note:   candidate expects 6 arguments, 5 provided
breakpad/src/client/linux/handler/exception_handler.h:76:7: note: google_breakpad::ExceptionHandler::ExceptionHandler(const google_breakpad::ExceptionHandler&)
 class ExceptionHandler {
       ^
breakpad/src/client/linux/handler/exception_handler.h:76:7: note:   candidate expects 1 argument, 5 provided
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DHAVE_CONFIG_H -DHAVE_FCNTL_H -DHAVE_STDARG_H -DHAVE_STDINT_H -DHAVE_UNISTD_H -DUSE_UTF8 -DSTATIC_BUILD -DQCOMMANDLINE_STATIC -DQT_NO_DEBUG -DQT_WEBKITWIDGETS_LIB -DQT_PRINTSUPPORT_LIB -DQT_WEBKIT_LIB -DQT_WIDGETS_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -Iqt/qtbase/mkspecs/linux-g++ -I. -Igif -Imongoose -Ilinenoise/src -Iqcommandline -Ibreakpad/src -Iqt/qtbase/include -Iqt/qtbase/include/QtWebKitWidgets -Iqt/qtbase/include/QtPrintSupport -Iqt/qtbase/include/QtWebKit -Iqt/qtbase/include/QtWidgets -Iqt/qtbase/include/QtNetwork -Iqt/qtbase/include/QtGui -Iqt/qtbase/include/QtCore -I. -o terminal.o terminal.cpp
make[1]: *** [main.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/home/marc/phantomjs-qt5/src'
make: *** [sub-src-phantomjs-pro-make_first-ordered] Error 2

So once again I have no clue what's the problem here...it looked fine during the process before, though i didn't look for it for the whole 7 hours!

Any hint on this anyone?


liska...@gmail.com

unread,
Aug 18, 2014, 7:12:55 PM8/18/14
to phan...@googlegroups.com, oddi...@gmail.com
I built https://github.com/Vitallium/phantomjs/tree/2.0  on Ubuntu following these instructions https://github.com/ariya/phantomjs/wiki/PhantomJS-2.

Additionally I had to do brute-force chmod -R 755 ./* otherwise there were tons of weird errors. Setting 755 permissions recursively resolved everything.

Ariya Hidayat

unread,
Aug 19, 2014, 9:26:08 AM8/19/14
to phan...@googlegroups.com, oddi...@gmail.com
It's because you build the wrong repo & branch.
https://github.com/ariya/phantomjs/wiki/PhantomJS-2 already mentions
what you need to clone (see the "Source code" section). If you follow
the steps in that wiki page faithfully, it should build smoothly on
Ubuntu.
> --
> You received this message because you are subscribed to the Google Groups
> "phantomjs" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to phantomjs+...@googlegroups.com.
> Visit this group at http://groups.google.com/group/phantomjs.
> For more options, visit https://groups.google.com/d/optout.



--
Ariya Hidayat, http://ariya.ofilabs.com
http://twitter.com/ariyahidayat
http://google.com/+AriyaHidayat

Andrew Hamilton

unread,
Aug 19, 2014, 12:13:25 PM8/19/14
to phan...@googlegroups.com, oddi...@gmail.com
I just updated the Wiki page. I've seen that the more recent versions of Ubuntu that the libicu48 package is missing, and that newer version do not seem to work, so I included build instructions for libicu48. Also added libssl-dev to the install list since I needed it in my latest attempt. 

Ariya Hidayat

unread,
Aug 19, 2014, 2:24:02 PM8/19/14
to phan...@googlegroups.com, oddi...@gmail.com
I doubt that you need exactly ICU version 4.8.

Did you try installing *only* libicu-dev? If that works, that's all it
needs and there is no need to build ICU 4.8 from source.

Artem Koshelev

unread,
Aug 29, 2014, 5:52:16 AM8/29/14
to phan...@googlegroups.com, oddi...@gmail.com
Hi everyone,

can't build 2.0 on mac os 10.9.

Run build with command

./build.sh --confirm --qt-config "-I /usr/local/Cellar/qt5/5.3.1/include/ -L /usr/local/Cellar/qt5/5.3.1/lib/"

which exit with a following message:

cd Tools/ && ( test -e Makefile.Tools || /Users/artkoshelev/workspace/phantomjs/src/qt/qtbase/bin/qmake /Users/artkoshelev/workspace/phantomjs/src/qt/qtwebkit/Tools/Tools.pro -o Makefile.Tools ) && /Applications/Xcode.app/Contents/Developer/usr/bin/make -f Makefile.Tools 
/Users/artkoshelev/workspace/phantomjs/src/qt/qtbase/bin/qmake -o Makefile.Tools Tools.pro
make[1]: Nothing to be done for `first'.
Building main PhantomJS application...
cd src/ && ( test -e Makefile.phantomjs || /Users/artkoshelev/workspace/phantomjs/src/qt/qtbase/bin/qmake /Users/artkoshelev/workspace/phantomjs/src/phantomjs.pro -o Makefile.phantomjs ) && /Applications/Xcode.app/Contents/Developer/usr/bin/make -f Makefile.phantomjs 
make[1]: *** No rule to make target `qt/mkspecs/macx-g++/qmake.conf', needed by `Makefile.phantomjs'.  Stop.

make: *** [sub-src-phantomjs-pro-make_first-ordered] Error 2

any ideas?

Cheers,
Artem 

вторник, 20 мая 2014 г., 22:22:46 UTC+4 пользователь oddi...@gmail.com написал:

Artem Koshelev

unread,
Sep 2, 2014, 5:55:40 AM9/2/14
to phan...@googlegroups.com, oddi...@gmail.com
and the same error when running just

./build.sh --confirm

Cheers,
Artem

пятница, 29 августа 2014 г., 13:52:16 UTC+4 пользователь Artem Koshelev написал:

Kjell E

unread,
Dec 18, 2014, 9:25:25 AM12/18/14
to phan...@googlegroups.com

If anyone still has trouble building a windows binary from the phantomjs-master branch, I built a version (x86) from the master branch yesterday and I've included a step-by-step instruction on how to get "build.cmd" to work on windows (7 or 8) using the Visual Studio 2012 tool chain, see fork: https://github.com/kjelloe/phantomjs/

- Kjell

Tom Wilson

unread,
Dec 19, 2014, 10:39:45 AM12/19/14
to phan...@googlegroups.com
Would you mind posting the resulting .exe files for the windows build?

Kjell E

unread,
Dec 20, 2014, 9:38:25 PM12/20/14
to phan...@googlegroups.com

Jacek Migdał

unread,
Dec 21, 2014, 12:57:44 AM12/21/14
to phan...@googlegroups.com
Thanks so much!

Jacek

Tamás Sallai

unread,
Mar 3, 2015, 4:56:02 AM3/3/15
to phan...@googlegroups.com, ja...@migdal.pl
I also needed the Linux binary, and I've made a one-liner to easily build it. Hope you'll find it useful: https://advancedweb.hu/2015/03/03/quick-and-dirty-way-to-build-phantomjs2-from-source/

-Tamás
Reply all
Reply to author
Forward
0 new messages