Не удалось установить WSL 2 Ubuntu Hyperledger Fabric npm

#hyperledger-fabric

#hyperledger-fabric

Вопрос:

Я пытаюсь запустить первое приложение, следуя документам на hyperledger fabric. Когда я нахожусь в asset-transfer-basic / application-javascript, попытался запустить установку npm. Он выдал ошибку ниже:

 > npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
> npm WARN deprecated har-validator@5.1.5: this library is no longer supported

> pkcs11js@1.2.0 install /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/pkcs11js
> node-gyp rebuild

> make ✖ ERR  Missing Makefile / Bakefile 
> make ℹ info Run "make init" to generate a Makefile.

> protobufjs@6.10.2 postinstall /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/protobufjs
> node scripts/postinstall

> npm notice created a lockfile as package-lock.json. You should commit this file.
> npm WARN asset-transfer-basic@1.0.0 No repository field.

> added 125 packages from 170 contributors and audited 125 packages in 21.417s

> 4 packages are looking for funding
  > run `npm fund` for details

> found 0 vulnerabilities.
 

Следуя инструкции, я перешел в папку node_modules/pkcs11js и запустил make init для создания Makefile. После этого повторно запустите команду npm install и node app.js . Это все та же ошибка. Несмотря на то, что я запустил npm install -g pkcs11js, это не решило проблему.

Когда я запускал узел app.js , он бросил:

 internal/modules/cjs/loader.js:968
  throw err;
  ^

Error: Cannot find module './build/Release/pkcs11.node'
Require stack:
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/pkcs11js/index.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-common/lib/impl/bccsp_pkcs11.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-common/lib/User.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-common/index.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/logger.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/impl/query/query.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/transaction.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/contract.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/network.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/gateway.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/index.js
- /mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/app.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:965:15)
    at Function.Module._load (internal/modules/cjs/loader.js:841:27)
    at Module.require (internal/modules/cjs/loader.js:1025:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/pkcs11js/index.js:5:16)
    at Module._compile (internal/modules/cjs/loader.js:1137:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
    at Module.load (internal/modules/cjs/loader.js:985:32)
    at Function.Module._load (internal/modules/cjs/loader.js:878:14)
    at Module.require (internal/modules/cjs/loader.js:1025:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/pkcs11js/index.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-common/lib/impl/bccsp_pkcs11.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-common/lib/User.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-common/index.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/logger.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/impl/query/query.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/transaction.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/contract.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/network.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/lib/gateway.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/node_modules/fabric-network/index.js',
    '/mnt/c/Users/DELL/Desktop/solarblock/chaincode/asset-transfer-basic/application-javascript/app.js'
  ]
}
 

Я пытался решить эту проблему в течение нескольких дней, но до сих пор не нашел никаких решений.

Любые советы будут высоко оценены!!

Комментарии:

1. В случае node.js , требуется информация о версии, поскольку для каждого модуля в структуре существует зависимость от версии.

2. Я проверил package.json внутри fabric-samples, и для этого требуются «движки»: { «node»: «>= 12», «npm»: «>= 5» } У меня версия узла: v12.18.4 и версия npm 6.14.10. Или вы имели в виду документы?

3. Я слежу за статьей, которая пишет первое приложение hyperledger-fabric.readthedocs.io/en/latest /… и возникли трудности с запуском npm install и node app.js

4. Какую версию hyperledger fabric вы хотите запустить?

5. см. node / issue / 102 / node / issue / 157 , это не проблема hyperledger-fabric . необходимо добавить теги (node.js , нпм, …)

Ответ №1:

У меня была аналогичная ошибка, но она возникла во время работы над fabcar,

Похоже, что pkcs11js требует node build-essential package, ie make команды для сборки пакетов.

Кажется, вы используете ОС Windows, найдите способы установки node build-essential package .

Для Ubuntu его можно установить, выполнив команду

$ sudo apt-get install build-essential

Затем повторно запустите команду npm install в корне вашего приложения node (где находится файл package.json).