mirror of
https://github.com/MidnightCommander/mc
synced 2024-12-22 12:32:40 +03:00
121 lines
4.3 KiB
Plaintext
121 lines
4.3 KiB
Plaintext
------------------------------------------------------------------------
|
|
Support for Windows is broken since GNU Midnight Commander started using
|
|
glib. If you want to revive the project, it may be your last chance.
|
|
If nobody volunteers, all the code for the native Windows port will be
|
|
removed from the project.
|
|
------------------------------------------------------------------------
|
|
|
|
|
|
|
|
GNU Midnight Commander for Win32
|
|
--------------------------------
|
|
|
|
0. Introduction
|
|
1. Compiling
|
|
2. Changes made
|
|
3. Authors and maintainers
|
|
|
|
|
|
0. Introduction
|
|
---------------
|
|
Yes, Midnight Commander can be compiled for Win32 (all versions of
|
|
Microsoft Windows starting with Windows 95 for all platforms, except
|
|
Windows CE). It may be tricky to compile, it may be buggy, but it should
|
|
be usable. Maybe you can help as a beta tester or as a programmer.
|
|
In either case you would like subscribe to the mc-devel list (see README
|
|
and FAQ) and contact us.
|
|
|
|
Please note that Midnight Commander remains primarily a file manager for
|
|
UNIX-like systems. You should not expect that it will work on your
|
|
system better than a file manager written specifically for your OS.
|
|
|
|
|
|
1. Compiling
|
|
------------
|
|
|
|
|
|
1.1. Compiler
|
|
-------------
|
|
If you really want to enjoy free software under your non-free OS,
|
|
you should try free compilers. Two of them are supported: RSXNT and
|
|
MinGW. Please visit their respective sites for more information.
|
|
|
|
RSXNT: http://www.mathematik.uni-bielefeld.de/~rainer/
|
|
MinGW: http://www.mingw.org/
|
|
|
|
MinGW is also included with Cygwin (http://www.cygwin.com/).
|
|
|
|
Cygwin environment is so close to UNIX, that it's possible to compile
|
|
GNU Midnight Commander in the same way as it's done in UNIX (see file
|
|
INSTALL for details). However, you should realize that you would get a
|
|
UNIX program that has no idea about drives, Windows-style permissions
|
|
and some other Windows-specific features. This is not the Win32 port
|
|
discussed in this document.
|
|
|
|
Speaking of non-free compilers, Microsoft Visual C++ (4.0 and above) and
|
|
Borland C++ are supported. "Supported" means merely that there are
|
|
specific makefiles for those compilers, but it does not even assume that
|
|
they will compile GNU Midnight Commander out-of-box.
|
|
|
|
|
|
1.2. General issues
|
|
-------------------
|
|
See pc/README, pc/BUGS, pc/TODO for the information concerning current
|
|
state of the port. You will need to hack the code a lot just to
|
|
compile it.
|
|
|
|
|
|
1.3 Windowing Library
|
|
---------------------
|
|
Currently only support for the S-Lang windowing library is provided.
|
|
There are curses clones ported to Win32, but I believe that since we
|
|
are not using autoconf for the Win32 port, we should avoid unnecessary
|
|
difficulties.
|
|
|
|
Currently the Win32 port only can use S-Lang included in this
|
|
distribution (see slang/ subdirectory). This is a subset of S-Lang
|
|
distribution with some bugfixes and MC-specific code changes.
|
|
|
|
|
|
1.4 Features and Limitations
|
|
----------------------------
|
|
Internal editor is supported (including syntax highlighting).
|
|
Internal viewer is supported (including hex editor).
|
|
VFS (virtual file system) is not supported.
|
|
Concurrent subshell is not supported.
|
|
|
|
|
|
2. Changes made
|
|
---------------
|
|
|
|
|
|
2.1. Changes to main code
|
|
-------------------------
|
|
Changes in the main code are enclosed in #ifdef NATIVE_WIN32 blocks.
|
|
|
|
In some cases we suppressed code. This is temporal (so that mc can compile).
|
|
In the future we will provide fake or true interfaces for these features.
|
|
- Links: creation and information on links are not supported. We
|
|
should provide a fake interface for the local filesystem and
|
|
a true one for networked.
|
|
- GID/UID queries (get_user, owner, preserve UID/GID on copy, ...).
|
|
- Terminals: all the code directly done with terminals must be suppressed.
|
|
- Signals: deleted. Should support the native ones.
|
|
- pipes: had some trouble in ext.c and with error_pipes but soon will be
|
|
fixed.
|
|
- Chown command: Not supported yet.
|
|
|
|
|
|
2.2. Files rewritten
|
|
--------------------
|
|
There are several files with so many changes that they have been moved
|
|
to pc/ subdirectory. Our intention should be, however, to make most code
|
|
system-independent. This would increase code reuse and maintainability.
|
|
See pc/ subdirectory for further details.
|
|
|
|
|
|
3. Authors and maintainers
|
|
--------------------------
|
|
The code is not actively maintained, but the patches are applied.
|
|
Please send your changes to the mc-devel list.
|