偶只用它来搞git,今天一看,居然占用了900M空间,还有各种问题:(
又要重新安装个cygwin了,好麻烦...
1
reeco 2015-01-19 21:32:23 +08:00
不好用,直接virtual box,然后putty 出来吧
|
2
yangyanggnu 2015-01-19 21:39:08 +08:00 1
cygwin 好用么?你们都用它来做什么?
—— 为编译 win32 程序提供环境。我是 linux 系统,开发的代码几乎都是 linux-style 的,比如,调用的 SUS 接口,同时,我又希望我的软件具备跨平台(unix-like、windows)能力,所以,通常我将 linux-style 的源码直接拿到 windows 虚拟机中的 cygwin 中重新编译,这样,可以很方便的得到 win32 PE 文件。 偶只用它来搞git, —— 我见过有人只为感受 ls 而装 cygwin 的 (°Д°) ,但,实际上这正式 cygwin 项目诞生的初衷之一:在 window 上提供 unix-like 环境。 今天一看,居然占用了900M空间,还有各种问题:( 又要重新安装个cygwin了,好麻烦... —— 只装你需要用的那些软件,我装完带 git、gcc 等等的编译环境相关软件后,大小只有 300+M 左右。 |
4
esyed OP @yangyanggnu 你的跨平台是通过cygwin做到的?而不是API级跨平台?
|
5
Delbert 2015-01-19 21:53:17 +08:00
|
7
lingo233 2015-01-19 22:04:03 +08:00 via iPhone
ssh,还可以开X。比ptty好太多改个颜都那么麻烦简直不能忍。话说曾经像编个软件试试结果发现依赖缺失严重就没在弄过
|
8
Honwhy 2015-01-19 22:05:30 +08:00
为了nix* like环境,装了,后来又卸载了
现在用的是vagrant + virtualbox + git bash |
9
omegaga 2015-01-19 22:09:13 +08:00
前提:以Windows为主要工作环境,兼顾一些日常生活需求(ssh,git等等)
用途: 1. 比VM稍轻,不需要开机关机。(当然,VM也可以开机后挂着用putty连过去,但从资源开销/便捷程度来讲cygwin还是有一定优势) 2. 方便的无缝切换到Win的工作目录(/cygdrive/盘符/) 3. 基于2,可以在Win的工作目录下写script,自动化完成一些任务。妈妈再也不担心我不会写.bat了。 4. 提供编译环境(楼上有提到过了) cons: 1. 毕竟不是整一个OS,不可能替代Linux。 2. 原生包管理机制弱成了狗,用setup.exe来管理也是醉了。不过有apt-cyg之类的东西,还不算没救。 |
10
jecvay 2015-01-19 22:09:32 +08:00
用ssh连上自己的虚拟机简直是最佳选择!!!!!!!!!!!
|
11
intosec 2015-01-19 22:19:24 +08:00
1.cygwin有一定的跨平台优势,某些Linux下的工具可以直接移植过来。
2.部分python的工具在cmd下不能正常输出中文,但是放到cygwin下就完美兼容,所以就干脆用cygwin做终端了。 3.cygwin复制粘贴的快捷键好用到哭,比cmd下鼠标右键,标记,粘贴操作半天要快捷得多 4.cygwin可以换字体,这逼格一下就上去了。 |
12
pi1ot 2015-01-19 22:32:18 +08:00
切换到osx之前主要靠cygwin来共用linux环境下的日常脚本工具
|
13
bluesky139 2015-01-19 22:48:20 +08:00 via Android
可以在win下用很多linux的命令,还是很方便的。
|
14
lujiajing1126 2015-01-19 22:55:04 +08:00
用来模拟unix环境还算好,不过bug和坑太多
曾经用cygwin编译成功过nginx,但是编译php没成功 |
16
esyed OP @lujiajing1126 都进过哪些坑呢?
|
17
evlos 2015-01-19 23:04:16 +08:00 via iPhone
只用来临时 git 或者 ssh
|
19
lujiajing1126 2015-01-19 23:07:37 +08:00
@esyed
安装就很难。。这么多源就没几个能用的,几乎靠碰运气 对于盘符的表示在那里面有很奇怪的方法好像是/cygdriver/c之类的 还有的bash脚本会莫名报错 msysgit和另一个啥的git不能同时安装。。否则bower会认不出git 。。时间太久远了早不记得了 |
20
onlyice 2015-01-19 23:11:46 +08:00
用来用 ls, grep。。
|
21
yksoft1 2015-01-19 23:11:57 +08:00
我长期用老的MSYS编译ffmpeg自用,08年刚接触ffmpeg的时候发现Cygwin因为要写注册表,要拖大DLL就放弃了
|
22
wuhuaji 2015-01-19 23:19:59 +08:00
觉得不太好用,别扭,直接双系统更直接。
|
23
hjc4869 2015-01-19 23:21:09 +08:00
一般吧,之前为了编译ffmpeg搞过,失败了几次,后来还是放弃了,用了msys。。
需要linux测试环境可以在Azure上开个虚拟机解决。。方便,快捷,效率。本地的网络环境实在是不适合apt-get/yum,太慢了……服务器上动辄百兆千兆的带宽随便用,那速度。。 |
24
endoffight 2015-01-19 23:30:48 +08:00 via Android
配合cmder使用,感觉还不错!
|
25
Honwhy 2015-01-19 23:31:59 +08:00
@esyed 你怎么会有这种想法,vagrant谈不上消耗内存吧,它是命令组合,主要功能还是虚拟机系统的,和一般安装虚拟机系统差别在于,提供命令管理虚拟机系统了(up, off, ssh等)
|
28
Narcissu5 2015-01-19 23:47:49 +08:00
话说用cygwin编译真的有意义么,毕竟花了大价钱卖了windows server,最后就得到个这么个玩意儿。。
|
29
heyf 2015-01-19 23:49:41 +08:00
|
34
9hills 2015-01-20 00:24:17 +08:00
@esyed vagrant 默认会把当前目录mount到虚拟机的/vagrant 目录。。很方便。
话说Cygwin坑太多,于是我换 Git-bash(简单Cli) + Vagrant(复杂开发环境)了 见: https://www.v2ex.com/t/162917 |
37
9hills 2015-01-20 00:30:44 +08:00
@esyed 下Server版的,别带GUI。。。这样非常省。没看那些VPS 64M内存都敢拿出卖么。。虚拟机再矬,也比这些VPS强多了。。
|
39
zionst 2015-01-20 00:41:41 +08:00 via Android
工作需要会移植一些库。多用mingw+msys2只支持posix只好cygwin了
|
41
9hills 2015-01-20 00:47:03 +08:00
@esyed 跑Xfce或者LXDE的桌面还行。。LUbuntu/XUbuntu
跑GNOME3/Unity/KDE 就有点作,但是其实也还对凑,只是没必要。。占的内存和CPU也多 为啥要跑桌面版本呢,Linux桌面这么烂。。用终端就好了 |
43
KentY 2015-01-20 02:16:00 +08:00 via iPhone
没win,在Linux里装个vbox,vbox里装个win,在win 里装cywin,然后ssh host日常工作:)
我不这么用,只是下班路上没事开玩笑 |
45
clowwindy 2015-01-20 03:51:14 +08:00 1
shadowsocks-csharp 带的 dll 和 polipo.exe 都是在 Debian 下面编译的。
|
47
puncsky 2015-01-20 05:20:35 +08:00
这时候你需要Gow - The lightweight alternative to Cygwin,Cygwin如此肥大,何苦难为自己
|
48
Keinez 2015-01-20 05:48:35 +08:00 via Android
我花了整整三天来折腾cygwin,最后一怒之下装了个vm用上了osx…
|
49
xbb7766 2015-01-20 06:43:57 +08:00
曾经想编译win的ffmpeg,结果cygwin下弄了半天还是不行。最后老老实实回到linux下交叉编译……
|
51
XDA 2015-01-20 08:11:19 +08:00 via Android
自己组一个小内网,2台工作机加一台组内服务器,工作机是iMac和品牌台式机装Debian,总觉得Cygwin不伦不类
|
52
red827 2015-01-20 08:13:24 +08:00
以前用过,为了一些linux的脚本命令
后来用了Gow配合ConEmu,就再也没装过 |
53
yangyanggnu 2015-01-20 08:48:07 +08:00
@esyed
你的跨平台是通过cygwin做到的?而不是API级跨平台? —— 对的,不可能自己人肉 API 跨平台,工作量太大,要么用 wxwdiget 这类封装好的跨平台库,要么就用 cygwin 这类跨平台构建环境。 |
54
icylord 2015-01-20 09:04:57 +08:00
用来执行 $(NDK_ROOT)/ndk-build
|
55
hjc4869 2015-01-20 09:11:52 +08:00 via iPhone
@xbb7766 ffmpeg应该用msys+vc13+yasm那一套。。。这是我见过的最简便的方法。
|
56
Honwhy 2015-01-20 09:23:55 +08:00
@esyed Linux系统的/vagrant路径映射到windows本地了,这个相当于共享目录,放在在windows用IDE开发,在linux下运行。
|
57
facat 2015-01-20 09:40:56 +08:00
非常不好用,在cygwin编译各种错误。
|
58
jsfaint 2015-01-20 09:43:16 +08:00
楼主既然你不需要cygwin,为啥不安装msysgit?
|
59
zionst 2015-01-20 10:01:21 +08:00
@esyed 我感觉它的作用只是补缺而已,仅解决了Windows下没有POSIX环境的问题。实际上在Linux下直接交叉编译省事多了
|
61
jatsz 2015-01-20 10:27:56 +08:00
如果你必须在Windows工作Cygwin是最无缝和轻量级的。前提是你必须掌握和喜欢使用*nix下的常用命令。
我使用Cygwin超过5年,其实最常用的就是那几个小命令: $grep -inr "" #找代码的神奇,比如你看到一个bt,打印出了出错名,直接一搜立马找到文件和行数。 $git st|cm|diff #三种平台下使用Git的方式是一模一样的。 $history | cut -c 8- | sort | uniq -c | sort -r | head #类似这样的命令组合 $wget http://example/a.gz $curl -I douban.com Cygwin统一了三种平台的开发体验,提高了效率。让你得心应手的哪些*nix命令在Windows下为你服务。 |
62
0987363 2015-01-20 10:28:15 +08:00
不好用,一向直接虚拟机。 方便多了
|
63
jatsz 2015-01-20 10:35:08 +08:00
补充一下
1,别把Cygwin当作*nix的环境来用,如果需要环境,可能vagrant+vbox才是你的菜。 2,如果你确实只需要在Windows下做*nix的环境来用,mingw才是你的菜,Cygwin太重了。 3,把Cygwin当做你的工具来用。比如你ssh,这个private key的设置,跟*nix下的一样,putty什么的都不用了。*nix下的工具直接可用。 |
64
cpp255 2015-01-20 10:50:30 +08:00
以前再 Win 下用过,感觉各种搓,最后还是切换回 Linux、Mac了
|
66
picasso250 2015-01-20 12:16:08 +08:00
I used to write a script to find Fastest Cygwin Mirror (PHP)
http://picasso250.github.io/2014/11/21/fast-cygwin-mirror.html |
67
linhua 2015-01-20 12:27:54 +08:00
曾经想把gentoo portage装在cygwin里,结果没成功。感觉也没必要了,与其研究在windows下实现linux的功能,不如研究怎样在linux下运行windows的专有软件。喜欢在win下折腾的可参考
Gentoo Prefix Cygwin http://wiki.gentoo.org/wiki/Gentoo_Prefix_Cygwin |
68
loryyang 2015-01-20 15:01:30 +08:00
机器能力不行,装不了虚拟机,然后搞个cygwin做一些事情,比如用linux的命令处理文本之类的
|
69
qanniu 2015-01-20 15:38:23 +08:00
我也有您的困惑,当初选colinux or vps ,colinux 满足你的要求,现在可用一台android 旧手机,装ubuntu
|
70
xierch 2015-01-20 15:53:27 +08:00
用的最多的是 ssh / mosh / scp 吧..
偶尔运行一下 easyrsa 的 bash 脚本 |
71
ticat 2015-01-20 16:10:30 +08:00
cygwin主要就是有一个类linux的shell环境。其实msys和cygwin基本是一个东西。
另外最近发现MSYS2不错,移植了pacman作为包管理。并且似乎扔掉了cygwin里面不太用得着的包,就是不知道能不能用AUR,能的话就强大了。 这里抛个砖,其实我觉得限制于window下的开发必须准备三套环境。 1 基于x86/x64本地环境的开发工具,例如VS2013,native的eclipse,IDEA,native的Java、Python、ruby等。如果要用命令行就是cmder+clink+GnuWin32之类的。用来做windows平台的开发,有史上最强IDE,性能有保证。但是命令行就只能将就一下,连个新版本的git都没有。 2. 基于cygwin模拟层的cygwin/msys/msys2等工具。他们都模拟了在window上模拟了POSIX层,使得常见的Linux应用可以再windows上运行起来。一些复杂的CLI工具如VIM、zsh,git都可以基本全功能的跑起来,而且和window文件系统结合的不错,软件版本也跟的很紧。这一层的问题就是比较慢,其实直接用当做工具用比较合适,你要是想要做开发,速度和可靠性都有问题。 3. vagrant+vbox+你喜欢的发行版。原汁原味的Linux环境,想怎么搞怎么搞。优点就是速度快、系统开销也比较小,如果想开GUI得时候修改VangrantFile也可以有图形界面。问题是和windows文件系统的文件交换比较麻烦,要通过/vagrant目录转一下。 |
74
garfeildma 2015-01-20 18:06:51 +08:00
推荐babun
http://babun.github.io/ |
75
haichang417 2015-01-20 18:29:01 +08:00
果断vagrant+virtualbox啊,可实现跨平台的开发运行环境。
|
77
precisi0nux 2015-01-20 20:55:58 +08:00
楼主用下vagrant吧,我习惯保持主系统干净,虚拟机随意折腾。
|
78
exch4nge 2015-01-21 09:26:14 +08:00
我装了个portable的Cygwin,装在我的U盘里。目的是为了带着U盘找个任何Windows的电脑就能用上我熟悉的一些cmd命令或软件(类似vim啊,python啊,git啊等等……)。当然里面还装了很多portable的windows软件。
PS:搞Cygwin的git与Windows git混用的时候,遇到了line-ending的坑…… PS:为了这个我还专门买了U盘,怎知过一个月后这U盘开始促销……降成半价了…… |
79
leavic 2015-01-21 13:21:46 +08:00
用cygwin可以很方便的用sed,grep这些linux命令
|
89
yksoft1 2015-01-23 00:47:36 +08:00
@esyed 编译libvpx+libx264+libx265等常更新有必要更新的库,ffmpeg+gpac+mplayer等压制播放工具集啊
ffmpeg和mplayer目录里有一套texi 可以用于自己生成文档 我不是程序员但拥有程序员的一些技能 |