- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我对 .deb 包有一个非常奇怪的行为。
当我尝试使用 dpkg -i package.deb 安装时,出现此错误:
iPadAir:/tmp root# dpkg -i packagename.deb
(Reading database ... 4239 files and directories currently installed.)
Preparing to replace packagename 0.0.0-0 (using packagename.deb) ...
Unpacking replacement packagename ...
dpkg: error processing packagename.deb (--install):
unable to create `PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite': No such file or directory
dpkg-deb: subprocess paste killed by signal (Broken pipe: 13)
Errors were encountered while processing:
packagename.deb
但是.deb 文件包含不同的路径!正确的路径是/Library/Application Support/PACKAGENAME:
iPadAir:/tmp root# dpkg-deb -c packagename.deb
drwxr-xr-x dok/staff 0 2014-11-20 12:46 ./
drwxr-xr-x dok/staff 0 2014-11-20 12:46 ./Library/
drwxr-xr-x dok/staff 0 2014-11-20 12:46 ./Library/Application Support/
drwxr-xr-x dok/staff 0 2014-11-20 12:46 ./Library/Application Support/PACKAGENAME/
drwxr-xr-x dok/staff 0 2014-11-20 12:46 ./Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/
-rw-r--r-- dok/staff 184320 2014-11-20 12:46 ./Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite
使用调试(1100,因为我只需要文件系统输出)我什至遇到了奇怪的情况:
iPadAir:/tmp root# dpkg -D1110 -i packagename.deb
D000010: ensure_pathname_nonexisting `/var/lib/dpkg/tmp.ci'
(Reading database ... 4239 files and directories currently installed.)
[....]
[All directories are correctly processed and created...]
[....]
D000010: tarobject ti->Name=`./Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist' Mode=644 owner=501.20 Type=48(-) ti->LinkName=`' namenode=`/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist' flags=2 instead=`<none>'
D000100: setupvnamevbs main=`/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist' tmp=`/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist.dpkg-tmp' new=`/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist.dpkg-new'
D000100: tarobject nonexistent
D000010: ensure_pathname_nonexisting `/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist.dpkg-new'
D000010: ensure_pathname_nonexisting `/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist.dpkg-tmp'
D000100: tarobject NormalFile[01] open size=479
D000100: tarobject new - no backup
D000100: tarobject done and installed
D000010: tarobject ti->Name=`PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite' Mode=644 owner=501.20 Type=48(-) ti->LinkName=`' namenode=`/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite' flags=2 instead=`<none>'
D000100: setupvnamevbs main=`/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite' tmp=`/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-tmp' new=`/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-new'
D000100: tarobject nonexistent
D000010: ensure_pathname_nonexisting `/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-new'
D000010: ensure_pathname_nonexisting `/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-tmp'
dpkg: error processing packagename.deb (--install):
unable to create `PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite': No such file or directory
D000010: cu_installnew `/PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite' flags=2
D000100: setupvnamevbs main=`//PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite' tmp=`//PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-tmp' new=`//PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-new'
D000100: cu_installnew not restoring
D000100: unlinkorrmdir `//PACKAGENAME/AviarySDKResources.bundle/AviaryContentPackCompiledDatabase.sqlite.dpkg-new' rmdir No such file or directory
D000010: cu_installnew `/Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist' flags=52
D000100: setupvnamevbs main=`//Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist' tmp=`//Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist.dpkg-tmp' new=`//Library/Application Support/PACKAGENAME/AviarySDKResources.bundle/AviaryColorPalatte.plist.dpkg-new'
如您所见,dpkg 尝试在“根”目录而不是“/Library/Application Support”中创建目录 PACKAGENAME。我试图重建我的 debian 包但没有任何改变(是的,debian 包在 tar 存档中有正确的路径)。
有人可以帮助我吗?
非常感谢
PS:即使你看到 iPadAir,我也在 ubuntu box 上尝试了相同的 dpkg 命令。同样的错误:(
最佳答案
经过数周的研究,我终于发现我使用的是有缺陷的 dpkg-deb (1.13.25) 版本。更新到最新版本(目前为 1.14.25)后,所有错误都消失了!
关于linux - 安装 .deb 包时出现 "No such file or directory",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27045389/
我为我开发的媒体播放器制作了自己的 .deb 包,但是当我将它安装在我的 kubuntu 10.04 它安装成功,但未显示在特定部分下,例如 “多媒体”所以请告诉我如何将我的 deb 包显示到特定部分
我想创建可以安装在开箱即用的 Ubuntu 上的 .deb 文件。 我已经准备好控制、预安装、后安装文件。但是当我尝试在新的 Ubuntu 上安装我的软件包时,它会说“无法获取锁/var/lib/dp
我正在创建一个 .deb 包,我已经到了可以表达大部分依赖项的地步。不幸的是,还有一些依赖项目前没有 .deb 包(例如 wdfs 或 couchdb,其中 .deb 文件太落后,并且尚不存在具有较新
我有一个 RPM 包,我使用 alien 将其转换为 Debian 包。当我尝试使用 ubuntu 软件中心在 ubuntu 上安装它时,它会发出警告,例如维护者名称/地址格式错误(当我使用 dpkg
我正在尝试让/etc 中的文件表现得像 conffiles 的默认行为一样。 文档表明我无需执行任何操作即可将/etc 中的文件标记为配置文件。 但是我正在用 dpgk-deb 创建一个 deb,当我
应用程序的 deb 文件。我想将同一个文件转换为 32 位 .deb 文件。那么如何将 64 位 .deb 文件转换成 32 位 .deb 最佳答案 这通常是不可能的。 如果 .deb 文件包含任何特
我运行以下命令来安装 mysql 服务器 dpkg -i mysql-apt-config_0.8.14-1_all.deb 并得到这个错误: strong textdpkg-deb: error:
更新我的 php 版本时出现此错误。 PHP 5.3.10 OS Ubuntu 12.04.1 LTS 运行命令时 sudo apt-get install php5 ,得到以下错误: Unpa
我正在尝试获取已卸载的 deb 软件包的许可证信息。 dpkg --info .deb不提供该信息。 ubuntu 中是否有任何命令可以提供此信息? (在 rpm 世界中 rpm -qpi 提供该信息
我刚刚编译debian 4.6内核的方式生成deb me with image和headers package,安装image我得到如下错误 Preparing to unpack linux
我正在学习创建一个 deb 包,我发现这个:http://packaging.ubuntu.com/html/packaging-new-software.html 并遵循它 1 sudo apt-g
我需要创建一个对英特尔架构有额外依赖的包。 一个工作的 RPM package.spec 文件如下所示: Requires: bc %ifarch x86_64 Requires:
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许在 Stack Overflow 上提出有关通用计算硬件和软件的问题。您可以编辑问题,使其成为
我有一种情况,我需要在多个 Ubuntu 系统上安装一些 .deb 文件,但是我要安装的系统没有互联网访问权限,因此,apt-get 将无法“得到”任何东西。 我知道所有有问题的系统都将至少完全更新到
我尝试为我的程序创建 .deb 包。 它需要 ImLib2-dev 包。 我想让 .deb 包自动安装 ImLib2-dev 包。 Package : MyProject Version : 1.0.
新手构建deb包。我有一个构建脚本来为 Ubuntu 生成包。版本号在changelog .我想在不接触 changelog 的情况下自动化构建 deb 包的过程使用 version文件,并且该文件仅
我有一个包清晰图标主题并构建它需要 ImageMagic。当我创建该软件包启动板时,抛出“找不到转换命令”。 如何创建在构建时使用 ImageMagic 的 deb 包,以便它可以由启动板恶魔构建?
我有一个为 Ubuntu 创建的应用程序。 我来自 Windows 编程背景,我习惯于将 WiX 源代码与源代码一起包含在我的源代码控制中。所以它被我的来源跟踪和更改。 现在我正在学习 deb 打包。
我有一个 deb 文件,其控制文件不包含任何 build-depends 行,但该包仍然具有 build-dependencies。那么它们是从哪里来的呢?我想不通。 这是 deb 文件:http:/
我有一个以前只针对基于 RPM 的发行版的软件包,我现在正在为基于 Debian 的发行版构建 .deb 软件包。 目的是从与您正在构建的系统隔离的用户空间模拟测试安装。它可能是多用户的,您不希望仅仅
我是一名优秀的程序员,十分优秀!