mtools

Cross-compiling mtools

This page shows how to cross-compile mtools for AT&T UnixPC. A pre-compiled binary is also available.

(Mtools is useful for transferring stuff from/to the UnixPC, such as downloaded or cross-compiled files)

To cross-compile mtools, you need:

Once you have downloaded these, build and install the cross compiler (if not yet done), and then follow the below instructions:

tar xzvf mtools-4.0.41.tar.gz
mkdir compile-mtools
cd compile-mtools
../mtools-4.0.41/configure CC=/opt/unixpc/bin/unixpc-gcc --host unixpc
make

To link mtools with the shared library, add CFLAGS="-shlib -O3 -Os -fomit-frame-pointer" to the configure command line.

The compiled binary will be found in mtools, you can transfer it to the UnixPC using kermit over the serial line


Compiling mtools on UnixPC itself

You may also compile mtools on the UnixPC itself using the included gcc 2.5.8 compiler. Beware that this is very slow. Moreover, you need a Posix-compliant shell (such as dash, or bash if you have enough memory) to run the configure script, as UnixPC's included Bourne shell is not compliant enough. Also, watch out that the UnixPC box has been booted recently, or else the process ids may grow big enough as to make temporary files overflow the 14 character limit.

tar xzvf mtools-4.0.42.tar.gz
mkdir compile-mtools
cd compile-mtools
CONFIG_SHELL=/bin/dash
export CONFIG_SHELL
$CONFIG_SHELL ../mtools-4.0.42/configure --build unixpc ac_cv_path_GREP=/bin/grep ac_cv_path_EGREP=/bin/egrep CFLAGS=-D_SIZE_T_ ac_cv_header_stdc=no
make

You may also download a ready-made config.h and Makefile from this page, and directly proceed to make.