Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 中断长时间的MacPorts安装_Macos_Qt4_Terminal_Macports - Fatal编程技术网

Macos 中断长时间的MacPorts安装

Macos 中断长时间的MacPorts安装,macos,qt4,terminal,macports,Macos,Qt4,Terminal,Macports,我目前正在安装,它需要永远建立。我四处搜索,发现安装它需要2-5个小时 是否有办法中断此安装过程?如果有,我是否需要在安装后进行一些清理?您是否尝试过使用control+c 另外,我不完全确定是否需要清理,但根据,命令sudo port-fp uninstall--follow dependents[此处的端口名]应该会有所帮助(本页是关于卸载MacPorts本身的,但它是相同的命令)。我不确定MacPorts如何处理中断的安装,以及它是否将“半安装”项目视为可卸载项目,但值得一试。这是一个旧线

我目前正在安装,它需要永远建立。我四处搜索,发现安装它需要2-5个小时


是否有办法中断此安装过程?如果有,我是否需要在安装后进行一些清理?

您是否尝试过使用
control+c


另外,我不完全确定是否需要清理,但根据,命令
sudo port-fp uninstall--follow dependents[此处的端口名]
应该会有所帮助(本页是关于卸载MacPorts本身的,但它是相同的命令)。我不确定MacPorts如何处理中断的安装,以及它是否将“半安装”项目视为可卸载项目,但值得一试。

这是一个旧线程,但我想分享我个人的看法

有一次(两年前,我想,我不确定当前的情况)我中断了一次MacPorts更新(
sudo port upgrade Outleted
),不是用
Ctrl+C
(大致
SIGINT
),而是用
SIGKILL
),因为当时我的硬件遇到了一些问题。我最终得到了一个完全损坏的安装,无法进行所有清理或恢复工作,我最终恢复了
/opt/local
的完整备份

从那以后,我再也不敢中断MacPorts的安装/升级,即使使用
Ctrl+C


这个故事的寓意是:中断MacPorts安装过程可能相当危险。如果只是长时间运行(有时构建确实需要花费很长时间),请不要使用它。如果您确实认为它是挂起的,而不是实际构建的,请确保您有备份,并谨慎地进行操作(当然,当您已经在运行安装时进行备份已经太迟了)。

我也想插话。我认为一个好的做法是在
Ctrl+C
ing之前查看您在安装中的位置,然后清除依赖项,稍后重新进行主安装。例如,我正在安装KDNLIFE,并在MyoSoO(许多依赖项之一)的中间安装了它。后来,我做了一个
sudo-port-v selfupdate
,然后做了一个
port-clean-virtuoso
,然后用
sudo-port-install-kdenlive
再次启动kdenlive安装。这似乎是一种体面的方式;它在第一部分游弋,到达virtuoso时以正常速度加速。

不要按Ctrl+C 基于4ae1e1的答案,当他中断发送
SIGKILL
信号的过程时,我中断了发送实际的
SIGINT
信号的过程,即通常的
Ctrl+C
,目前为止没有MacPorts应用程序在工作

所以我完全同意4ae1e1

如果你需要你的机器 如果您需要暂停安装,例如,因为您需要您的CPU可用于其他事情,请改为发送
SIGSTOP
信号以暂停安装

kill -STOP installationPIDs
一旦您准备好恢复,您可以发送一个
SIGCONT
信号,然后您就可以完成它了

kill -CONT installationPIDs
您应该很容易找到安装过程的PID,例如,您可以运行
htop
,查看使用大部分CPU的进程

如果你改变了对安装的想法
即使您改变主意,不想再安装该端口/软件包,我强烈建议您完成安装(根据下面的建议在需要时暂停),然后卸载该端口/软件包。这听起来像是浪费时间,但这是最安全的做法。

是的,我刚刚在网上找到了
ctrl+c
功能,谢谢!在运行卸载命令之前,我也清理了
sudo-port-clean-qt4-mac
,该命令清除了几GB的磁盘空间,但我不确定在卸载时是否有必要。只是好奇。。。为什么你们不从官方网站下载Qt?因为我很懒,更喜欢让MacPorts帮我管理所有的依赖项。我已经开始从源代码开始构建东西,但是是的,我还有很多东西要学习。对于像我这样的艺术家来说,命令行有点吓人,但使用得越多,它就越容易Qt包的所有依赖项都在。。。MacPorts确实很酷,但在我看来,自制的效果更好。如果你真的需要一些在Mac Linux上不可用的工具,这也很酷。。。否则我不鼓励使用它这正是发生在我身上的事情,尽管我实际上使用了
Ctrl+C
,因此我完全同意你不这样做。