-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
question: how to develop based on qe-compiler #309
Comments
I made some changes to existing config files main...Zhaoyilunnn:qe-compiler:zhaoyilun-local-conan-package Then a local conan package can be built through |
Hi @Zhaoyilunnn, thank you for writing up this issue. The qe-compiler is still in its infancy of being an opensource project and we certainly have a lot of work to do in migrating documentation that needs to be resumed.
In particular, we have not attempted this path to development yet, but are very interested in this. Internally, we are using the project as a submodule with integration through the Cmake build system.
We would be very interested if you could make a draft PR demonstrating this work so that we could discuss how it might be incorporated in-tree. |
An obfuscated version of our top-level CMakeLists to integrate the project
In this way our internal project contains our targets in a very similar way to https://github.com/openqasm/qe-compiler/tree/main/targets/systems/mock with a top-level cmake file which we use to generate internal binaries. The rough project structure is
We could be very interested in enabling the pathway to remove the |
@taalexander Thanks a lot for your example CMakeLists.txt, actually I gave up making qe-compiler a conan package and adopted a similar top-level CMakeLists.txt ^_^ I am still in the progress of finding the correct way to make it a Conan package. I will make a PR once I figure it out |
Thank you @Zhaoyilunnn, happy to help however you might like. In general, as you're making progress I'd love to chat to understand better what you are trying to do and how to enable it. |
I was trying to build with Mac M1 pro but seeing the error below:
can you help how to resolve this? |
This seems like a conan issue. It appears to not have been able to detect your compiler version. Could you please try
To generate a new profile? This is following this issue |
Thanks , that worked. Can we add this in README for future? |
Sure, would you mind creating a PR quickly and I'll approve. Something along the lines of making sure a profile is setup with
|
Raised the PR 339 |
Hi @taalexander , |
After the error resolved regarding the profile setup , i ran next step , one other error is seen!!
|
Likely the issue is that you have multiple versions of python installed on your system. I would recommend building and configuring the compiler within a virtualenv. You may also pass to cmake the correct python path with What does
Give you? |
I found only one python3 installed with brew
|
Try installing the requirements as in the instructions |
Although looking at this error message |
Based on issue [issue](#309 (comment) ), we added changes to README.md while installing. --------- Co-authored-by: Thomas Alexander <[email protected]>
I used Cmake insted of steps 6 , which still doesnt work. I am working on the set environment.
|
do you have ninja installed? It seems that Ninja cannot be found |
@Zhaoyilunnn yes ninja installed.
|
Found the resolve. will raise PR for that. seems to fail at a different point.
|
I believe this will be resolved by step 3. of the instructions for building:
|
I think i have found the main issue. There is some dependencies not available for arm64 Architecture. Maybe installing on linux will be better. Has anybody working on arm643 with vscode environement? |
Hi Anurag, could you please p ost additional details on how you tracked it down to an arm64 issue? We have been building this on Arm M machines. |
I ran by installing multiple dependencies explicitly which showed this,
Maybe there is different case but installing in linux is working pretty straightforward. |
There are unfortunately differences in libzip (an external dependency) between OSX and Linux on Arm. Could you please look further up the error messages to see what symbols were missing when compiling libzip? |
I tried in linux in virtual machine with 80 gb storage and 4gb ram. @taalexander I dont know if there is some issue with my machine.
|
Hi Team,
Currently I still cannot figure out how to make this project dependent on qe-compiler.
qe-compiler
is an excellent project, I believe many users would like to develop their own full compilers based on this framework. Thus it would be helpful if you could provide some instructions on how to achieve this. I am also very willing to contribute if it requires more effort to make this project a conan package that other projects can depend on.Here are two ways I have tried but failed. Note that I can seamlessly build qe-compiler locally, but I just cannot build a conan package of it and then make my own project dependent on qe-compiler.
01 Manually
This is done by copying
conandata.yml
andconanfile.py
to the path./conan/qec
and create aconan_deps.sh
, which essentially callsconan export
Steps
Manually create a conan package and export it to local cache and then build it
Then install qe-compiler through conan
This method finally results in
02 Conan
Then I tried using
conan create
to create a local conan package.In the root directory of qe-compiler
cd build conan create .. zhaoyilun/qe-compiler --build=outdated -pr:h default -pr:b default -e QSSC_VERSION=0.1.0
Initially, I met following error
The root cause is that conan will not copy
.git
directory into the local cache, resulting in the error ofsetuptools_scm
. After checking the CMakeLists.txt, I found that I can explicitly setVERSION_STRING
to avoid usingsetuptools_scm
.After fixing the above error, it results in a cyclic dependency error
System info
The text was updated successfully, but these errors were encountered: