Skip to content

v8 inspector build failure: File name too long #7959

Description

@gibfahn
  • Version: master
  • Platform: All (x,p,z,ple Linux, OSX, AIX)
  • Subsystem: build, deps/v8_inspector

I'm assuming this is because the file name is 258 characters long, as the name contains the full directory path. This can be worked around with custom Jenkins workspaces, but the file name is 168 chars without the directory structure anyway.

  LD_LIBRARY_PATH=/space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node/out/Release/lib.host:/space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/v8_inspector/third_party/v8_inspector/platform/v8_inspector; mkdir -p /space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node/out/Release/obj/gen/blink/platform/v8_inspector; python ../inspector_protocol/generate-inspector-protocol-version --o "/space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node/out/Release/obj/gen/blink/platform/v8_inspector/protocol.json" js_protocol.json
  touch _space_jenkins_local_workspace_node_master_build_ARCH_x64_GCC_gcc48_OS_linux_labels_build_node_deps_v8_inspector_third_party_v8_inspector_platform_v8_inspector_v8_inspector_gyp_protocol_sources_target_generateV8InspectorProtocolBackendSources.intermediate
/bin/sh: /space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node/out/Release/.deps/_space_jenkins_local_workspace_node_master_build_ARCH_x64_GCC_gcc48_OS_linux_labels_build_node_deps_v8_inspector_third_party_v8_inspector_platform_v8_inspector_v8_inspector_gyp_protocol_sources_target_generateV8InspectorProtocolBackendSources.intermediate.d: File name too long
make[2]: *** [_space_jenkins_local_workspace_node_master_build_ARCH_x64_GCC_gcc48_OS_linux_labels_build_node_deps_v8_inspector_third_party_v8_inspector_platform_v8_inspector_v8_inspector_gyp_protocol_sources_target_generateV8InspectorProtocolBackendSources.intermediate] Error 1
make[2]: *** Waiting for unfinished jobs....
rm _space_jenkins_local_workspace_node_master_build_ARCH_x64_GCC_gcc48_OS_linux_labels_build_node_deps_v8_inspector_third_party_v8_inspector_platform_v8_inspector_v8_inspector_gyp_protocol_sources_target_generateV8InspectorProtocolBackendSources.intermediate
make[2]: Leaving directory `/space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node/out'
make[1]: *** [node] Error 2
make[1]: Leaving directory `/space/jenkins-local/workspace/node-master-build/ARCH/x64/GCC/gcc48/OS/linux/labels/build/node'
make: *** [node-v7.0.0-linux-x64.tar] Error 2

Activity

  1. bnoordhuis commented on Aug 3, 2016

    @bnoordhuis
    Member

    It's a gyp issue. Cheap hack to work around it:

    diff --git a/tools/gyp/pylib/gyp/generator/make.py b/tools/gyp/pylib/gyp/generator/make.py
    index a81f639..47e841e 100644
    --- a/tools/gyp/pylib/gyp/generator/make.py
    +++ b/tools/gyp/pylib/gyp/generator/make.py
    @@ -21,6 +21,7 @@
     # toplevel Makefile.  It may make sense to generate some .mk files on
     # the side to keep the the files readable.
    
    +import hashlib
     import os
     import re
     import sys
    @@ -873,6 +874,7 @@ $(obj).$(TOOLSET)/$(TARGET)/%%.o: $(obj)/%%%s FORCE_DO_CMD
         for action in actions:
           name = StringToMakefileVariable('%s_%s' % (self.qualified_target,
                                                      action['action_name']))
    +      name = hashlib.sha1(name).hexdigest()
           self.WriteLn('### Rules for action "%s":' % action['action_name'])
           inputs = action['inputs']
           outputs = action['outputs']

    Not really a proper fix but it demonstrates where the issue lies.

  2. added
    buildIssues and PRs related to Node.js builds or CI infrastructure.
    on Aug 3, 2016
  3. addaleax commented on Aug 3, 2016

    @addaleax
    Member

    See also #7510… would pulling in addaleax@4747d1b be acceptable as floating a patch on gyp?

  4. bnoordhuis commented on Aug 3, 2016

    @bnoordhuis
    Member

    Great minds really do seem to think alike... In light of Google's lack of interest in maintaining gyp, I think floating a patch is acceptable.

  5. addaleax commented on Aug 3, 2016

    @addaleax
    Member

    PR: #7963

  6. added a commit that references this issue on Oct 18, 2016
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