Skip to content

Latest commit

 

History

33 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyxwin

A utility for downloading Visual Studio Workloads on non-Windows OS for cross compiling Windows apps and libraries.

The project is inspired by the rust based xwin cargo package in python.

The goal is to let Python users download Python, Microsoft CRT and Windows SDK that each contain all of the necessary includes and libraries needed for an application to compile and link Python extension modules from a non-Windows platform, using a native cross compiling toolchain like clang/LLVM. This includes adding symlinks to correct numerous casing issues in the Windows SDK so that the files generated by this program can function on a case-sensitive file system.

Note

To use this tool you must accept the MICROSOFT VISUAL STUDIO REMOTE DEBUGGER, INTELLITRACE COLLECTOR, other DEBUGGERS, AGENTS and BUILD TOOLS License agreement. See LICENSES/LICENSE-Microsoft-Build-Tools.md for details.

Directory Structure

Tree Visualization

The directory structure created by this tool is as follows:

.pyxwin-cache:/
├── manifest_<version>:/
│   └── <channel_name>:/
│       ├── vs_channel_manifest.json
│       └── vs_installer_manifest.json
├── downloads:/
│   └── <workload_name>:/
│       └── <architecture>:/
│           └── ...
├── unpack:/
│   └── manifest_<version>:/
│       └── <channel_name>:/
│           └── ...
└── reduced:/
    └── manifest_<version>:/
        └── <channel_name>:/
            ├── msvc-<version>:/
            │   ├── include:/
            │   │   └── ...
            │   └── lib:/
            │       └── <architecture>:/
            │           └── ...
            └── sdk-<version>:/
                ├── include:/
                │   └── ...
                └── lib:/
                    ├── ucrt:/
                    │   └── <architecture>:/
                    │       └── ...
                    ├── ucrt_enclave:/
                    │   └── <architecture>:/
                    │       └── ...
                    └── um:/
                        └── <architecture>:/
                            └── ...

Where <Version> is the version of the CRT or SDK downloaded.

About

A utility for downloading Visual Studio Workloads on non-Windows OS for cross compiling Windows apps and libraries.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages