厨师安装uwsgi libiconv.so.2没有这样的文件或目录

时间:2017-01-21 03:28:26

标签: python pip chef uwsgi

我正在尝试使用uwsgi设置Django服务器。使用poise-python使用以下配方安装uwsgi时:

python_runtime '3'

python_package 'uwsgi' do
    python '3'
end

当我登录到计算机并且只运行uwsgi时没有任何选项时,会抛出错误:

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

我检查了库并且未安装libiconv.so.2

sudo ldconfig -p | grep libiconv

但是,当我按照以下方式重新安装时:

sudo pip uninstall uwsgi
sudo pip install uwsgi

uwsgi命令再次起作用。有点奇怪的是,当我检查是否安装了libiconv.so.2时,它仍然没有安装。

如何在不使用uwsgi运行我所执行的命令的情况下告诉大厨正确安装execute

注意:我正在使用测试厨房,并且在运行任何命令之前已重置虚拟环境。 os是debian 8.6。

3 个答案:

答案 0 :(得分:7)

这对我有用:

conda install -c conda-forge libiconv

参考:https://anaconda.org/conda-forge/libiconv

答案 1 :(得分:1)

在厨房测试时出现同样的错误。 image = image.resize(dim) 位于libconv,因此您需要包含/opt/chef/embedded/lib/的路径:

ldconfig

答案 2 :(得分:0)

我知道这已经晚了3年。排序答案:

yum install libxml2-devel

为我纠正了此问题(可能会对与老厨师一起使用旧食谱的其他人有所帮助)

我试图在较旧版本的厨师食谱中安装石墨,其结果与原始海报相同。

ldd /usr/local/bin/uwsgi 
    linux-vdso.so.1 =>  (0x00007ffcdf53f000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f83286fa000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f83283f8000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f83281f4000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f8327fde000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f8327d7c000)
    libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f8327b77000)
    libssl.so.1.0.0 => not found
    libcrypto.so.1.0.0 => not found
    libxml2.so.2 => /lib64/libxml2.so.2 (0x00007f832780d000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f83275e7000)
    libiconv.so.2 => not found
    libutil.so.1 => /lib64/libutil.so.1 (0x00007f83273e4000)
    libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f83271ad000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f8326de0000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f8328916000)
    libfreebl3.so => /lib64/libfreebl3.so (0x00007f8326bdd000)

所有未找到的 都位于/opt/chef/embedded/lib中,我的想法是pip的链接程序以某种方式使用了/opt/chef/embedded/lib/pkgconfig而不是默认系统(或除了默认系统之外)路径。

libiconv 似乎没有在CentOS 7中使用,但包含在libxml-2.0,libxslt和libexslt的/opt/chef/embedded/lib/pkgconfig文件中……这导致我进入 libxml2-devel