由于缺少 libpng,lubuntu 16.04 上的 Emacs 25.1 无法配置

Emacs 25.1 on lubuntu 16.04 won't configure due to missing libpng

我正在尝试在 lubuntu 16.04 上安装 emacs 25.1,但遇到了一些问题。下载并解压 tar 后,我导航到 emacs 25.1 目录然后.. ./configure

收到消息后配置停止

configure: error: The following required libraries were not found:
    libpng
Maybe some development libraries/packages are missing?
If you don't want to link with them give
     --with-png=no
as options to configure

当我尝试时 sudo apt install libpng-dev

我收到消息

Note, selecting 'libpng12-dev' instead of 'libpng-dev' libpng12-dev is already the newest version (1.2.54-1ubuntu1). 0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded. 我尝试使用以下字符串重新安装 libpng12-dev,但完全没有帮助。

sudo apt-get install --reinstall libpng12-0=1.2.54-1ubuntu1

我被困在这里,我用谷歌搜索了一段时间,但找不到任何实际有效的解决方案。

解决方案是删除默认版本的 libpng-dev (1.2) 并明确安装版本 1.6:sudo apt-get remove libpng-dev && sudo apt-get install libpng16-dev

自述文件中似乎没有记录依赖项的显式版本。

我也遇到了同样的问题。我查看了config.log文件后发现,因为我已经安装了Anaconda3python

当 gcc 编译 emacs 时,它使用在 Anconda3 目录 中找到的一些 libpng...。 所以我删除了PATH中的相关Anaconda3目录,结果一切正常。

版本错误:

configure:15301: result: -lz
configure:15407: checking for png
configure:15437: gcc -o conftest  -g3 -O2 -I/etc/anaconda3/include/libpng16       conftest.c -lpng16 -lz -lm -lX11   >&5 
/usr/bin/ld: cannot find -lpng16

正确的版本:

configure:15301: result: -lz
configure:15407: checking for png
configure:15437: gcc -o conftest  -g3 -O2 -I/usr/include/libpng12       conftest.c -lpng12 -lz -lm -lX11   >&5 
configure:15437: $? = 0
configure:15452: result: yes

希望对您有所帮助!