pkubowicz / opendetex

Improved version of Detex - tool for extracting plain text from TeX and LaTeX sources
Other
236 stars 35 forks source link

Update packages required for Debian system compilation #72

Closed dwu402 closed 3 years ago

dwu402 commented 3 years ago

I found I needed to install the dev library on Ubuntu 20.04 (focal) to get the compilation on v2.8.9 to work.

It looks like this library provides libfl.so that is required to compile.

The flex package used to depend on libfl-dev, per this but now only recommends it:

apt show flex

Package: flex
Version: 2.6.4-6.2
Priority: optional
Section: devel
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Manoj Srivastava <srivasta@debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 975 kB
Pre-Depends: debconf | debconf-2.0
Depends: libc6 (>= 2.26), m4
Recommends: gcc | c-compiler, libfl-dev
Suggests: bison, build-essential, flex-doc
<snipped>

An alternative workaround would be to suggest flex-old, for v2.5.4a flex and older.

pkubowicz commented 3 years ago

I use Ubuntu 20.10 and installing flex is enough in my case:

% sudo apt install flex    
The following additional packages will be installed:
  libfl-dev
Suggested packages:
  bison flex-doc
The following NEW packages will be installed:
  flex libfl-dev

I just uninstalled flex, the build failed, then installed just flex and my build works fine.

I am not a Linux expert, but a quick search suggests that installing recommended packages is a default behaviour of Apt in Debian and Ubuntu: [1] https://unix.stackexchange.com/questions/122289/why-install-recommends-default-is-true [2] https://askubuntu.com/a/18553

I think you have problems because you have a non-standard configuration of your system.

dwu402 commented 3 years ago

Just did a remove and reinstall of flex, and it seemed to install libfl-dev this time. Must have been some transient problem with my system - my configuration showed that the install-recommends config flag was set to true.

Thanks for pointing this out.