无法加载DLL’Microsoft’Quantum.Simulator.Runtime.dll’

在尝试通过运行teleport示例程序validation我的Q#环境时,无法加载DLL 'Microsoft.Quantum.Simulator.Runtime.dll'错误。

 dotnet build dotnet run platform windows 7 64 bit with AVX enabled. vscode with .NET Core SDK 2.0 Unhandled Exception: System.DllNotFoundException: Unable to load DLL 'Microsoft.Quantum.Simulator.Runtime.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E) at Microsoft.Quantum.Simulation.Simulators.QuantumSimulator.Init() at Microsoft.Quantum.Simulation.Simulators.QuantumSimulator..ctor(Boolean throwOnReleasingQubitsNotInZeroState, Nullable`1 randomNumberGeneratorSeed, Boolean disableBorrowing) at Microsoft.Quantum.Examples.Teleportation.Program.Main(String[] args) in C:\opt\workspace\quantum\Quantum\Samples\Teleportation\Program.cs:line 13 

在Ubuntu bionic下,我不得不安装libgomp1因为Microsoft.Quantum.Simulator.Runtime.dll依赖于libgomp.so.1

 sudo apt install libgomp1 

可以在这里看到依赖性。

 ldd -r ~/.nuget/packages/microsoft.quantum.development.kit/0.2.1802.2202-preview/runtimes/linux-x64/native/Microsoft.Quantum.Simulator.Runtime.dll linux-vdso.so.1 (0x00007ffcbb4f4000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fd537237000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fd536e99000) libgomp.so.1 => not found libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd536aa8000) /lib64/ld-linux-x86-64.so.2 (0x00007fd537832000) 

Microsoft.Quantum.Simulator.Runtime.dllC:\Users\{user}\.nuget\packages\microsoft.quantum.development.kit\0.2.1802.2202-preview\runtimes\win10-x64C:\Users\{user}\.nuget\packages\microsoft.quantum.development.kit\0.2.1802.2202-preview\lib\netstandard2.0 。 虽然我没有使用较旧的Microsoft Quantum Development Kit版本对此进行测试,但0.2.1802.2202版本似乎存在问题。 确保检查AVX是否可用,您可以使用CPU-Z工具在说明部分进行检查。

然后运行dotnet run应该导致

 Round 0: Sent False, got False. Teleportation successful!! Round 1: Sent True, got True. Teleportation successful!! Round 2: Sent False, got False. Teleportation successful!! Round 3: Sent False, got False. Teleportation successful!! Round 4: Sent False, got False. Teleportation successful!! Round 5: Sent False, got False. Teleportation successful!! Round 6: Sent False, got False. Teleportation successful!! Round 7: Sent True, got True. Teleportation successful!! Press Enter to continue... 

模拟器仅在Windows 10中测试/支持。我强烈建议您升级系统。