Mirror of icoutils from https://git.savannah.nongnu.org/icoutils.git

Frank Richter 749f87a0c5 Update .po files 2 months ago
build-aux cdf86f6e55 Update gnulib-sourced files 10 months ago
common 7cfc16ecf4 common/common.h: Introduce (more) hygenic definitions of SWAP, min and max macros. 10 months ago
data 99e09b7dcb Update email address 8 years ago
extresso d03afb459c genresscript: Add options to man page 4 years ago
icotool cd0bf535c6 wrestool: Add support for PE32+ binaries 2 months ago
lib cdf86f6e55 Update gnulib-sourced files 10 months ago
m4 cdf86f6e55 Update gnulib-sourced files 10 months ago
po 749f87a0c5 Update .po files 2 months ago
wrestool b152b8881b wrestool: Formatting fix 2 months ago
.gitignore 102c8319f8 gitignore: Ignore most generated files. 10 months ago
ABOUT-NLS aa673de4e4 gettextize using gettext- 10 months ago
AUTHORS 418353e703 Updated NEWS, AUTHORS 10 months ago
COPYING 344c4ffde9 Update license to GPLv3. 8 years ago
ChangeLog 956152385d Import icoutils 0.26.0 sources 9 years ago
INSTALL ca715e63ee Update INSTALL 8 years ago
MANIFEST.sources 8ccb93ee58 Update MANIFEST.sources 8 years ago
Makefile.am 5f78b468f3 Use rpmbuild for building rpm 8 years ago
NEWS f8d5ef6415 Update NEWS 2 months ago
README 344c4ffde9 Update license to GPLv3. 8 years ago
TODO 956152385d Import icoutils 0.26.0 sources 9 years ago
bootstrap c7a3146a6c configure: Enable many more warnings and add --enable-werror. 10 months ago
configure.ac 5e11d2c425 Version bump 2 months ago
icoutils.spec.in dc32386733 Updated the RPM .spec file a little. 8 years ago


icoutils - Introduction

The icoutils are a set of program for extracting and converting images in
Microsoft Windows(R) icon and cursor files. These files usually have the
extension .ico or .cur, but they can also be embedded in executables and
libraries (.dll-files).

The icotool program converts icon and cursor files into a set of PNG
images. (Each icon/cursor file may contain multiple images, usually of
different sizes and with different number of colors.) Icotool can also
create icon/cursor files from PNG images.

The wrestool program can extract both icons and cursors from 32-bit ("PE")
and 16-bit ("NE") executables and libraries. It writes .ico and .cur files
that can be used on Windows(R) operating systems as well. Other types of
embedded resourced can be extracted, however only in raw form - icons and
cursors require additional conversion before they can be saved as icon and
cursor files.

The extresso script automates the tasks of extracting and converting icons.
This is done with the help of of special resource scripts. The purpose of
these scripts are to give names to the icons in the executables and

The icoutils were designed to compile and run on modern POSIX compatible
systems such as Linux.

Windows is a registered trademark of Microsoft Corporation in the United
States and other countries.

Copyright and License

The icoutils are copyright (C) 1998 Oskar Liljeblad.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see .

The source code of this project may contain files from other projects, and
files generated by other projects, including:

* GNU Autoconf (http://www.gnu.org/software/autoconf/)
* GNU Automake (http://sources.redhat.com/automake/)
* GNU gettext (http://www.gnu.org/software/gettext/)
* GNU Libtool (http://www.gnu.org/software/libtool/)
* Gnulib (http://www.gnu.org/software/gnulib/)
* Autoconf Macro Archive (http://ac-archive.sourceforge.net/)

Such files are licensed under the terms of the GNU General Public License
or a license compatible with the GNU GPL (as listed on
http://www.gnu.org/licenses/license-list.html). See each file for copyright


The following programs are required to build icoutils:

* GNU C Compiler (gcc), version 2.95 or later

The icoutils use some features specific to gcc 2.95 and later (such as
macros with variable number of arguments). The GNU C Compiler is part of
the GNU Compiler Collection which can be downloaded from
http://gcc.gnu.org/. In Debian and many other distributions the package
is called gcc.

* make, a modern implementation

The make program is required to build icoutils. icoutils uses Makefiles
generated by GNU Automake. The recommended make is GNU Make which can be
downloaded from http://www.gnu.org/software/make/. In Debian and many
other distributions the package is called make.

The following libraries are required to run icoutils:

* libpng, 1.0.0 or later.

The icotool program uses libpng to read and write PNG images. Libpng can
be downloaded from http://www.libpng.org/pub/png/libpng.html. In Debian,
the libpng package is called libpng12-0 (libpng3 in stable). The
libpng12-dev (libpng-dev in stable) package is required when building
the icoutils.

Libpng is licensed under the terms of the libpng license. This license
is almost identical to the ZLib license, which is compatible with GNU
GPL according to http://www.gnu.org/philosophy/license-list.html. Libpng
itself depends on ZLib.

The following programs and libraries are required to run the extresso and
genresscript programs which are optional:

* Perl, probably 5.6 or later

Perl can be downloaded from http://www.perl.org/. Perl is licensed under
the terms of either the GNU General Public License or the Artistic
license (the choice is yours).

* libwww-perl, probably 5.64 or later

The extresso perl script uses libwww-perl for fetching files.
Libwww-perl can be downloaded from http://lwp.linpro.no/lwp/.
Libwww-perl is licensed under the same terms as Perl itself. This also
applies to all modules which libwww-perl depends on.


The icoutils programs use GNU Autoconf and GNU Automake. This means you
usually just have to do


to compile the program. If you want to install the necessary files, run the
following as as root:

make install

For more information regarding configure and make, see the INSTALL


See the manual pages or the documentation in the doc subdirectory of the
source code tarball.


Web site and file area for microdc is hosted on Savannah:



The maintainer of icoutils and this document, Frank Richter, can be reached
via email:

frank.richter@gmail.com (mailto:frank.richter@gmail.com)

Please send bug reports, suggestions, ideas or comments in general to me.

Known Bugs

* Aside from not compiling on all systems, wrestool MAY not work on
non-x86 machines due to endian-ness. However, icotool should work on
little as well as big endian machines.

* There is no relocation support for 16-bit (NE) binaries. If you find a
massive deposit of such binaries, let me know.

Possible things to do

Please see the TODO document.