Chinaunix

标题: OpenBSD系统里面如何更新使用ports安装的软件? [打印本页]

作者: fender0107401    时间: 2010-11-03 00:51
标题: OpenBSD系统里面如何更新使用ports安装的软件?
比如在FreeBSD里面用portmaster -a,在OpenBSD里面用什么呢?
作者: 23号    时间: 2010-11-03 08:46
pkg_add
作者: fender0107401    时间: 2010-11-03 10:01
pkg_add -u 应该是更新以package形式安装的包吧。
作者: congli    时间: 2010-11-03 11:54
最好还是pkg_delete & pkg_add吧.
作者: fender0107401    时间: 2010-11-03 12:08
我看了一下ports的man page,发现有一个update的target,

但是感觉不是很方便,因为我不可能到每一个目录下面去make update吧,

似乎OpenBSD的软件主要还是用pkg_add来管理比较方便。
作者: 1..    时间: 2010-11-03 14:56
本帖最后由 1.. 于 2010-11-03 15:00 编辑
pkg_add -u 应该是更新以package形式安装的包吧。
fender0107401 发表于 2010-11-03 10:01

正解,直接pkg_add -u 就行。
FAQ 看这里
手册里的描述是:
    -u      Update the given installed pkgname(s), and anything it depends
              upon.  If no pkgname is given, pkg_add will update all installed
              packages.  This relies on PKG_PATH to figure out the new package
              names.
作者: fender0107401    时间: 2010-11-03 14:59
正解,直接pkg_add -u 就行。
1.. 发表于 2010-11-03 14:56


所以这个命令是没有办法管理由ports安装的程序的,

如果直接pkg_add -u应该会导致下载新的package而不是去编译outdated的软件包。
作者: 1..    时间: 2010-11-03 15:03
ports编译也是先出packages再安装,应该没有问题吧?
但是你如果自己修改了编译参数只能自己处理了。
作者: fender0107401    时间: 2010-11-03 15:08
我就是想问问有没有像portmaster或者是portupgrade之类的工具能把整个过程给自动进行,就像在FreeBSD里面那样,

手动应该比较麻烦,而且容易出错。
作者: 1..    时间: 2010-11-03 15:29
我就是想问问有没有像portmaster或者是portupgrade之类的工具能把整个过程给自动进行,就像在FreeBSD里面那 ...
fender0107401 发表于 2010-11-03 15:08


我是不知道有类似的工具,而且前面已经说明了,如果不需要配置编译参数,最好直接使用packages,除非你有特殊的需要。
FAQ上说的更绝:
如前所述, package是通过port树编译的。这一小节我们将解释ports树是如何工作的, 什么时候您应该使用ports树, 以及如何使用它们。
重要提示: ports树是只适合高级用户。我们鼓励每个人都使用预编译的二进制package(packages)。不要在邮件列表上提一些初级问题, 诸如:"我怎样才能让ports树上的软件运行?"。如果您有关于ports树的问题, 我们先假设您已经阅读了用户手册和FAQ, 也就是意味着您已经可以自己解决这些问题了。
.....

注意: ports永远不会直接安装在您的系统上!它使用一个虚拟的安装目录, 只是把所有安装需要的文件全被放在这个目录里, 然后将它们打包成一个package文件(二进制package, 就像我们前面提到的那样, 这个package文件储存在这个ports的packages子目录里)。安装一个port的真正含义就是:产生一个二进制package, 然后安装这个package!


也就是说,如果你认为自己有能力控制编译过程,而且OpenBSD提供的Packages不能满足你的要求时,你可以使用ports,但是ports开发人员可能不会就可能出现的问题进行解答,这也不难理解,本身port就不是基本系统的一部分。
作者: jvvt    时间: 2010-11-03 20:30
本帖最后由 jvvt 于 2010-11-05 19:57 编辑

如楼上所引openbsd官方的态度似乎是更倾向用户使用package而不是port安装软件,而且事实上openbsd的port无论是软件数量还是使用方便程度都不如freebsd的port,所以用openbsd的话还是尽量用pkg_add装软件吧。


另外搭车问一下,openbsd官网介绍4.8的新特性时提到支持en_US.UTF-8 locale,哪位装了4.8的能不能说说,对en_US.UTF-8的支持到底怎么样,fcitx能用了吗?
作者: fender0107401    时间: 2010-11-03 21:31
回复 11# jvvt

从Release Note的描述上来看只有en_US.UTF8的支持,没有其他的locale,

fcitx需要某些环境变量为zh_CN.UTF8时才能工作,

所以应该是不能用的,估计需要等到下1或2个release才有可能彻底的支持所有的locale,

至于OpenBSD的ports吗,感觉OpenBSD里面还是用pkg_add比较靠谱啊。
作者: fender0107401    时间: 2010-11-03 21:32
回复 10# 1..


   
作者: Lionux    时间: 2010-11-04 10:46
scim在openbsd下早就可以用了不依赖locale,中文一点问题没有。
作者: jvvt    时间: 2010-11-05 20:00
回复 12# fender0107401


    根据我在linux下的经验,fcitx在en_US.UTF的locale下是可以使用的。
作者: fender0107401    时间: 2010-11-05 20:33
回复 15# jvvt

你所有的locale变量都是设定为en_US.UTF-8吗?
作者: lyf088    时间: 2010-11-05 21:37
scim在openbsd下早就可以用了不依赖locale,中文一点问题没有。
Lionux 发表于 2010-11-04 10:46

那确实!
作者: lantian728    时间: 2010-12-31 09:45
pkg_add的
作者: action08    时间: 2015-02-15 10:39
fender0107401 发表于 2010-11-03 21:31
回复 11# jvvt

从Release Note的描述上来看只有en_US.UTF8的支持,没有其他的locale,


pkg_add nginx
系统提示一下,什么都不做。。。感觉这样的问题太太悬了
作者: action08    时间: 2015-02-15 10:40

当然我举例的问题很简单,pkg_add nginx-1.5.7p3
就能解决。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2