На моем хосте Ubuntu 14 я пытаюсь использовать модуль узла с именем node-msmq, который предоставляет мост MS MSQQ . Этот модуль зависит от установки среды .NET. У меня есть компилирует .NET на Ubuntu с помощью Git репо, и иметь его в/дома/убунту/CoreCLR:.NET Core на Ubuntu - что является правильным значением для переменной env CORECLR_DIR?
[email protected]:~/coreclr$ pwd
/home/ubuntu/coreclr
[email protected]:~/coreclr$ ls
all.locproj clrdefinitions.cmake crossgen.cmake generateversionscript.awk README.md
bin clr.desktop.props dac.cmake global.json run.cmd
build.cmd clr.native.targets dac.props init-tools.cmd run-cppcheck.sh
build-packages.cmd clr.props definitionsconsistencycheck.cmake init-tools.sh run.sh
build-packages.sh clr.targets dir.props LICENSE.TXT sanitizerblacklist.txt
build.proj cmake.definitions dirs.proj netci.groovy src
build.sh CMakeLists.txt dir.targets oacr.cfg sync.cmd
build-test.cmd CODE_OWNERS.TXT dir.traversal.targets packages sync.sh
BuildToolsVersion.txt compileoptions.cmake Documentation partition.settings.targets tests
clean.cmd config.json DotnetCLIVersion.txt PATENTS.TXT THIRD-PARTY-NOTICES
clean.sh CONTRIBUTING.md enablesanitizers.sh perf.groovy Tools
clr.coreclr.props cross functions.cmake publish-packages.cmd UpdateDependencies.ps1
clr.defines.targets crosscomponents.cmake generateexportedsymbols.awk publish-packages.sh UpdatePublishedVersions.ps1
мой узел сценарий выглядит очень просто:
const msmq = require('node-msmq');
//var queue = msmq.openOrCreateQueue('.\\Private$\\MyAwesomeQueue');
// Send message to queue
//queue.send('Hello from Node.JS!');
Когда я запускаю этот код, Я получаю сообщение об ошибке, жалуясь, не имеющие окр вар CORECLR_DIR установлен правильно:
[email protected]:~/dev/node/msmq-producer$ node producer.js
module.js:355
Module._extensions[extension](this, filename);
^
Error: Unable to load the CLR from the directory (��S) specified in the CORECLR_DIR environment variable.
at Error (native)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/home/ubuntu/dev/node/msmq-producer/node_modules/node-msmq/node_modules/edge/lib/edge.js:53:8)
at Module._compile (module.js:434:26)
at Object.Module._extensions..js (module.js:452:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
в настоящее время у меня есть эта переменная устанавливается:
[email protected]:~/dev/node/msmq-producer$ echo $CORECLR_DIR
/home/ubuntu/coreclr
, что, по-видимому, является неправильным значением.
Какое значение я должен установить, чтобы обнаружить среду моего coercer .NET на Ubuntu?
Путь к CoreCLR.dll который, скорее всего, находится в/home/ubuntu/coreclr/bin – Joe
Почему вы компилируете CoreCLR вместо использования пакета? – svick