On Fri, Jun 22, 2012 at 3:39 PM, Ewan Leith <
ewan....@gmail.com> wrote:
> Hi all, I'm trying to compile node v0.8 rc7 on my beaglebone, and the
> configure script it falling over. It does work fine on the 0.6 branch. Has
> anyone built node v0.8 or v0.7 on ARM?
>
> Running configure (with or without -det-cpu=arm) gives the following output:
>
> ./configure --dest-cpu=arm
> { 'target_defaults': { 'cflags': [],
> 'default_configuration': 'Release',
> 'defines': [],
> 'include_dirs': [],
> 'libraries': []},
> 'variables': { 'host_arch': 'arm',
> 'node_install_npm': 'true',
> 'node_install_waf': 'true',
> 'node_prefix': '',
> 'node_shared_openssl': 'false',
> 'node_shared_v8': 'false',
> 'node_shared_zlib': 'false',
> 'node_use_dtrace': 'false',
> 'node_use_etw': 'false',
> 'node_use_openssl': 'true',
> 'strict_aliasing': 'true',
> 'target_arch': 'arm',
> 'v8_use_snapshot': 'true'}}
> creating ./config.gypi
> creating ./
config.mk
> Traceback (most recent call last):
> File "tools/gyp_node", line 58, in <module>
> run_gyp(gyp_args)
> File "tools/gyp_node", line 18, in run_gyp
> rc = gyp.main(args)
> File "./tools/gyp/pylib/gyp/__init__.py", line 471, in main
> options.circular_check)
> File "./tools/gyp/pylib/gyp/__init__.py", line 111, in Load
> depth, generator_input_info, check, circular_check)
> File "./tools/gyp/pylib/gyp/input.py", line 2289, in Load
> depth, check)
> File "./tools/gyp/pylib/gyp/input.py", line 433, in LoadTargetBuildFile
> includes, depth, check)
> File "./tools/gyp/pylib/gyp/input.py", line 387, in LoadTargetBuildFile
> build_file_path)
> File "./tools/gyp/pylib/gyp/input.py", line 984, in
> ProcessVariablesAndConditionsInDict
> ProcessConditionsInDict(the_dict, is_late, variables, build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 861, in
> ProcessConditionsInDict
> variables, build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 1010, in
> ProcessVariablesAndConditionsInDict
> build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 1025, in
> ProcessVariablesAndConditionsInList
> ProcessVariablesAndConditionsInDict(item, is_late, variables,
> build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 1010, in
> ProcessVariablesAndConditionsInDict
> build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 1025, in
> ProcessVariablesAndConditionsInList
> ProcessVariablesAndConditionsInDict(item, is_late, variables,
> build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 984, in
> ProcessVariablesAndConditionsInDict
> ProcessConditionsInDict(the_dict, is_late, variables, build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 861, in
> ProcessConditionsInDict
> variables, build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 984, in
> ProcessVariablesAndConditionsInDict
> ProcessConditionsInDict(the_dict, is_late, variables, build_file)
> File "./tools/gyp/pylib/gyp/input.py", line 842, in
> ProcessConditionsInDict
> if eval(ast_code, {'__builtins__': None}, variables):
> File "<string>", line 1, in <module>
> NameError: name 'armv7' is not defined while evaluating condition 'armv7==1'
> in /tmp/node-v0.8.0/deps/v8/tools/gyp/v8.gyp while loading dependencies of
> /tmp/node-v0.8.0/node.gyp while trying to load /tmp/node-v0.8.0/node.gyp
>
>
> Hacking "deps/v8/tools/gyp/v8.gyp" to just remove the condition that it's
> complaining about at line 997, lets the build continue and complete, but it
> then crashes when built (probably because I'm excluding relevant switches to
> gcc by changing the configure output).
>
> The section of v8.gyp is around line 149:
>
> 'conditions': [
> ['armv7==1', {
>
> Has anyone built node v0.8 or v0.7 on ARM or have some ideas of how to
> resolve this?
Gah, I'm still waiting for my BeagleBone.
Does it work when you add `'armv7%':'1'` (sans backticks) to the
variables section of config.gypi or common.gypi?