-
Notifications
You must be signed in to change notification settings - Fork 388
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
Porting CodeChecker to Windows #555
Comments
There isn't seems to be, and theoretically never will be a |
Hi there, |
Thanks @whisperity for the comment! Great news that scan-build works on Windows too, thanks @rizsotto! I've updated the issue description. |
🙂 You should also add, just for the sake of completeness, that SQLite is also available on Windows. Also various other required (in the full package) Python packages such as |
By the way, CodeChecker works in Ubuntu from Windows 10's Linux subsystem! Wow, even web-server with errors visualization (CodeChecker server) works! |
@irishrover thanks for trying it out, great news! |
Maybe a good first step would be to enable codechecker cmd to connect with the server from windows. That would already be a good feature on its own. For example someone could connect to the web app and download results in the csv form and import it in the excel to fool around (managers like the excel way!) Or is it already possible to do that from the web app itself (and I don't mean the summary only, but the findings)? |
Hi, The CodeChecker cmd can connect to a remote server and get the results in various formats (json, csv, simple table) or if you are interested only in the summary you can do that too. Under the Windows 10 Linux subsystem you should be able to run the commands, but let us know if there are some problems with it. |
That is what I'm using on daily basis: codechecker_cmd results <run_name> --url <private_url> -o json, and I'm doing that from my linux terminal and it works great (with filters and other features as well). The point I had is that I can't do that from windows that easily. Ofc one can use windows 10 linux subsystem as you pointed out, but there are still the same limitations for non-technical people. The use case I was talking about is to make it possible for non-tech to import codechecker results from the server to the excel sheet (excel usually means windows environment). |
Hi. If you have an access to the server, why don't you use a web-interface for watching the results? |
I do. It's the managers who put things into the excel files, then visualize them in charts to finally copy those charts into power point presentation to show on managers meetings |
Sorry, my last comment doesn't answer your question. Depends on what I want to get from the results. If I have several products (obviously each one is in a separate run) and each of them is using the same library (let's say it's c++ boost library, which is likely to be used in many projects). And for some sake I'm interested in how many issues do we have in our products that have something to do with the library how do I get this information in other way? What I can do today is to download result from all runs with applied filters (good feature btw!) and then aggregate them myself. Isn't it a valid use? :) |
If I understand your use case right you can try something like this.
Or a less product specific path filter:
|
Sorry for poking but is there any update on this ticket? If I am reading this correctly the only issue is python-pam is only supported on Linux. I don't know anything about Linux myself but this seems to be an authentication module so i'm assuming is only needed for the webpage reports of some sort. As long as these dependencies are managed then ActiveDirectory or even just not supporting accounts on windows should be possible as a starting point. This is something I am assessing at the moment to see if this is a viable tool for our usage and it looks really good but without a windows version existing we would have to look elsewhere i'm afraid. We don't necessarily need windows source support(though that would be ideal) but maybe as long as a windows package could be made that may make it viable |
@Vexthil Yes, PAM is basically the "user authentication system" for Linux. The Do you need the analysis parts of CodeChecker too, or only the web interface for bug report management? In the latter case, there are pre-built Docker images for the web server part. |
Please look at https://github.com/Ericsson/codechecker/blob/master/tools/report-converter/README.md |
Thanks for the replies. Its good that you say the pam is not needed and there are other authentication options so that is great to hear. I've only got as far as reading the docs so far so I will get this and give it a go and see what we can find out. Overall our goal is to get the clang-tidy outputs organised into a status report up on Jenkins but also have the results for local users and so the unique identifier for new issues parts look very interesting. We had started this ourselves but quickly have found issues with the clang-tidy output format and this looks like things you have solved. The report-converter may be the simplest starting point for us and then we can look at the Jenkins/webpage part in the future. |
@Vexthil I've gotten following workflow to work on windows:
I have one one pull request open @ #3045 |
Can anyone tell me how the cross translational unit analysis is supposed to work in windows? Reading this issue the concern is mainly on the dashboarding / reporting. In our case we want the CTU analysis to work on a windows system where we have a gcc cross compilation with cmake. We do have compile command json on which clangTidy works, now we want CTU possibilities with codechecker. Any ideas? |
What happens if you run the following command on your system:
If yes, what happens if you run the |
@sriprasannaMG To add a little to what @csordasmarton said. Where do you obtain your Clang from? For CTU analysis, there are two things needed: the Clang binary which contains the static analyser and the necessary additional internal features in it, and the If you self-compile Clang, make sure to also compile the |
@VenoVeno I think issues related to the logging of compilation databases (or the bad content of compilation databases), and the driving of the analysis, on Windows, we should report that in this ticket to keep everything in one place. @gyorb (our previous project manager) has investigated several ways to obtain a potentially good compilation database on Windows. Namely, LLVM itself ships with a tool called Every other issue related to actually parsing Windows-targeted source files with Clang itself (both for compilation and for analysis...) should be reported directly to the LLVM Project. While many of us developers here are also contributors to LLVM, the two projects are separate, and we still do not use or have Windows computers or projects within the scope of our job (on the CodeChecker project). |
Windows port requirements and limitations
Dependencies
Compile Command database:
Build command logging is available for
You can read more about compilation databases here by @eliben and here by @Sarcasm .
Possible solutions to create compile command database on Windows
The text was updated successfully, but these errors were encountered: