由于 ia32-libs 问题,无法安装 icaclient

由于 ia32-libs 问题,无法安装 icaclient

最后,Citrix 发布了新版本,Ubuntu 也更新了指南这里(显然,我们发现这是依赖关系的变化)。现在它应该可以开箱即用了。


我在 13.10 Saucy Salamander 64bit 上安装软件包时遇到问题icaclient。ia32-libs 和其他依赖项似乎存在问题。

 marc@PinballWizard:~$ sudo dpkg -i Downloads/icaclient_12.1.0_amd64.deb
 [sudo] password for marc: 
 Selecting previously unselected package icaclient.
 (Reading database ... 179461 files and directories currently installed.)
 Unpacking icaclient (from .../icaclient_12.1.0_amd64.deb) ...
 dpkg: dependency problems prevent configuration of icaclient:
  icaclient depends on ia32-libs; however:
   Package ia32-libs is not installed.
  icaclient depends on lib32z1; however:
   Package lib32z1 is not installed.
  icaclient depends on lib32asound2; however:
   Package lib32asound2 is not installed.

 dpkg: error processing icaclient (--install):
  dependency problems - leaving unconfigured
 Errors were encountered while processing:
  icaclient

因此,其他解决方法似乎不起作用。我按照说明这里- 对于最近的两个 Ubuntu 版本来说,这肯定没有问题。

当我尝试安装 ia32-libs 时出现以下问题:

marc@PinballWizard:~$ sudo apt-get install ia32-libs 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package ia32-libs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  lib32z1 lib32ncurses5 lib32bz2-1.0

E: Package 'ia32-libs' has no installation candidate

有可能安裝icaclient嗎?

sources.list 是这里

答案1

dark_harmonics 在 13.10 下为我们提供了一种方法ubuntu论坛(最后一篇帖子)——我在这里只引用他的话:

只是为了记录这个过程,以便当我在谷歌上搜索这个问题时,我能找到编译后的解决方案:

  1. 从 www.citrix.com 下载 citrix deb 文件。我使用的是新客户预览版 12.9.999
  2. 打开终端并切换到 deb 文件所在的目录
  3. 运行以下命令

    mkdir ica_temp
    dpkg-deb -x icaclient-<tab> ica_temp
    dpkg-deb --control icaclient-<tab> ica_temp/DEBIAN
    sudo gedit ica_temp/DEBIAN/control
    
  4. 将依赖项更改为“依赖:libc6-i386 (>= 2.7-1)、lib32z1、nspluginwrapper”

  5. 保存并关闭文件

  6. 编译并安装deb文件

    dpkg -b ica_temp icaclient-modified.deb
    sudo dpkg -i icaclient-modified.deb
    
  7. 清理

    rm -r ica_temp
    

我还需要运行sudo apt-get install -f来安装我仍然缺少的依赖项。

顺便说一句:客户预览版对我来说不起作用,我使用的是官方版本。

答案2

我有一个 x64 位系统

您必须从 .deb 包中编辑出依赖项:ia23-libs 和 libaudio32。

创建/dir_tmp/dir_tmp/DEBIAN

dpkg-deb -x foo.deb dir_tmp
dpkg-deb --control foo.deb dir_tmp/DEBIAN

编辑/dir_tmp/DEBIAN/control 和删除依赖项。

dpkg -b dir_tmp foo.deb

尝试再次安装 ICAclient

如果您得到退出状态 2,请尝试:

编辑/var/lib/dpkg/info/icaclient.postinst

找到:echo $Arch|grep "i[0-9]86" >/dev/null并将其更改为echo $Arch|grep -E "i[0-9]86|x86_64" >/dev/null

如果在运行 Citrix 接收器时收到 SSL 错误,请尝试:

sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/

答案3

这些说明适用于 Ubuntu 13.04 及更早版本:

  1. 获取官方Citrix 接收器 12.164 位 .deb 软件包。请确保您获取的是 64 位版本。
  2. 安装gdebi

    sudo apt-get install gdebi
    
  3. 运行sudo gdebi Downloads/icaclient_12.1.0_amd64.deb安装程序将询问您是否要安装该包以及所有依赖项:

    Citrix Receiver for Linux
     The Citrix Receiver for Linux provides users with access to resources published
     on XenApp or XenDesktop servers. The clients combine ease of deployment and
     use, and offer quick, secure access to applications, content, and virtual
     desktops.
     .
     Users can connect to resources published on XenApp servers using either
     individual ICA connections or, if using Citrix XenApp, predefined ICA
     connection configurations from servers running the Web Interface.
     .
     Users can also connect to virtual desktops provided by XenDesktop, enabling
     them to use those virtual desktops as if they were connecting to a local
     Windows desktop.
    Do you want to install the software package? [y/N]:
    

    选择y然后按回车键。完成。

这种方法的优点是不需要用户干预,并且几乎可以完美地解决依赖关系。

虽然它解决了依赖关系,但包本身还存在其他问题:

dpkg: error processing icaclient (--install):
 subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
 icaclient

进一步来说,有一个解决方案:

sudo sed -i 's/grep \"i\[0\-9\]86\"/grep -E "i[0-9]86|x86_64"/g' /var/lib/dpkg/info/icaclient.postinst
sudo dpkg --configure icaclient

Citrix 没有那么多证书,因此当您访问您的站点时,您可能会收到 SSL 错误。如果您有 mozilla 证书,请添加它们:

 sudo ln -s /usr/share/ca-certificates/mozilla/* /opt/Citrix/ICAClient/keystore/cacerts/

参考:https://help.ubuntu.com/community/CitrixICAClientHowTo

答案4

我跟着Ubuntu 社区帮助 Wiki 上提供了此操作方法。对我来说效果很好。

相关内容