-
Notifications
You must be signed in to change notification settings - Fork 27
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
Windows support #17
Comments
Thank you for testing build on Windows! I'm seeking for somebody who can help me with that. Yes, the clang_delta compilation takes quite some time, LLVM is a huge project. |
Hey Marnix, I'm so glad you made this fork, I've been doing these reductions by hand the last few years. Python is a bit easier to hack than perl to work around some restrictions. Native windows support for me a gradient, with following elements:
I still haven't managed to get things completely working. However, I made some progress already. Current issues I'm having: unifdef can't be found. So I currently disabled the reductions that relied on that, and am trying to get a simple reduction working. I saw unifdef is part of CReduce as C or C++ compiled to an exe, here I found a python script. Is that a replacement for that C/C++ code? If so, on windows, those things don't become executable by default. So than I might have to check if it's possible to wrap this in a .cmd file that launches python with that script. |
Yes, I like Python and I hope it's accessible also for other developers.
Good. I think the best would be to start with https://www.appveyor.com/.
I've just pushed a commit that skips passes that don't have prerequisites.
Right, CReduce contains the project. I didn't want to bundle all tools that are part of a standard distribution.
It's really missing, but there are instructions about how to build it on Windows: |
Thanks for the update, I'll download new source code (can't checkout from git). Unifdef doesn't have instructions for visual studio not has CMake, that's annoying. From an error point of view, the warning could explain what the missing dependency is |
I see. If it's the last remaining blocker I tend to bundle it (it's small).
|
@JVApen Have you made a progress, please? |
Not yet, looking at this is an extra evening activity. Haven't had the ability to look further at this. |
@JVApen what are you trying to reduce here? Do you have access to a Linux box? I have successfully reduced multiple, many-MiB TUs, compiled with MSVC, using |
I truly wish I had access to Linux or even WSL to try that out. I even have restrictions in downloading packages. To come back to what I want to reduce, bugs (or differences) in clang-cl and cl |
I've started again from trunk 1.3 trying to get it compiling again. The newly added delta does give some of the previous issues:
All .l files still needed the %option nounistd Time to try it out |
Awesome news you have it building on Windows!!! |
Yeah, now I'm trying it out, thanks to a new dependency, I now have to find a way to hack in psutil without the ability to install it. That's gonna be for later. |
For |
Thanks, I was updating the PATH variable, not the PYTHONPATH variable. That got things working :) Some new improvements, following snippet doesn't work in batch:
What I changed it to, based on https://stackoverflow.com/a/32109191/2466431
|
To reply on the installation things:
So, I'm basically doing those things from source, however, they all have some support for MSVC |
Trying to compile this on Windows (Visual Studio 2019) doesn't work.
I use the following to configure my CMake:
cl : command line error D8021: invalid numeric argument '/Werror' [build\clang_delta\clang_delta.vcxproj]
After removing this flag from source/CMakeLists.txt (line 144-145), an actual build gets started.
Later we get other errors, like:
These last 2 warnings are a result of source/clex/CMakeLists.txt
I also encountered some issues with the .l files, however, this could be linked to older hacks I've added to our lexer. (I did have to add %option nounistd to the options).
With these changes, I got the C++ code compiling.
Can we get some native windows support instead?
Note: Compile times take long with a lot of warnings. (Over 14 minutes on 1 file)
The text was updated successfully, but these errors were encountered: