Installation of IceWM on Ubuntu 16.04
-
Ubuntu Server 16.04.03 x64 (latest, clean).
-
git clone http://github.com/bbidulock/icewm.git
-
cd icewm
-
./autogen.sh output: ./autogen.sh: 40: ./autogen.sh: autoreconf: not found
https://github.com/bbidulock/icewm/blob/icewm-1-4-BRANCH/autogen.sh#L40
- How to build .deb package?
https://github.com/bbidulock/icewm/issues/222#issuecomment-362923966
You need a complete GNU autoconf/automake/getttext/libtool or alternately a cmake toolchain to build the package. Its been a long time since I used ubuntu, but I helieve there is some "devel" meta-package that pulls in everything you need to build stuff.
Try: apt-get build-dep icewm
@Code7R
Try: apt-get build-dep icewm
E: You must put some 'source' URIs in your sources.list
See this: https://askubuntu.com/questions/430706/installing-autotools-autoconf
@gijsbers
https://askubuntu.com/questions/430706/installing-autotools-autoconf
Ok.
apt-get install autotools-dev apt-get install autoconf

In general one can figure out which package needs to be installed by using a command like for instance command-not-found:
apt-get install command-not-found
Then command-not-found autopoint should tell you which package you need to install to get the autopoint command. By repeating this procedure for whatever command is missing you should succeed eventually.
The README appears to be incomplete on the requirements and the INSTALL file is too generic, while INSTALL.cmakebuild merely refers to INSTALL.
You may wish to add the --enable-gdk-pixbuf flag to configure as this is more stable at the moment, but it may require installing gdk-pixbuf related dependencies. If you succeed it would be interesting to learn all the package dependencies for your system.
@gijsbers
apt-get install -y command-not-found autopoint

I suggest then add this information to the readme. That is, according to the build on ubuntu 16.04 :)
Try to install this first:
apt install asciidoc asciidoctor autoconf automake autopoint build-essential fontconfig fontconfig-config gettext libao-dev libasound2-dev libesd0-dev libsndfile1-dev libfontconfig1-dev libfribidi-dev libgdk-pixbuf2.0-dev libpulse-dev libtool libsm-dev libx11-dev libxext-dev libxft-dev libxinerama-dev libxrandr-dev libxrender-dev
then:
./autogen.sh
./configure --enable-gdk-pixbuf --prefix=/tmp
make -k
make -k install
@gijsbers
apt install asciidoc asciidoctor autoconf automake autopoint build-essential fontconfig fontconfig-config gettext libao-dev libasound2-dev libesd0-dev libfontconfig1-dev libfribidi-dev libgdk-pixbuf2.0-dev libpulse-dev libtool libx11 libx11-dev libxext libxext-dev libxft-dev libxinerama-dev libxrandr-dev libxrender-dev
Unable to locate package libx11 libxext
libx11 -> libx11-6 libxext -> libxext6
./autogen.sh ./configure --enable-gdk-pixbuf --prefix=/tmp make -k
Result:

make -k install

You can omit libx11 and libxext. Comment https://github.com/bbidulock/icewm/issues/222#issuecomment-362846726 was edited.
Yes the compile and install has some translation errors, but you can safely ignore those. The installed icewm should work for you. Did you test it?
@gijsbers

ok...
whereis icewm:
icewm:
apt -y isntall icewm whereis icewm
icewm: /usr/bin/icewm /usr/share/icewm
try icewm --version, which should give you IceWM 1.4.2.1118.
Because you configured --prefix=/tmp you installed to /tmp and your new icewm should be /tmp/bin/icewm. Try /tmp/bin/icewm-session in your .xinitrc. Better set the configure prefix to where you want to install it, recompile and install again.
@gijsbers thx! its work!
How to build a .deb package? :)
You should have said that from the start.
git remote add deb https://github.com/Code7R/icewm.git
git fetch deb
git merge deb/debian/experimental
fakeroot debian/rules binary
@Code7R
I apologize, this is a spontaneous question.
The first post has been fixed.
git remote add deb https://github.com/Code7R/icewm.git

