The currently supported build system for V8 is Scons. To build a
version of the shell sample with the ARM simulator use:

scons sample=shell simulator=arm

Cheers,    -- Mads

On Mon, Nov 15, 2010 at 2:48 AM, Seung Mo Cho <[email protected]> wrote:
>
> Hello,
>
> I would like to test V8 on xcode/mac, using ARM simulator (of V8). But
> I couldn't find any information about how to do that.
>
> The xcodeproj file works fine as a standalone javascript shell using
> x86 ISA. However, as an engineer for embedded systems, I also want to
> test it using ARM simulator of V8. (I want to trace the arm binaries
> generated from JS codes.) I could do it using  'scons', but then I
> couldn't use the debugging facility of xcode. (Using gdb only is not
> very efficient for analyzing V8..)
>
> I couldn't find any doc/article on this subject. (All I found was just
> a source patch that enabled this feature.) Is there anyone who can
> help me use xcode to build/test/debug V8 using ARM simulator?
>
>
> (Actually, I tried setting "debug | v8_shell-arm" as a build target in
> xcode. But, it also failed producing the following log. I used v8 of
> r5780, which should be a very recent version.)
>
>
> ----
>
>
> Build v8_shell-arm of project v8 with configuration Debug
>
> Ld ../xcodebuild/Debug/v8_shell-arm normal i386
> cd /Users/seungmcho/work/v8_r5780/tools
> /Developer/usr/bin/g++-4.2 -arch i386 -L/Users/seungmcho/work/v8_r5780/
> tools/../xcodebuild/Debug -F/Users/seungmcho/work/v8_r5780/tools/../
> xcodebuild/Debug -filelist /Users/seungmcho/work/v8_r5780/tools/../
> xcodebuild/v8.build/Debug/v8_shell-arm.build/Objects-normal/i386/
> v8_shell-arm.LinkFileList -lv8-arm -o /Users/seungmcho/work/v8_r5780/
> tools/../xcodebuild/Debug/v8_shell-arm
>
> Undefined symbols:
>  "v8::internal::StringSearchBase::kBadCharShiftTable", referenced
> from:
>      __ZN2v88internal16StringSearchBase18kBadCharShiftTableE
> $non_lazy_ptr in libv8-arm.a(runtime.o)
>     (maybe you meant:
> __ZN2v88internal16StringSearchBase18kBadCharShiftTableE$non_lazy_ptr)
>
> "v8::internal::PowersOfTenCache::GetCachedPowerForBinaryExponentRange(int,
> int, v8::internal::DiyFp*, int*)", referenced from:
>      v8::internal::Grisu3Counted(double, int,
> v8::internal::Vector<char>, int*, int*)in libv8-arm.a(fast-dtoa.o)
>      v8::internal::Grisu3(double, v8::internal::Vector<char>, int*,
> int*)in libv8-arm.a(fast-dtoa.o)
>  "v8::internal::StringSearchBase::kSuffixTable", referenced from:
>      __ZN2v88internal16StringSearchBase12kSuffixTableE$non_lazy_ptr
> in libv8-arm.a(runtime.o)
>     (maybe you meant:
> __ZN2v88internal16StringSearchBase12kSuffixTableE$non_lazy_ptr)
>  "v8::internal::StringSearchBase::kGoodSuffixShiftTable", referenced
> from:
>      __ZN2v88internal16StringSearchBase21kGoodSuffixShiftTableE
> $non_lazy_ptr in libv8-arm.a(runtime.o)
>     (maybe you meant:
> __ZN2v88internal16StringSearchBase21kGoodSuffixShiftTableE
> $non_lazy_ptr)
>  "v8::internal::Strtod(v8::internal::Vector<char const>, int)",
> referenced from:
>      double v8::internal::InternalStringToInt<v8::internal::
> (anonymous namespace)::StringInputBufferIterator, v8::internal::
> (anonymous
> namespace)::StringInputBufferIterator::EndMarker>(v8::internal::
> (anonymous namespace)::StringInputBufferIterator, v8::internal::
> (anonymous namespace)::StringInputBufferIterator::EndMarker, int)in
> libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToInt<v8::internal::
> (anonymous namespace)::StringInputBufferIterator, v8::internal::
> (anonymous
> namespace)::StringInputBufferIterator::EndMarker>(v8::internal::
> (anonymous namespace)::StringInputBufferIterator, v8::internal::
> (anonymous namespace)::StringInputBufferIterator::EndMarker, int)in
> libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToInt<unsigned short const*,
> unsigned short const*>(unsigned short const*, unsigned short const*,
> int)in libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToInt<unsigned short const*,
> unsigned short const*>(unsigned short const*, unsigned short const*,
> int)in libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToInt<char const*, char
> const*>(char const*, char const*, int)in libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToInt<char const*, char
> const*>(char const*, char const*, int)in libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToDouble<v8::internal::
> (anonymous namespace)::StringInputBufferIterator, v8::internal::
> (anonymous
> namespace)::StringInputBufferIterator::EndMarker>(v8::internal::
> (anonymous namespace)::StringInputBufferIterator, v8::internal::
> (anonymous namespace)::StringInputBufferIterator::EndMarker, int,
> double)in libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToDouble<unsigned short
> const*, unsigned short const*>(unsigned short const*, unsigned short
> const*, int, double)in libv8-arm.a(conversions.o)
>      double v8::internal::InternalStringToDouble<char const*, char
> const*>(char const*, char const*, int, double)in libv8-
> arm.a(conversions.o)
>  "v8::internal::KeywordMatcher::Step(unsigned int)", referenced from:
>      v8::internal::KeywordMatcher::AddChar(unsigned int)in libv8-
> arm.a(scanner-FF1FCAE703A77A77.o)
> ld: symbol(s) not found
> collect2: ld returned 1 exit status
>
>
>
>
> --
> v8-users mailing list
> [email protected]
> http://groups.google.com/group/v8-users
>

-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users

Reply via email to