I am having a problem with cross compiling google v8 libraries for 
raspberry pi, and constantly getting "Illegal instruction" error when 
compiling official sample from site. These are the steps i followed:

   1. Downloaded cross compile https://github.com/raspberrypi/tools/
   2. Cloned v8 git https://chromium.googlesource.com/v8/v8.git
   3. Exported CXX LINK point to arm-linux-gnueabihf-g++ from cross compile 
   tools.
   4. run make arm.release armv7=false hardfp=on snapshot=off armfpu=vfp 
   armfloatabi=hard -j5
   5. Copied generated executable shell and d8 from out/arm.release 
   directory to pi (Raspbian kernel version 3.6.11) and it WORKS. These steps 
   prove that cross compilation toolchain is functional.
   
Problem occurs when trying to run other cross-compiled software that is 
linked to v8 libraries. For example sample code from 
https://developers.google.com/v8/get_started#intro. Code is cross-compiled 
with this command (same as example, just changed compiler)

arm-linux-gnueabihf-g++ -I. hello_world.cc -o hello_world -Wl,--start-group 
out/x64.release/obj.target/{tools/gyp/libv8_{base,libbase,snapshot,libplatform},third_party/icu/libicu{uc,i18n,data}}.a
 -Wl,--end-group -lrt -pthread


When i copy that code to pi and run it i get SIGILL (Illegal instruction).

Note: cross compiled software that doesn't use v8 libraries works fine. 
Also x64 v8 libraries on host computer work fine.

On newer kernel versions shell and d8 were also throwing SIGILL but than i 
switched to older version 3.6.11 (problems with newer kernel 
https://groups.google.com/forum/#!topic/v8-users/IPT9EeYK9bg) and they 
started working, but compiled sample code is still showed same issues.

Did anyone have similar experience? Any suggestion on how to overcome this 
problem?

-- 
-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to