"scons arch=x64" does not help, because tools/utils.py should be changed to
+ elif id == 'amd64': + return 'ia32' On Jan 29, 1:02 am, Søren Gjesse <[email protected]> wrote: > Hi, > > This is currently by design that the default on 64-bit is to build the > 32-bit version. Pass arch=x64 to the SCons command when building. > > $ scons arch=x64 > > However, maybe we should consider defaulting to 64-bit on 64-bit Linux as > the x64 port is maturing. > > Regarding V8 for FreeBSD there is no official maintainer, so be prepared for > some issues from time to time. > > Regards, > Søren > > On Thu, Jan 28, 2010 at 13:17, Dmitry Marakasov <[email protected]> wrote: > > Hi! > > > I'm building V8 on FreeBSD as a prerequisite for intensity engine > > (syntensity.com). The engine have just switched to latest version > > of V8, which fixed a problem with building on 64bit FreeBSD. Now it > > builds just fine, but there are some issues which it would be good > > to fix: > > > 1) V8 doesn't build on 64bit system out of box: > > > --- > > % scons > > scons: Reading SConscript files ... > > TypeError: cannot concatenate 'str' and 'NoneType' objects: > > File "/usr/home/amdmi3/v8-be/SConstruct", line 607: > > 'help': 'the architecture to build for (' + ARCH_GUESS + ')' > > --- > > > stangely, there's no quirks for 64bit systems in tools/utils.py which > > is used to set ARCH_GUESS. With this, it builds fine: > > > --- 1.patch begins here --- > > Index: tools/utils.py > > =================================================================== > > --- tools/utils.py (revision 3732) > > +++ tools/utils.py (working copy) > > @@ -71,6 +71,8 @@ > > return 'ia32' > > elif id == 'i86pc': > > return 'ia32' > > + elif id == 'amd64': > > + return 'x64' > > else: > > return None > > > --- 1.patch ends here --- > > > 2) V8 doesn't build in presence of lang/spidermonkey port, as there's > > an include conflict: spidermonkey installs jsregexp.h, and it's included > > instead of the correct one from V8. Here's what happens: > > > --- > > ... > > /usr/local/libexec/ccache/c++ -o obj/release/ia32/codegen-ia32.o -c -Wall > > -Werror -W -Wno-unused-parameter -Wnon-virtual-dtor -m32 -O3 > > -fomit-frame-pointer -fdata-sections -ffunction-sections -ansi -fno-rtti > > -fno-exceptions -fvisibility=hidden -Wall -Werror -W -Wno-unused-parameter > > -Wnon-virtual-dtor -m32 -O3 -fomit-frame-pointer -fdata-sections > > -ffunction-sections -ansi -DV8_TARGET_ARCH_IA32 -DENABLE_DEBUGGER_SUPPORT > > -DV8_NATIVE_REGEXP -DENABLE_LOGGING_AND_PROFILING -I/usr/local/include -Isrc > > src/ia32/codegen-ia32.cc > > In file included from /usr/local/include/jspubtd.h:45, > > from /usr/local/include/jsregexp.h:46, > > from src/ia32/codegen-ia32.cc:35: > > /usr/local/include/jstypes.h:248:6: error: #error "Must define one of > > XP_BEOS, XP_OS2, XP_WIN or XP_UNIX" > > ... > > --- > > > That should be fixed by changing the order of include paths. > > > 3) Also I've ran tests - everything pass on amd64, but some fail on i386: > > >http://people.freebsd.org/~amdmi3/v8-i386.tests.log > > > -- > > Dmitry Marakasov . 55B5 0596 FF1E 8D84 5F56 9510 D35A 80DD F9D2 F77D > > [email protected] ..: jabber: [email protected] http://www.amdmi3.ru > > > -- > > 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
