micropython/windows
Paul Sokolovsky aeadf7607d windows/README: Deprecate mingw32, suggest using mingw64.
Ubuntu's mingw32 has gcc 4.2.1, which is rather old and has incorrect
non-initialized variable analysis which produces warnings, which
per MicroPython default settings get turned into errors.
2015-11-01 01:05:33 +03:00
..
msvc windows: Do not use wildcards when looking for sources in directories containing optional features 2015-10-25 15:33:49 +03:00
.gitignore Windows MSVC port 2014-05-08 10:06:43 +02:00
init.c windows: Call _set_output_format() only on Visual Studio versions 2013 or lower. 2015-10-30 11:37:58 +03:00
init.h windows: Add modtime implementation 2014-05-09 13:58:15 +02:00
Makefile all: Make netutils.h available to all ports by default. 2015-10-19 18:32:42 +03:00
micropython.vcxproj msvc: Allow overriding of build options with custom file 2015-04-30 10:14:59 +02:00
mpconfigport.h all: Add py/mphal.h and use it in all ports. 2015-10-31 19:14:30 +03:00
mpconfigport.mk windows: Implement the mp_hal_xxx functions and enable mp-readline 2015-06-04 19:22:13 +03:00
README windows/README: Deprecate mingw32, suggest using mingw64. 2015-11-01 01:05:33 +03:00
realpath.c windows: Make unistd.h more posix compatible 2015-08-14 12:04:23 +02:00
realpath.h Add license header to (almost) all files. 2014-05-03 23:27:38 +01:00
sleep.c windows: Add usleep() implementation for msvc port 2015-10-25 15:42:19 +03:00
sleep.h windows: Add usleep() implementation for msvc port 2015-10-25 15:42:19 +03:00
windows_mphal.c all: Add py/mphal.h and use it in all ports. 2015-10-31 19:14:30 +03:00
windows_mphal.h all: Add py/mphal.h and use it in all ports. 2015-10-31 19:14:30 +03:00

This is experimental, community-supported Windows port of MicroPython.
It is based on Unix port, and expected to remain so.
The port requires additional testing, debugging, and patches. Please
consider to contribute.


To cross-compile under Debian/Ubuntu Linux system:

sudo apt-get install gcc-mingw-w64
make CROSS_COMPILE=i686-w64-mingw32-

If for some reason mingw64 crosscompiler is not available, you can try
mingw32 instead, but it come with really old gcc which may produce some
spurious errors (you may need to disable -Werror):

sudo apt-get install mingw32 mingw32-binutils mingw32-runtime
make CROSS_COMPILE=i586-mingw32msvc-


To compile under Cygwin:

Install following packages using cygwin's setup.exe: mingw-gcc-g++ make
make CROSS_COMPILE=i686-pc-mingw32-


To compile using Visual Studio 2013:

Open micropython.vcxproj and build


To compile using Visual Studio 2013 commandline:

msbuild micropython.vcxproj


To run on Linux using Wine:

Default build (MICROPY_USE_READLINE=1) uses extended Windows console
functions and thus should be run using "wineconsole" tool. Depending
on Wine build configuration, you may also want to select curses backend
which has look&feel of a standard Unix console:

    wineconsole --backend=curses ./micropython.exe

For more info, see https://www.winehq.org/docs/wineusr-guide/cui-programs

If built without line editing and history capabilities
(MICROPY_USE_READLINE=0), the resulting binary can be built using standard
"wine" tool.