emacs-gcc-pgtk icon indicating copy to clipboard operation
emacs-gcc-pgtk copied to clipboard

unmet dependencies when installing .deb

Open xeijin opened this issue 3 years ago • 5 comments

Hello,

I am using a copy of your .deb package generated a couple of days ago in a docker build (for now just uploaded to a repository to test).

However the build fails

The following packages have unmet dependencies:
 emacs-gcc-pgtk : Depends: libotf0 but it is not installable
                  Depends: libgccjit0 but it is not installable
                  Depends: libm17n-0 but it is not installable
                  Depends: librsvg2-2 but it is not installable
                  Depends: libjansson4 but it is not installable

I am using the same version of ubuntu as your Dockerfile: https://gitlab.com/xeijin-dev/emacs-pgtkncb/-/blob/main/Dockerfile#L1

This is the install command from my dockerfile: https://gitlab.com/xeijin-dev/emacs-pgtkncb/-/blob/main/Dockerfile#L19

Here is the relevant section of the failed docker build: https://gitlab.com/xeijin-dev/emacs-pgtkncb/-/jobs/1511569698#L1852

xeijin avatar Aug 17 '21 22:08 xeijin

Right now I have no idea why it does not work. Few months ago when I used ubuntu 20.10 it worked. It looks like these packages now have slightly different name. You should change the Docker file for emacs-gcc-pgtk accordingly.

Can you install these packages manually apt install libotf0 libgccjit0 libm17n-0 librsvg2-2 libjansson4.

konstare avatar Aug 18 '21 04:08 konstare

@konstare OK that seemed to work, thank you. Though I don't understand why apt would not install the dependencies itself, maybe I am missing a flag somewhere.

Anyway I have another issue - the resulting binary does not seem to be symlinked as 'emacs'? The final part of my build is failing: https://gitlab.com/xeijin-dev/emacs-pgtkncb/-/jobs/1512840700#L2431

Would it be possible to have the deb create this symlink? Otherwise I will need to handle the version number each time.

xeijin avatar Aug 18 '21 10:08 xeijin

Though I don't understand why apt would not install the dependencies itself, maybe I am missing a flag somewhere

If you find the reason, please tell me. Maybe the problem is that you delete /var/lib/apt/lists/* and after this you are trying to install deb package. What will happen if you change the order

The binary files and the symlink are installed in /usr/local/bin Please, check that /usr/local/bin in the PATH.

You can also modify the emacs-gcc-pgtk Docker files to install in /usr

konstare avatar Aug 18 '21 10:08 konstare

Though I don't understand why apt would not install the dependencies itself, maybe I am missing a flag somewhere

If you find the reason, please tell me. Maybe the problem is that you delete /var/lib/apt/lists/* and after this you are trying to install deb package. What will happen if you change the order

The binary files and the symlink are installed in /usr/local/bin Please, check that /usr/local/bin in the PATH.

You can also modify the emacs-gcc-pgtk Docker files to install in /usr

OK I removed all my superfluous config for now, but now getting errors like:

emacs: error while loading shared libraries: libgpm.so.2: cannot open shared object file: No such file or directory

This doesn't seem right to me, maybe a packaging issue? I take it it's working fine for you?

xeijin avatar Aug 18 '21 12:08 xeijin

This doesn't seem right to me, maybe a packaging issue? I take it it's working fine for you?

Yes, this is packaging issue. I did not have any idea which packages one should put in dependencies or their versions. I put packages which are not installed on default ubuntu. You are using the minimal ubuntu installation, this ubuntu does not have a lot of things.

You can install dependencies for emacs 27.1. I think this will be overkill and in the result you will install some useless packages. On the other hand some packages are not listed below:

emacs-bin-common (= 1:27.1+1-3ubuntu3), emacs-common (= 1:27.1+1-3ubuntu3), libacl1 (>= 2.2.23), libasound2 (>= 1.0.16), libc6 (>= 2.32), libcairo2 (>= 1.10.0), libdbus-1-3 (>= 1.9.14), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.2.1), libgdk-pixbuf-2.0-0 (>= 2.22.0), libgif7 (>= 5.1), libglib2.0-0 (>= 2.37.3), libgmp10 (>= 2:6.0.0), libgnutls30 (>= 3.7.0), libgpm2 (>= 1.20.7), libgtk-3-0 (>= 3.21.4), libharfbuzz0b (>= 0.9.42), libice6 (>= 1:1.0.0), libjansson4 (>= 2.7), libjpeg8 (>= 8c), liblcms2-2 (>= 2.2+git20110628), libm17n-0 (>= 1.6.1), libotf0 (>= 0.9.11), libpango-1.0-0 (>= 1.18.0), libpng16-16 (>= 1.6.2-1), librsvg2-2 (>= 2.32.0), libselinux1 (>= 3.1~), libsm6, libsystemd0, libtiff5 (>= 4.0.3), libtinfo6 (>= 6), libx11-6, libxext6, libxfixes3 (>= 1:4.0.1), libxml2 (>= 2.7.4), libxrender1, zlib1g (>= 1:1.1.4)

konstare avatar Aug 18 '21 14:08 konstare