• How to resolve such issue 'no such environment: default' when 'npm install' dependencies Anny


    I met such issue 'no such environment: default'  when npm install some libs, such as iconv, hashlib...

    The workround is to modify /usr/local/lib/node/wafadmin/Build.py like below:

    def get_env(self):
            return self.env_of_name(DEFAULT)

    The original is like

    def get_env(self):
            return self.env_of_name('default')

    The issue is like below:

    > node-expat@1.4.0 install /usr/local/lib/node_modules/xml2js-expat/node_modules/node-expat
    > node-waf configure build

    Checking for program g++ or c++          : /usr/bin/g++
    Checking for program cpp                 : /usr/bin/cpp
    Checking for program ar                  : /usr/bin/ar
    Checking for program ranlib              : /usr/bin/ranlib
    Checking for g++                         : ok 
    Checking for node path                   : not found
    Checking for node prefix                 : ok /usr/local
    Checking for header expat.h              : no such environment: default
    Traceback (most recent call last):
      File "/usr/local/bin/node-waf", line 16, in <module>
        Scripting.prepare(t, os.getcwd(), VERSION, wafdir)
      File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 145, in prepare
        prepare_impl(t, cwd, ver, wafdir)
      File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 135, in prepare_impl
        main()
      File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 188, in main
        fun(ctx)
      File "/usr/local/bin/../lib/node/wafadmin/Scripting.py", line 241, in configure
        conf.sub_config([''])
      File "/usr/local/bin/../lib/node/wafadmin/Configure.py", line 221, in sub_config
        self.recurse(k, name='configure')
      File "/usr/local/bin/../lib/node/wafadmin/Utils.py", line 634, in recurse
        f(self)
      File "/usr/local/lib/node_modules/xml2js-expat/node_modules/node-expat/wscript", line 13, in configure
        errmsg = "not installed")
      File "/usr/local/bin/../lib/node/wafadmin/Tools/config_c.py", line 444, in check
        ret = self.run_c_code(*k, **kw)
      File "/usr/local/bin/../lib/node/wafadmin/Tools/config_c.py", line 521, in run_c_code
        o = bld(features=kw['features'], source=test_f_name, target='testprog')
      File "/usr/local/bin/../lib/node/wafadmin/Build.py", line 343, in __call__
        return TaskGen.task_gen(*k, **kw)
      File "/usr/local/bin/../lib/node/wafadmin/TaskGen.py", line 118, in __init__
        self.env = self.bld.env.copy()
    AttributeError: 'NoneType' object has no attribute 'copy'
    npm ERR! forced, continuing Error: node-expat@1.4.0 install: `node-waf configure build`
    npm ERR! forced, continuing `sh "-c" "node-waf configure build"` failed with 1
    npm ERR! forced, continuing     at ChildProcess.<anonymous> (/home/xxx/Downloads/package/lib/utils/exec.js:49:20)
    npm ERR! forced, continuing     at ChildProcess.emit (events.js:67:17)
    npm ERR! forced, continuing     at ChildProcess.onexit (child_process.js:192:12)

  • 相关阅读:
    1216
    构建之法 1 2 3
    复利计算
    实验总结
    0916编译原理第二次上机作业
    0909第一次作业
    linux 更新jdk
    Java中使用OpenSSL生成的RSA公私钥进行数据加解密
    quartz定时任务时间表达式说明
    IntelliJ IDEA使用说明
  • 原文地址:https://www.cnblogs.com/limei/p/2178519.html
Copyright © 2020-2023  润新知