Skip to content

mips configure failure #1032

Description

@jdub

Hi all,

I know MIPS isn't meant to be a supported architecture, but at the moment node 0.12.0 configures for it (and as I watch, is thus far successfully building), while io.js 1.4.2 does not.

Here's the ./configure --dest-cpu=mips output:

creating  ./icu_config.gypi
{ 'target_defaults': { 'cflags': [],
                       'default_configuration': 'Release',
                       'defines': [],
                       'include_dirs': [],
                       'libraries': []},
  'variables': { 'host_arch': 'x64',
                 'icu_small': 'false',
                 'node_install_npm': 'true',
                 'node_prefix': '',
                 'node_shared_http_parser': 'false',
                 'node_shared_libuv': 'false',
                 'node_shared_openssl': 'false',
                 'node_shared_v8': 'false',
                 'node_shared_zlib': 'false',
                 'node_tag': '',
                 'node_use_dtrace': 'false',
                 'node_use_etw': 'false',
                 'node_use_lttng': 'false',
                 'node_use_mdb': 'false',
                 'node_use_openssl': 'true',
                 'node_use_perfctr': 'false',
                 'openssl_no_asm': 0,
                 'python': '/usr/bin/python',
                 'target_arch': 'mips',
                 'uv_library': 'static_library',
                 'uv_parent_path': '/deps/uv/',
                 'uv_use_dtrace': 'false',
                 'v8_enable_gdbjit': 0,
                 'v8_enable_i18n_support': 0,
                 'v8_no_strict_aliasing': 1,
                 'v8_optimized_debug': 0,
                 'v8_random_seed': 0,
                 'v8_use_snapshot': 'false',
                 'want_separate_host_toolset': 0}}
creating  ./config.gypi
creating  ./config.mk
gyp: name 'mips_arch_variant' is not defined while evaluating condition 'mips_arch_variant=="r6"' in /home/jdub/openwrt/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/iojs-v1.4.2/deps/v8/tools/gyp/v8.gyp while loading dependencies of /home/jdub/openwrt/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/iojs-v1.4.2/node.gyp while trying to load /home/jdub/openwrt/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/iojs-v1.4.2/node.gyp
Error running GYP

Thanks for your work on io.js!

Activity

  1. jbergstroem commented on Mar 3, 2015

    @jbergstroem
    Member

    Had a quick look at the nodejs 0.12 codebase and it seems like adding the architecture doesn't seem like a big step -- but I think for this to happen @iojs/build will need access to mips hardware that can be added to the jenkins build cluster. It doesn't automatically mean it'll be supported, but it's at least a step closer.

  2. jdub commented on Mar 3, 2015

    @jdub
    Author

    So, I have some mips and mipsel devices, but… I never build on them. Getting chunky enough MIPSen for a build farm is kind of a challenge. Maybe Debian could help out?

  3. added
    buildIssues and PRs related to Node.js builds or CI infrastructure.
    on Mar 3, 2015
  4. jdub commented on Mar 3, 2015

    @jdub
    Author

    Hmm, so it turns out that v8 removed soft-float support after 3.17, which makes io.js… a disappointing no-go on my low-end hardware (router class). Perhaps let this one coast until someone comes along with the desire to run io.js on a MIPS box with an FPU. 😃

  5. bnoordhuis commented on Mar 3, 2015

    @bnoordhuis
    Member

    @jdub Maybe you can test #1045 with --with-mips-float-abi=soft?

  6. rvagg commented on Mar 3, 2015

    @rvagg
    Member

    What hardware are you running this on? I remember reading an article about a new single-board coming out with MIPS but I can't find the details on that. If the build team were to be donated some hardware we could potentially bring support up to scratch by adding it to our CI.

  7. jbergstroem commented on Mar 3, 2015

    @jbergstroem
    Member
  8. jdub commented on Mar 4, 2015

    @jdub
    Author

    @bnoordhuis: Thanks -- I'll give that a go!

    @rvagg: I'm building for a VoCore and an old Billion 7700N router. The CI20 would be a luxury, @jbergstroem. But what a great little build box!

  9. jdub commented on Mar 4, 2015

    @jdub
    Author

    @bnoordhuis: Configured and building successfully! Although now I've hit what looks like a uClibc-related issue.

    ../deps/v8/src/base/logging.cc:9:23: fatal error: execinfo.h: No such file or directory
    

    I'll keep plugging, but it's looking good so far. So, what's with the soft-float support? Is it there, just not supported, or did it return at some point?

  10. rvagg commented on Mar 4, 2015

    @rvagg
    Member

    hah, I have a 7800N and it frustrates me enough to want to pull it apart ...

  11. jdub commented on Mar 4, 2015

    @jdub
    Author

    Bummer. All built, but on the device it tries to use hard float. So, I'm stuck with the V8 > 3.17 problem.

    However, thanks to @bnoordhuis, we can now happily build io.js for MIPS+FPU. 😃

    @rvagg Hey, not too loud, there's a 7800N keeping my ADSL connection up! 👻

  12. bnoordhuis commented on Mar 4, 2015

    @bnoordhuis
    Member

    So, what's with the soft-float support? Is it there, just not supported, or did it return at some point?

    I thought it was still possible to build just the baseline compiler (so not Crankshaft or TurboFan) but I'm either wrong or I overlooked something. I'll cc you on the PR if I find what it is.

  13. bnoordhuis commented on Mar 5, 2015

    @bnoordhuis
    Member

    After #1045 and commit 726671c, configure now knows about --dest-cpu=mips and --dest-cpu=mipsel. Closing this, please file bug reports for any issues you encounter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    buildIssues and PRs related to Node.js builds or CI infrastructure.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions