还是包管理的问题, Python 有 pip 和 easy_install , Ruby 有 gem, Node.js 有 npm, golang 真的需要更好的包管理。 go get 还是太原始,比如 npm 和 gem 都可以帮你管理库的编译, 比如用 C/C++ 写扩展库的时候, 编译过程是 npm 和 gem 来操心的, 用户根本不需要知道这个库是怎么编译出来的。 而 go get 无法做到这些
1
nicai000 2014-12-26 22:21:46 +08:00
确实, 不过你这里把Python的包管理当做正面典型? 不是吧...
|
2
9hills 2014-12-26 22:28:03 +08:00 1
Python的包管理绝对不是正面典型。。
pip install lxml,sorry你得先从你的发行版中安装 libxml2,妹的 |
4
nbndco 2014-12-26 22:40:00 +08:00 via iPhone
Python的包管理是反面典型,而且我至今不能理解的是为什么python阵营天天把自己吹到天上去至今却没人写的出一个包管理器
|
6
binux 2014-12-26 22:51:35 +08:00 2
@9hills 于是我想看看 npm 是怎么解决 libxml 的,于是 `npm install libxml` 然后:
http://stackoverflow.com/questions/10651822/node-js-libxml-can-not-install 呵呵,半斤八两 |
8
aaaa007cn 2014-12-26 22:52:57 +08:00
@ 错人了=o=
|
10
skybr 2014-12-26 22:59:21 +08:00
没libxml2的类库及头文件用gem装nokogiri一样会挂。
除非在协议允许的前提下包含类库的包, 不然这个无解的。 |
12
dworld 2014-12-26 23:08:36 +08:00
gom感觉用着不错
|
13
hyzjshwo 2014-12-26 23:11:01 +08:00
gem 也不是万金油,比如 mysql2,nokogiri 这样的也需要先安装依赖。
|
14
icylogic 2014-12-26 23:18:04 +08:00
cargo.
现在在项目的 Cargo.toml 里指定 dependencies, 直接 cargo run 就可以了, 会自己下载 git 目录然后编译, 然后再编译本地项目 |
18
9hills 2014-12-26 23:40:44 +08:00 via iPhone
@nbndco 有很好的解决方案,我记得是有一个包管理,安装的时候能自动生成系统所需要安装的库的命令,apt或者yum。新手直接复制粘贴很方便
|
19
xxxcat 2014-12-27 00:38:32 +08:00
啥?我怎么觉得Go的包管理比npm、gem、pip之流好呢,很是简单实用,npm不知道为啥经常会搞坏一些包
|
20
Bluek404 2014-12-27 03:31:26 +08:00 via Android
感觉go包管理的问题就是fork后用户名的修改和版本控制了(虽然有gopkg.in)
|
21
cnbuff410 2014-12-27 08:28:58 +08:00
Go的包管理不是问题,version管理才是问题。Go get是个人觉得用着最简单舒服的包管理工具。但版本管理弱爆了
|
22
lidashuang 2014-12-27 09:32:12 +08:00
@cnbuff410 go get 没有版本管理 ,go get 算不上包管理工具
|
23
xxxcat 2014-12-27 13:13:52 +08:00
@lidashuang Go包如此简单明了,根本不需要多么强大的管理工具吧,至于版本方面也有一些解决方案,不过似乎还没有占主流的,这是个问题
|
24
lidashuang 2014-12-27 13:24:18 +08:00
@xxxcat 包管理和go简单明子没有关系吧,go的包管理方案是挺多的,但是没好用的
|
25
wgwang 2014-12-27 15:12:58 +08:00
pip+venv 在python3.4之后感觉挺好的。
npm倒经常各种问题,不过可能不是npm的问题,是node自身的问题。 |
26
xxxcat 2014-12-27 15:43:40 +08:00
@lidashuang 怎么没关系呢?简单就意味包管理不用做复杂,无需高射炮打蚊子。版本方面与其说没有好的管理器,还不如说社区还没有在解决方案上达成一致
|
27
mathgl 2014-12-27 17:36:33 +08:00
lxml 如果是build from sources 只会更麻烦。。。
|
28
jsq2627 2014-12-28 15:56:59 +08:00
|
29
NathanInMac 2014-12-30 07:19:06 +08:00
@cnbuff410 完全同意,能在import里面指定tag/version/commit/branch就好了
|
30
liangdi 2015-01-08 14:39:19 +08:00
@NathanInMac 目前用http://labix.org/gopkg.in
|
31
NathanInMac 2015-01-14 08:07:13 +08:00
@liangdi do you like https://github.com/tools/godep ?
|
32
lidashuang 2015-02-10 09:41:25 +08:00
@liangdi 这个不错
|