Difference between revisions of "Obtaining Vifm"
(→Building x86 version: Add MXE target name) |
(→Using MinGW: Describe in general) |
||
Line 109: | Line 109: | ||
==== Using MinGW ==== | ==== Using MinGW ==== | ||
− | ' | + | ===== PDCurses ===== |
+ | |||
+ | Needs to be altered with patches from <code>patches/pdcurses/</code> directory | ||
+ | of Vifm's source tree and rebuilt as shared library. | ||
+ | |||
+ | ===== Building ===== | ||
+ | |||
+ | From <code>src/</code> directory run: | ||
+ | |||
+ | <source lang="bash"> | ||
+ | make -f Makefile.win | ||
+ | </source> | ||
=== OS X === | === OS X === |
Revision as of 17:34, 8 September 2014
*nix like
From sources
Building from sources shouldn't cause any troubles.
Prerequisites:
- development version (the one that includes header files) of curses library (most likely ncurses) built as shared library with enabled wide-character support (should be available on most systems). On Debian-based systems package you need is called
libncursesw5-dev
.
The standard set of command should work just fine:
./configure
make
make install
By default Vifm will be installed under `/usr/local`, if you want to have it in `/usr`, specify `--prefix` parameter:
./configure --prefix=/usr
If you know how to make a package on for your distribution, it's recommended to
make one and install it rather than running make install
. E.g. on
Slackware Linux one could do:
mkdir build
make DESTDIR="$PWD/build" install
su
cd build
makepkg ../vifm-dev.txz
installpkg ../vifm-dev.txz
GNU/Linux
Using package managers
See Downloads page for a list (probably incomplete) of Vifm packages in various operating systems.
Note that there is no guarantee that packages are up to date. To use the latest version of Vifm refer to section on building Vifm from sources.
Windows
Cygwin
There are no prebuild Cygwin packages for Vifm, so one needs to build it from sources.
The process is basically the same as building on *nix like operating system from sources .
configure
script takes care of most of details and normally no additional steps are needed.
Using MXE (on GNU/Linux)
MXE (M cross environment) is a great tool to cross compile Windows applications on GNU/Linux, which is actually much easier than building them on Windows.
Additional patches for pdcurses
from
patches/pdcurses/
directory of Vifm's source tree
should be copied to src/
directory of MXE.
Building x86 version
MXE target name: i686-pc-mingw32
.
Required MXE packages:
- binutils
- gcc
- libgnurx
- mingwrt
- pdcurses
- pthreads
- w32api
- winpthreads
Build MXE with patches for pdcurses
.
To build Vifm, export $CROSS
environment variable like this:
export CROSS=$HOME/repos/mxe/usr/bin/i686-pc-mingw32-
Then run the following command from root of Vifm's source tree:
make -C src/ -f Makefile.win
Building x86_64 version
MXE target name: x86_64-w64-mingw32
.
Required MXE packages are as for x86 version, but with mingw-w64
instead of mingwrt
.
Build MXE with patches for pdcurses
.
To build Vifm, export $CROSS
environment variable like this:
export CROSS=$HOME/repos/mxe/usr/bin/x86_64-w64-mingw32-
Then run the following command from root of Vifm's source tree:
make -C src/ -f Makefile.win
Using MinGW
PDCurses
Needs to be altered with patches from patches/pdcurses/
directory
of Vifm's source tree and rebuilt as shared library.
Building
From src/
directory run:
make -f Makefile.win
OS X
Using HomeBrew
TODO
Using MacPorts
TODO