#VS2017 – Hello QWorld using Microsoft #Quantum Development Kit (fix to build the project) [Updated]

Hi!

Today is a special day, from this moment on, 98% of what I learned at the university is no longer useful for me. I will no longer use binary states in my computing devices, now is time to work with Quantum States.

In fact, there is still a long way to make this a reality. However, now we can start to learn some of the basis of Quantum Computing using Visual Studio 2017. The name of the language also gives honor to the elements that we already know: Q# (Q Sharp).

Note: I know, surely some freak will say that the IDE is very heavy, slow, etc. The answer is always: your opinion is important I am very interested, please tell me more!

So, now we can download Microsoft Quantum Development Kit and create our first [Hello QWorld] to understand the new logic gates model, how to work with Qubits, and much more of the exciting world of quantum Computing.

The Microsoft Quantum DevKit we have an excellent step by step to build a Console App which allows us to work with 2 Qubits and also show the entaglement between them. Well, the 1st steps are very encouraging.

We start installing a package to have the Q# DevKit in Visual Studio 2017

I1

Then we will be able to create Q # applications, as well as libraries and test projects.

I2

And that’s it, this is the end of the fun, it’s fixing configuration error time! We have a very good looking error when trying to build the project:

I4

This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is ..\packages\Microsoft.Quantum.Development.Kit.0.1.1712.901-preview\build\Microsoft.Quantum.Development.Kit.props

[Update: Microsoft Quantum have already published the packages in Nuget.org, so the build will work fine the 1st time. https://www.nuget.org/packages?q=Microsoft.Quantum]

I first thought that this was related to the NuGet packages, maybe these two were not the right ones. The project template of Q # adds these 2 packages

  • Microsoft.Quantum.Canon
  • Microsoft.Quantum.Development.Kit

I3

I ended up spending a lot of time thinking that the error was that these packages were not available in NuGet. (When I write this both packages are still not available)

So, I took some smart time and I read the error. The problem is that the project can not process any of the Q# compilation targets. If you wonder what imaginary beat are related to the Q# compilation targets? Let me tell you that the Q# source code files uses an .qs extension. and are processed with a special compiler. (A Quantum compiler!)

I5

Let me get back to my story, in every step I lose the thread. The problem is that the project that is created can not find any of the libraries or targets of Microsoft.Quantun. And since they are not yet published in nuget.org, it’s time to fix this in the old fashion way.

If we edit the project file of the Q# App, we will see that the location where the Microsoft.Quantum.* elements are located. is  [..\packages\Microsoft.Quantum…]

I6

However, the project template adds the [packages\Microsoft.Quantum…] folder inside the project folder.

I7

You can imagine the solution, copy/move the folder [packages] to the top folder of the project. Now you can compile your project and go ahead with the tutorial!

I8

In next posts I will write a little bit about the capabilities of the Microsoft Quantum Development Kit. Although the first thing was to have the ability to finish the Hello Q World tutorial.

Happy QCoding!

Greetings @ Burlington

El Bruno

References

Advertisements

10 thoughts on “#VS2017 – Hello QWorld using Microsoft #Quantum Development Kit (fix to build the project) [Updated]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s