Can create new issues?
@CheckB
You were supposed to run it in your existing working directory, where you other git checkout already lies. Either that, or you can create a new checkout (simply clone https://github.com/Code7R/icewm.git and checkout the branch debian/experimental - I synched this last Sunday, merging latest 1.4 branch so far).
When you are there, run debbuild there and it should do the job or tell you what else (build-deps) is missing.
@Code7R

cd icewm
git remote add deb https://github.com/Code7R/icewm.git
git fetch deb
git merge deb/debian/experimental
fakeroot debian/rules binary
Friends, on the second point the task is:
- On a virtual machine that addresses the CPU host, compile with maximum optimizations, and also configure with minimal components.
- Build a .deb package to minimize the size of the installation (that would not use other packages that are needed for compilation).
- Install the .deb package on the host machine.
Friends, have any ideas? You just need to compile and compile the package into a .deb package
Please start by reading intro documentation about how to setup a basic build environment. Like:
https://duckduckgo.com/?t=palemoon&q=ubuntu+install+compiler
When you have done that, please clone my repo (see above) and checkout the Debian specific branch (debian/experimental in this case which I sync with upstream about every couple of weeks).
When you are there, run dpkg-checkbuilddeps and it will tell you what else has to be installed (with apt). Then run dpkg-buildpackage -us -uc -b and it should finish with a bunch of debs in the parent folder.
PS: and for god's sake, please stop working as root and stop pasting images where you could post plain text.
@Code7R thx.
PS: and for god's sake, please stop working as root and stop pasting images where you could post plain text.
- root is needed to run some software.
- The text is not copied from the virtualbox, and with the running icewm for some reason it does not work.
@Code7R
I did everything as you said ...
Details:

It would really be easier for us if you could use a ssh connection to your VirtualBox server and then copy paste plain text here instead of images. Install openssh-server and openssh-client. Then connect to your server from a terminal with ssh.
What gives (in plain text output, not in a screendump):
apt list --installed | grep -e png -e jpeg -e xpm
Does it help if you try:
apt install libpng16-dev
@gijsbers
apt install libpng16-dev
The following packages will be REMOVED: libfontconfig1-dev libfreetype6-dev libpng12-dev libxft-dev The following NEW packages will be installed: libpng16-dev libpng16-devtools
- Ok, install.
dpkg-buildpackage -us -uc -b dpkg-buildpackage: source package icewm dpkg-buildpackage: source version 1.4.3.0~pre-20180204-1 dpkg-buildpackage: source distribution UNRELEASED dpkg-buildpackage: source changed by Eduard Bloch [email protected] dpkg-buildpackage: host architecture amd64 dpkg-source --before-build icewm dpkg-source: info: using options from icewm/debian/source/options: --extend-diff-ignore=(^|/)(config.sub|config.guess|src/Makefile|doc/icewm.*html|lib/preferences)$ --single-debian-patch --auto-commit dpkg-checkbuilddeps: error: Unmet build dependencies: libxft-dev (>> 2.1.1) | libxft2-dev libpng-dev dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting dpkg-buildpackage: warning: (Use -d flag to override.)
He rolled back the changes. Output from the desired command.
apt list --installed | grep -e png -e jpeg -e xpm
libjpeg-turbo8/xenial,now 1.4.2-0ubuntu3 amd64 [installed,automatic] libjpeg8/xenial,now 8c-2ubuntu8 amd64 [installed,automatic] libopenjpeg5/xenial,now 1:1.5.2-3.1 amd64 [installed,automatic] libpng12-0/xenial,now 1.2.54-1ubuntu1 amd64 [installed] libpng12-dev/xenial,now 1.2.54-1ubuntu1 amd64 [installed] libxpm-dev/xenial-updates,xenial-security,now 1:3.5.11-1ubuntu0.16.04.1 amd64 [installed] libxpm4/xenial-updates,xenial-security,now 1:3.5.11-1ubuntu0.16.04.1 amd64 [installed,automatic]
I would suggest on some Ubuntu forum then. I see no reason why they set the dependencies in a way which uninstalls libxft-dev etc.
@Code7R and on what distribution do you build the package? debian 9?
It is not important for me to collect exactly on ubuntu, I can also build on debian. But with the problem of assembling I will inform the packet maintainers
@CheckB
Debian 9?? Welcome to bleeding edge!
Using Debian Sid here (aka Unstable or development area). But the build also works on Debian 9, I have tested it with a quick test in pbuilder (Debian Stable environment).
In the meantime I moved the target branch from debian/experimental to debian/sid so please checkout that branch.
I think I have also solved the mentioned problem with libpng12 headers, so you can continue with my last instructions above.
@Code7R thx friend. Its work.