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
Compiling DirectXShaderCompiler on Linux/macOS #1236
Comments
|
I thought of asking the same. You should support Linux and possibly MacOS as the latter got a VulkanSDK. |
|
DXC doesn't work with wine in the meanwhile? |
|
Also see: #1082 |
|
Our primary goal is to get DXC/SPIR-V production ready on Windows. With that said, we consider DXC/SPIR-V as mature-ish ATM. So we started looking into Linux support. @ehsannas is driving the effort. So, stay tuned. ;-P |
|
We have started looking into porting DXC to Linux. We have reached some promising initial results, but there is a lot of work to be done to make things production quality. Over the coming weeks/months we will be communicating with Microsoft to make sure we reach a robust and clean solution. Stay tuned :) |
|
@ehsannas Great! BTW. Would it make sense to add DXC as a package to vcpkg as the latter is supported on Linux/Mac now? |
|
Will the Linux version output SPIRV or also DXIL? |
|
The plan of record is to support both. |
|
I am also interested in this and I'd like to help. Have you made any progress so far, or do you have some suggestions where to start? |
|
Hi all, thanks for your patience while we worked on getting DXC working on Linux! I'm pleased to say that our fork has reached the point where you can compile and run DXC on Linux (and macOS)! You can give it a try by checking out the We have already started, and will continue to post pull-requests to the Microsoft repository in order to get the Microsoft/master branch working on Linux! At that point, we will stop development on our fork, and contribute directly to the Microsoft repository. |
|
That is great news! And my apologies for some of the code reviews taking so long. Two people left our team so we are quite busy. |
|
Thank you so much! This is excellent news |
|
Thanks @hekota for the code reviews :) |
|
Np :) |
|
Absolutely! Thank you @pow2clk! |
|
@ehsannas Will the Linux build be available on AppVayor? |
|
For anyone interested, I've containerized this in Docker now and pushed an image to Docker Hub |
|
@Zingam: we'll coordinate with Microsoft to see how we can proceed with that. |
|
Thanks to all involved as well! You made it easy and fun to contribute and I appreciate it. |
|
Hi all, The We will contribute directly to the Microsoft repository in case any improvements are needed. |
|
@Zingam: As per #1407, we now have Traivs CI enabled for Linux and macOS. However, unlike Appveyor CI, Travis CI does not support hosting artifacts after the build. Besides, libraries compiled on Linux tightly relates to the host environment. So we may not be able to provide downloads for Linux/macOS. The steps for building it is quite straightforward CMake steps, though: https://github.com/Microsoft/DirectXShaderCompiler/blob/master/docs/DxcOnUnix.rst#building-dxc. |
|
Hey @gwihlidal, would you mind contribute the Docker configuration file to the upstream repo? It can be useful for others trying to dockerize DXC. :) |
|
Hi @antiagainst, I'll look at doing that (any preference on location in the tree for the Dockerfile?). In the meantime, I've written a brief blog post about this: https://wihlidal.com/blog/pipeline/2018-09-15-linux-dxc-docker/ |
|
Awesome write up! Cloud based shader compilation sounds really neat! I don't have a strong preference as for the location of the Dockerfile. I think project root should be good? |
Do you know if is it possible to compile DirectXShaderCompiler on Linux? It is mainly for having the compiler to generate SPIR-V shaders for Vulkan from HLSL sources on Linux.
The text was updated successfully, but these errors were encountered: