AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[library](server)

Martin Hope
Steven
Asked: 2022-02-08 03:17:59 +0800 CST

库不会更新

  • 1

我正在尝试在 CentOS 7 上更新我的 libarchive 库。目前,我的版本为 3.1.2。如果我键入以下命令,结果如下:

# rpm -q libarchive
libarchive-3.1.2-10.el7_2.x86_64

我在网上找到了一个 .rpm 文件,它提供了 libarchive 3.5.2。我想更新到这个较新的版本。因此,我尝试通过键入以下内容来安装该软件包:

# rpm -i libarchive-3.5.2-1.el9.src.rpm
warning: user mockbuild does not exist -- using root
warning: group mock does not exist -- using root
warning: user mockbuild does not exist -- using root
warning: group mock does not exist -- using root
warning: user mockbuild does not exist -- using root
warning: group mock does not exist -- using root
warning: user mockbuild does not exist -- using root
warning: group mock does not exist -- using root

即使它显示警告,我希望它已安装。毕竟,它们是警告,而不是错误。但是,如果我键入以下命令,它不会显示包已安装。

# rpm -lq libarchive
/usr/lib64/libarchive.so.13
/usr/lib64/libarchive.so.13.1.2
/usr/share/doc/libarchive-3.1.2
/usr/share/doc/libarchive-3.1.2/COPYING
/usr/share/doc/libarchive-3.1.2/NEWS
/usr/share/doc/libarchive-3.1.2/README
/usr/share/man/man5/cpio.5.gz
/usr/share/man/man5/mtree.5.gz
/usr/share/man/man5/tar.5.gz

我还尝试根据从 libarchive.org 网站下载的 .tar 文件从源代码编译。该过程似乎进展顺利,但在键入rpm -lq libarchive命令或rpm -q libarchive命令时,我仍然只显示旧的 3.1.2 版本的 libarchive。

那么,我将如何更新这个库?如果已更新,为什么这些命令不显示已更新?

谢谢你的时间。

linux centos rpm library update
  • 3 个回答
  • 70 Views
Martin Hope
Nordlöw
Asked: 2012-06-03 13:29:08 +0800 CST

多架构及其二进制文件

  • 5

为什么在 Ubuntu 的 AMD64 64 位安装上有一个/usr/lib 和一个/usr/lib32目录,但只有一个/usr/bin和没有目录?/usr/bin32如果或者当 Debian/Ubuntu 开始在他们的 ELF 中支持多目标架构二进制文件时,这个目录分支是否变得不必要了?

debian 32bit-64bit library binary cpu-architecture
  • 2 个回答
  • 97 Views
Martin Hope
Matt Nathanson
Asked: 2010-04-16 10:35:36 +0800 CST

我是否必须重新编译 php 才能启用 GD 库?

  • 4

我在我的服务器上安装并“启用”了一个 GD 库,但是在 php.info 中的配置命令下它说

"--without-gd"

有没有办法通过root启用它还是我必须重新编译?

编辑:这就是它在“GD”下显示的内容

  
启用 GD 支持
GD 版本捆绑(2.0.34 兼容)
已启用 FreeType 支持
FreeType 与 freetype 的链接
FreeType 版本 2.2.1
启用 GIF 读取支持
启用 GIF 创建支持
已启用 JPG 支持
启用 PNG 支持
启用 WBMP 支持
启用 XBM 支持

这是我的测试脚本:

//开始php
header('内容类型:图片/jpg');  

$watermark = imagecreatefrompng('ninja.jpg');  
$watermark_width = imagesx($watermark);  
$watermark_height = imagesy($watermark);  
$image = imagecreatetruecolor($watermark_width, $watermark_height);  
$image = imagecreatefromjpeg($_GET['src']);  
$size = getimagesize($_GET['src']);  
$dest_x = $size[0] - $watermark_width - 5;  
$dest_y = $size[1] - $watermark_height - 5;  
imagecopymerge($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 100);  

 图像jpeg($图像)

图像销毁($图像);  
图像销毁($水印);  
//结束php



php apache-2.2 php.ini library gd
  • 4 个回答
  • 4709 Views
Martin Hope
yanchenko
Asked: 2009-08-25 13:45:22 +0800 CST

在 amd64 机器上找不到共享库

  • 1
# /opt/dev/android-sdk/platforms/android-1.5/tools/aapt
/opt/dev/android-sdk/platforms/android-1.5/tools/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

在 i386 机器上这个 aapt 启动,但不是在 amd64 上。/lib/libz.so.1 在这两种情况下都存在。怎么来的?

library gentoo android
  • 4 个回答
  • 1928 Views
Martin Hope
Glen Richards
Asked: 2009-08-10 17:11:21 +0800 CST

发行版 X 上完全相同的二进制库如何链接到比发行版 Y 上更少的库?

  • 0

我有一个 3rd 方二进制库,用于通过 SSL 连接到服务器,该库在Cent OS 4 32-bit上运行良好,但在Debian Lenny 32-bit上尝试处理事务时出现 SSL 初始化错误。

当我ldd在 Debian 上的库上执行时,缺少lddCent OS 上的 5 个链接:

libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2
libkrb5.so.3 => /usr/lib/libkrb5.so.3
libcom_err.so.2 => /lib/libcom_err.so.2
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3
libresolv.so.2 => /lib/libresolv.so.2

我怀疑我的问题出在这里。所有这些库都安装在 Debian 系统上,所以我很困惑第 3 方二进制文件看不到它们。

我已经在每个系统上的第 3 方二进制文件上做了一个 md5sum,它们完全一样。

以下是 Cent OS 的完整ldd列表:

[root@localhost ~]# ldd /usr/lib/libwebpayclient.so
        libssl.so.4 => /lib/libssl.so.4 (0x0026a000)
        libcrypto.so.4 => /lib/libcrypto.so.4 (0x00c41000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x00544000)
        libm.so.6 => /lib/tls/libm.so.6 (0x0093e000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00da4000)
        libc.so.6 => /lib/tls/libc.so.6 (0x0066e000)
        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x008dd000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00394000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0x00111000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00114000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x007da000)
        libdl.so.2 => /lib/libdl.so.2 (0x00135000)
        libz.so.1 => /usr/lib/libz.so.1 (0x004d1000)
        /lib/ld-linux.so.2 (0x008b5000)

请注意,我必须安装包 compat-libstdc++-33.i386 才能解析 libstdc++.so.5

这是ldd来自 Debian 的完整列表:

localhost:~# ldd /usr/lib/libwebpayclient.so
    linux-gate.so.1 =>  (0xb7fcb000)
    libssl.so.4 => not found
    libcrypto.so.4 => not found
    libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xb7ee5000)
    libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7ebf000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7eb2000)
    libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7d57000)
    /lib/ld-linux.so.2 (0xb7fcc000)

请注意,我必须安装包 libstdc++5 才能解析 libstdc++.so.5。

用于ln -s修复我得到的 2 个“未找到”链接:

localhost:~# ldd /usr/lib/libwebpayclient.so
        linux-gate.so.1 =>  (0xb7eff000)
        libssl.so.4 => /usr/lib/libssl.so.4 (0xb7e8e000)
        libcrypto.so.4 => /usr/lib/libcrypto.so.4 (0xb7d31000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xb7c76000)
        libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7c50000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7c43000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7ae8000)
        libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7ae4000)
        libz.so.1 => /usr/lib/libz.so.1 (0xb7acf000)
        /lib/ld-linux.so.2 (0xb7f00000)

有趣的是,libz.so.1 出现了。于是就有了线索。

Cent OS 上的 SSL 版本是 0.9.7a,而 Debian 上是 0.9.8。我敢打赌它链接到更少的图书馆......

linux library
  • 2 个回答
  • 692 Views
Martin Hope
Vegar Westerlund
Asked: 2009-07-21 03:30:33 +0800 CST

在 Redhat 上运行 32 位用户空间

  • 1

我有一个第三方 python API,它只能在 32 位(ELF 32 位 LSB 共享对象)中使用,我需要在 x64 RedHat 服务器上运行。当然,这并不顺利,因为 python 安装是 64 位的。我认为解决这个问题的方法是在 64 位内核上将 python 作为 32 位用户空间运行。

我该怎么做呢?我必须在 RedHat x64 上编译 32 位 python 吗?有没有更简单的方法?

# cat /etc/redhat-release
Red Hat Enterprise Linux Client release 5.3 (Tikanga)

linux redhat 64-bit library 32-bit
  • 1 个回答
  • 713 Views
Martin Hope
Kent Fredric
Asked: 2009-07-12 22:19:44 +0800 CST

再使用 Prelink 还有意义吗?

  • 13

多年来使用各种 linux 机器,我已经养成了习惯性地使用预链接来加快应用程序加载时间的习惯。

但是,每次重新安装软件包时,运行预链接的好处都会被否定,因为它的所有依赖项及其依赖项都需要重新预链接。

这种预链接可能会导致多个问题,其中一个是二进制 MD5 失效,这对于比较 MD5 与上游修订版或使用 MD5 确定二进制文件是否已更改并因此不希望在删除包时进行清理的事情有问题.

最近,计算机变得更快了,并且预链接产生的好处现在几乎不显着。

使用预链接还是一个理性的概念,还是可以随便丢弃,成为过去的东西?

performance linux library
  • 6 个回答
  • 12347 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve