WebFaction
Community site: login faq

I'm trying (hard) to install pyv8 to my account. It feels like going blind in circles...

I installed and compiled Boost library following http://www.boost.org/doc/libs/1_53_0/more/getting_started/unix-variants.html

So the library source is in $HOME/src/boost_1_53_0 and it is compiled to $HOME/includes/boost.

Next I downloaded the pyv8 source and tried:

$ export BOOST_HOME=$HOME/includes/boost`
$ python setup.py bdist

But that failed with the following errors, after (successfully?) installing GYP:

    ....after GYP:
====================
INFO: Patching the GYP scripts
INFO: skip to patch the Google v8 build/standalone.gypi file 
====================
INFO: building Google v8 with GYP for ia32 platform with release mode
--------------------
INFO: build v8 from SVN ...

   .... snip....

cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
src/Engine.cpp:5:34: error: boost/thread/locks.hpp: No such file or directory
src/Wrapper.h:64: warning: ‘struct ILazyObject’ has virtual functions but non-virtual destructor
src/Engine.cpp:18: warning: ‘struct MemoryAllocationCallbackBase’ has virtual functions but non-virtual destructor
src/Engine.cpp:28: error: ISO C++ forbids declaration of ‘lock_guard’ with no type
src/Engine.cpp:28: error: typedef name may not be a nested-name-specifier
src/Engine.cpp:28: error: expected ‘;’ before ‘<’ token
src/Engine.cpp: In static member function ‘static void MemoryAllocationCallbackStub<SPACE, ACTION>::onMemoryAllocation(v8::ObjectSpace, v8::AllocationAction, int)’:
src/Engine.cpp:34: error: ‘lock_guard_t’ was not declared in this scope
src/Engine.cpp:34: error: expected `;' before ‘hold’
src/Engine.cpp: In member function ‘virtual void MemoryAllocationCallbackStub<SPACE, ACTION>::Set(boost::python::api::object)’:
src/Engine.cpp:41: error: ‘lock_guard_t’ was not declared in this scope
src/Engine.cpp:41: error: expected `;' before ‘hold’
src/Engine.cpp: At global scope:
src/Engine.cpp: In instantiation of ‘MemoryAllocationCallbackStub<kObjectSpaceNewSpace, kAllocationActionAllocate>’:
src/Engine.cpp:78:   instantiated from here
... a lot of the same...
src/Engine.cpp:80:   instantiated from here
src/Engine.cpp:24: warning: ‘struct MemoryAllocationCallbackStub<kObjectSpaceMapSpace, kAllocationActionAll>’ has virtual functions but non-virtual destructor
src/Engine.cpp: In instantiation of ‘MemoryAllocationCallbackStub<kObjectSpaceLoSpace, kAllocationActionAll>’:
src/Engine.cpp:80:   instantiated from here
src/Engine.cpp:24: warning: ‘struct MemoryAllocationCallbackStub<kObjectSpaceLoSpace, kAllocationActionAll>’ has virtual functions but non-virtual destructor
src/Engine.cpp: In instantiation of ‘MemoryAllocationCallbackStub<kObjectSpaceAll, kAllocationActionAll>’:
src/Engine.cpp:80:   instantiated from here
src/Engine.cpp:24: warning: ‘struct MemoryAllocationCallbackStub<kObjectSpaceAll, kAllocationActionAll>’ has virtual functions but non-virtual destructor
error: command 'gcc' failed with exit status 1

So I tried this:

$ export BOOST_HOME=$HOME/src/boost_1_53_0`
$ python setup.py bdist

That passed the above spot (still printed all those errors, but didn't die), only to die half a screen below:

cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
src/Wrapper.h:64: warning: ‘struct ILazyObject’ has virtual functions but non-virtual destructor
g++ -pthread -shared build/temp.linux-i686-2.7/src/Utils.o build/temp.linux-i686-2.7/src/Exception.o build/temp.linux-i686-2.7/src/Context.o build/temp.linux-i686-2.7/src/Engine.o build/temp.linux-i686-2.7/src/Wrapper.o build/temp.linux-i686-2.7/src/Debug.o build/temp.linux-i686-2.7/src/Locker.o build/temp.linux-i686-2.7/src/AST.o build/temp.linux-i686-2.7/src/PrettyPrinter.o build/temp.linux-i686-2.7/src/PyV8.o -L/home/tocka/src/boost_1_53_0/stage/lib -L/home/tocka/src/pyv8/build/v8/out/ia32.release/ -L/home/tocka/src/pyv8/build/v8/out/ia32.release/obj.target/tools/gyp/ -L/home/tocka/src/pyv8/build/v8/build/release/lib -L/usr/local/lib -lv8_base -lv8_snapshot -lrt -lboost_python -lboost_thread -lboost_system -lpython2.7 -o build/lib.linux-i686-2.7/_PyV8.so
/usr/bin/ld: cannot find -lboost_system
collect2: ld returned 1 exit status
error: command 'g++' failed with exit status 1

Forgive me for mesuring the build process in "halves of screen" :)) but I don't have a deep understanding of those processes at all. Does it miss the boost.system component? It shouldn't, I've built the entire Boost library (or at least that's what I think), I didn't specify what components to build.

Also tried to manually install v8, following http://code.google.com/p/v8/wiki/BuildingWithGYP and that went trough ok. But it seems that setup.py for pyv8 doesn't see that library and instead tries to build another one. I did export V8_HOME=$HOME/src/v8/out/ia32.release, no effect.

It is a 32 bit os.


Oh feared experts of linux building from source, I becon thee, come to my aid for I am lost at a black see filled with white letters that make little sense to my poor mind deprived of sleep........ O_O

asked 05 Feb '13, 20:42

cek
324
accept rate: 0%

edited 05 Feb '13, 20:49

Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×337
×8
×2
×1

question asked: 05 Feb '13, 20:42

question was seen: 4,447 times

last updated: 05 Feb '13, 20:49

WEBFACTION
REACH US
SUPPORT
AFFILIATE PROGRAM
LEGAL
© COPYRIGHT 2003-2020 SWARMA LIMITED - WEBFACTION IS A SERVICE OF SWARMA LIMITED
REGISTERED IN ENGLAND AND WALES 5729350 - VAT REGISTRATION NUMBER 877397162
5TH FLOOR, THE OLD VINYL FACTORY, HAYES, UB3 1HA, UNITED KINGDOM