尝试使用 npm 全局安装 solcjs 时如何解决 "Cannot find module './common/helpers'" 错误?
How to resolve "Cannot find module './common/helpers'" error when trying to install solcjs globally with npm?
我 运行在尝试通过 npm 在本地安装 Solidity 编译器时遇到了一个问题。在 运行ning npm i -g solc
并通过 运行ning 任何命令(例如 solcjs --help
检查安装后,我收到以下错误:
internal/modules/cjs/loader.js:905
throw err;
^
Error: Cannot find module './common/helpers'
Require stack:
- /usr/local/lib/node_modules/solc/linker.js
- /usr/local/lib/node_modules/solc/translate.js
- /usr/local/lib/node_modules/solc/wrapper.js
- /usr/local/lib/node_modules/solc/index.js
- /usr/local/lib/node_modules/solc/solc.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
at Function.Module._load (internal/modules/cjs/loader.js:746:27)
at Module.require (internal/modules/cjs/loader.js:974:19)
at require (internal/modules/cjs/helpers.js:101:18)
at Object.<anonymous> (/usr/local/lib/node_modules/solc/linker.js:7:19)
at Module._compile (internal/modules/cjs/loader.js:1085:14)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
at Module.load (internal/modules/cjs/loader.js:950:32)
at Function.Module._load (internal/modules/cjs/loader.js:790:12)
at Module.require (internal/modules/cjs/loader.js:974:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/usr/local/lib/node_modules/solc/linker.js',
'/usr/local/lib/node_modules/solc/translate.js',
'/usr/local/lib/node_modules/solc/wrapper.js',
'/usr/local/lib/node_modules/solc/index.js',
'/usr/local/lib/node_modules/solc/solc.js'
]
}
我尝试了各种方法,包括检查我的 NODE_PATH、从 solc-js GitHub 手动安装,以及尝试 运行 使用 npx 命令。但是,其中 none 有助于解决上述错误。对于其他上下文,我 运行ning 在 macOS Monterey 上。非常感谢对此的任何帮助。
我觉得是版本问题,我只好卸载当前版本
npm uninstall solc
npm install --save solc@0.4.25
据此:https://github.com/ethereum/solc-js/issues/624,这是 0.8.14 中引入的错误。
它将在 0.8.15 中修复,同时您可以降级到 0.8.13 以避免此问题。
为我的 2 个朋友 (MAC M1 和 W10) 和我工作
npm uninstall solc —global
npm install —save solc@0.8.13 —global
我 运行在尝试通过 npm 在本地安装 Solidity 编译器时遇到了一个问题。在 运行ning npm i -g solc
并通过 运行ning 任何命令(例如 solcjs --help
检查安装后,我收到以下错误:
internal/modules/cjs/loader.js:905
throw err;
^
Error: Cannot find module './common/helpers'
Require stack:
- /usr/local/lib/node_modules/solc/linker.js
- /usr/local/lib/node_modules/solc/translate.js
- /usr/local/lib/node_modules/solc/wrapper.js
- /usr/local/lib/node_modules/solc/index.js
- /usr/local/lib/node_modules/solc/solc.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
at Function.Module._load (internal/modules/cjs/loader.js:746:27)
at Module.require (internal/modules/cjs/loader.js:974:19)
at require (internal/modules/cjs/helpers.js:101:18)
at Object.<anonymous> (/usr/local/lib/node_modules/solc/linker.js:7:19)
at Module._compile (internal/modules/cjs/loader.js:1085:14)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
at Module.load (internal/modules/cjs/loader.js:950:32)
at Function.Module._load (internal/modules/cjs/loader.js:790:12)
at Module.require (internal/modules/cjs/loader.js:974:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/usr/local/lib/node_modules/solc/linker.js',
'/usr/local/lib/node_modules/solc/translate.js',
'/usr/local/lib/node_modules/solc/wrapper.js',
'/usr/local/lib/node_modules/solc/index.js',
'/usr/local/lib/node_modules/solc/solc.js'
]
}
我尝试了各种方法,包括检查我的 NODE_PATH、从 solc-js GitHub 手动安装,以及尝试 运行 使用 npx 命令。但是,其中 none 有助于解决上述错误。对于其他上下文,我 运行ning 在 macOS Monterey 上。非常感谢对此的任何帮助。
我觉得是版本问题,我只好卸载当前版本
npm uninstall solc
npm install --save solc@0.4.25
据此:https://github.com/ethereum/solc-js/issues/624,这是 0.8.14 中引入的错误。
它将在 0.8.15 中修复,同时您可以降级到 0.8.13 以避免此问题。
为我的 2 个朋友 (MAC M1 和 W10) 和我工作
npm uninstall solc —global
npm install —save solc@0.8.13 —global