トップページunix
981コメント302KB

Cygwin使っている人いますか? その21

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2012/03/10(土) 21:23:06.09
Cygwin Information and Installation
http://www.cygwin.com/

Cygwin アンテナ
http://sohda.net/cygwin/antenna/
0166名無しさん@お腹いっぱい。2013/02/18(月) 15:34:41.68
c\cygwinのmkshortcut.exe.stackdumpって削除してもおk?
0167名無しさん@お腹いっぱい。2013/02/18(月) 16:23:07.76
ok
0168名無しさん@お腹いっぱい。2013/02/21(木) 01:24:59.43
.stackdumpって時々生成される。うちの環境ではautorebaseが入る前fork失敗で生成されてた
find / \( -path /dev -prune -o -path /proc -prune -o -path /cygdrive -prune -o -name "*.stackdump" \) -type f -exec rm -v {} +
要らないから、これで一網打尽
0169名無しさん@お腹いっぱい。2013/02/23(土) 10:40:28.63
-delete使わないの?
0170名無しさん@お腹いっぱい。2013/02/23(土) 10:49:35.44
シングルクォートの方が安全じゃなかろうか。
0171名無しさん@お腹いっぱい。2013/02/23(土) 10:59:08.93
ダブルクォートで囲まれた*を展開するシェルがあるの?
01721702013/02/23(土) 11:05:59.90
>>171
すまん勘違いだった。
シェル変数とごっちゃにしてたわ。
0173名無しさん@お腹いっぱい。2013/02/23(土) 11:23:40.18
exec じゃなく -print0 と xargs -0 を使おう
0174名無しさん@お腹いっぱい。2013/02/23(土) 11:49:48.54
なぜ?
-exec {} + が使えるケースなら xargs 要らないんじゃね?
0175名無しさん@お腹いっぱい。2013/02/23(土) 12:12:28.46
exec の時はファイル一個に付き毎回サブプロセス呼び出しを行う。
xargs の場合は可能な限りサブプロセス呼び出しが少なくなるよう引数を連結して呼び出す。
rm a
rm b
rm c
ってのと
rm a b c
の違い。

find とかの大量にファイルマッチするようなのは速度が全然違ってくるよ。
0176名無しさん@お腹いっぱい。2013/02/23(土) 12:36:06.99
そのxargsっぽい引数連結をやるのが>>168が使ってて>>174も指摘してる
-exec {} + なんだけど、ドヤ顔でxargsの解説してる人たち何なの

ttp://unix.stackexchange.com/questions/41740/find-exec-vs-find-xargs-which-one-to-choose
0177名無しさん@お腹いっぱい。2013/02/23(土) 12:44:17.64
そんなあるんだかないんだかわからんオプション使うよりxargsの方が確実な件
0178名無しさん@お腹いっぱい。2013/02/23(土) 12:49:58.58
うん、findのオプション覚えるの大変だし、xargsの方が柔軟性あるんじゃないかと思う。
0179名無しさん@お腹いっぱい。2013/02/23(土) 12:52:40.01
年寄りうぜえな
findのオプションも覚えられない奴はマウスでカチカチやってろよ
0180名無しさん@お腹いっぱい。2013/02/23(土) 13:01:14.52
正直どっちでもいい。
0181名無しさん@お腹いっぱい。2013/02/23(土) 13:10:53.50
処理するファイル数が少ないならexecでもいいけど
多いならxargsだなぁ
cygwinのfork遅いし
0182名無しさん@お腹いっぱい。2013/02/23(土) 13:18:13.11
find -print0とxargs -0だって「あるんだかないんだかわからんオプション」で
Posix標準ですらないし
-print0使わないならwhitespace含みのパス名が問題になるし
find -exec {} + はれっきとしたPosiX標準だし
-exec {} +ならARG_MAXの限度まで引数連結して実行するから
別にforkが大量に実行されるわけでもないし

ttp://pubs.opengroup.org/onlinepubs/009695399/utilities/find.html
Posix標準すら知らない、10年以上前の知識で止まってる老害がわめいてるだけにしか
見えないね
0183名無しさん@お腹いっぱい。2013/02/23(土) 13:19:31.65
>>182
わめいてるのはお前w
0184名無しさん@お腹いっぱい。2013/02/23(土) 13:21:35.18
>>183
Posix標準の-exec {} +も知らない無知のくせに「xargs使え」とかforkの数が〜だの言ってる馬鹿がうぜーだけ

ちゃんと仕様分かってる分には、findだろうがxargsだろうが
こんなのはどっちでもいいんだよ
0185名無しさん@お腹いっぱい。2013/02/23(土) 13:24:09.67
posix標準とか今調べたくせになにいってんだこいつ
0186名無しさん@お腹いっぱい。2013/02/23(土) 13:29:00.48
-exec {} +とかFAQだろ、
この板でもシェルスクリプトスレとかで散々既出だし
今更何言ってんの?
0187名無しさん@お腹いっぱい。2013/02/23(土) 13:29:10.28
Cygwinで配布してる版ではどっちもつかえるからどうでもいい件
0188名無しさん@お腹いっぱい。2013/02/23(土) 13:30:26.08
本当にどうでもいいけど
>>175>>181は反省するようにな
0189名無しさん@お腹いっぱい。2013/02/23(土) 13:32:39.46
>>186
FAQだというソースだせよ
0190名無しさん@お腹いっぱい。2013/02/23(土) 13:37:01.70
シェルスクリプトスレ()
0191名無しさん@お腹いっぱい。2013/02/23(土) 13:39:27.42
xargsを解説して来る奴って今回の例だけじゃなく常にドヤ顔してるよね。
0192名無しさん@お腹いっぱい。2013/02/23(土) 13:40:28.94
find -exec {} + を知らなかった奴はシェルスクリプトスレを笑う資格はないな
http://archive.2ch-ranking.net/unix/1266642605.html
一時はテンプレ入りしてたぐらいにFAQ
0193名無しさん@お腹いっぱい。2013/02/23(土) 13:42:19.24
FAQってのは要するに質問が頻出する程度にぜんぜん知られてないってことだよね。
0194名無しさん@お腹いっぱい。2013/02/23(土) 13:42:26.60
>>191
古い誤った知識で威張りたがるだけでなく他人に押し付けようとする
反省の色もまるでない

馬鹿なんだろう
0195名無しさん@お腹いっぱい。2013/02/23(土) 13:44:07.32
>>194
-print0 って入力してる時の顔なんか最高にうざいよね。
0196名無しさん@お腹いっぱい。2013/02/23(土) 13:50:30.05
どっちも同じぐらいうざいんだが
0197名無しさん@お腹いっぱい。2013/02/23(土) 15:47:53.00
まあ、posix標準なら何処持って行っても互換性安定するね
0198名無しさん@お腹いっぱい。2013/02/23(土) 16:55:24.54
後に引けなくなっててワロタ
0199名無しさん@お腹いっぱい。2013/02/23(土) 17:21:01.68
>>169
-exec 以下を -delete にしたら -prune と使うなって怒られた。man参照

>>193
そもそもfind絡みの質問って頻出だし、知ってる人は質問しないし
知らない人が質問するのに全然知られてないって当たり前じゃね?

上にいる、forkの遅さとか生成されるプロセスの多さを気にする奴向けに書き直すとこうか?
find / \( -path /dev -prune -o -path /proc -prune -o -path /cygdrive -prune -o -name "*.stackdump" \) -type f -print0 |perl -E 'map unlink,split"\x00",join"",<>'
findとperlだけ。引数で渡さない
Windowsだとコマンドライン引数の長さ制限が厳しいから、どうやってもプロセスが多くなる
0200名無しさん@お腹いっぱい。2013/02/23(土) 19:35:23.46
俺も.stackdumpだらけだったw。
0201名無しさん@お腹いっぱい。2013/02/23(土) 20:31:09.08
ミキ prune
0202名無しさん@お腹いっぱい。2013/03/10(日) 01:29:15.91
今まで面倒だと思って ssh はパスワード認証使っていたけど
公開鍵認証にして ssh-agent 使い出したらスムーズ過ぎワロタ
だけど、.bash_profile とかに eval "`ssh-agent`" って書くと mintty 毎に立ち上がって不便
ssh-agent の出力内容をファイルに書き出して source で読み込むのはセキュリティ的に気になる
0203名無しさん@お腹いっぱい。2013/03/10(日) 01:40:21.77
keychain 使えば?
0204名無しさん@お腹いっぱい。2013/03/10(日) 02:05:24.90
pagent 使う方法も一旦ファイルに書きだすようになってるんだなぁ
0205名無しさん@お腹いっぱい。2013/03/10(日) 09:41:10.45
keychainいいよ
0206名無しさん@お腹いっぱい。2013/03/10(日) 19:51:22.83
あるいはwin-ssh-agentとか。
0207名無しさん@お腹いっぱい。2013/03/11(月) 01:03:51.38
ありがとう。やっぱり同じ考えの人が居るもんだね
keychain が一般的っぽくて ssh-agent と一緒に説明されてて辿り着いたけど、win-ssh-agent は今知ったわ

ソース読んだら ssh-agent の出力をレジストリの環境変数に直接書き込むタイプで
ファイルに書き出す訳じゃないから、シェルを通して読み込む必要がないのは凄くいいね

…って短絡的に思ったけど、下を見ると主要開発者からの評価はよろしくないのか
ttp://cygwin.1069669.n5.nabble.com/ITP-win-ssh-agent-1-07-td79517.html
とりあえず、パッケージにあるから導入しやすい keychain で逝こうと思います
0208名無しさん@お腹いっぱい。2013/03/11(月) 21:10:46.97
ssh-pageantはどうなのだろう。204がそれ?

全然関係ないけど、pageantってpagentじゃないのね。
ずっとpagentだと思ってた。
0209名無しさん@お腹いっぱい。2013/03/11(月) 23:51:02.73
パゲェーント?パゲアント?ページアント?頁蟻?
0210名無しさん@お腹いっぱい。2013/03/12(火) 10:41:31.30
SSH_AUTH_SOCKとSSH_AGENT_PIDをファイルに書き出すのと、なんかセキュリティリスクを生むの?
0211名無しさん@お腹いっぱい。2013/03/12(火) 11:20:51.63
sshdをサービスとして起動してputtyでSSH接続するとPageantの鍵一覧を引き継いでくれる
もちろん--with-w32でconfigueしたemacs24は-nw付けないとで起動できないけど
0212名無しさん@お腹いっぱい。2013/03/12(火) 11:49:48.01
>>210
ファイルパーミッションでのみ保護されているという意味で
秘密鍵と同じだよね
0213名無しさん@お腹いっぱい。2013/03/12(火) 12:09:49.67
パスフレーズもあるじゃん。
0214名無しさん@お腹いっぱい。2013/03/12(火) 15:46:38.79
パスフレーズはオンメモリじゃないの?
0215名無しさん@お腹いっぱい。2013/03/12(火) 21:57:32.27
>>212
見られたら困るようなファイルじゃないし
秘密鍵書き出してるわけじゃない
0216名無しさん@お腹いっぱい。2013/03/13(水) 00:38:57.93
>>215
見られたらってより、書き換えられる方が問題じゃね?
例えばssh-agentが動いているところで、下を実行した後sshを実行すると秘密鍵がsocat経由で渡ってしまう
$ SSH_AUTH_SOCK_="$SSH_AUTH_SOCK"; export SSH_AUTH_SOCK=/tmp/bypass
$ socat unix-l:"$SSH_AUTH_SOCK" unix-connect:"$SSH_AUTH_SOCK_" &
このsocatが別の不正なプログラムだとまずくない?って話なのでは

ファイルに書き出してないなら、この攻撃は難しい
02172082013/03/13(水) 01:45:21.82
ssh-pageantちょっと使ってみた。
動かし方はssh-agentと同じだけど、自動的にpageantのキーがssh-addされたような
状態になるのね。ssh-pageant動かしてからpagentでキーを読んでも大丈夫だった。

minttyからplink動かすと標準エラーがバッファされてアレなことが多いんだけど、
これならそのままssh使えばいいかもしれない。

全然関係ないけどplinkも英単語として意味があるのね。今気づいた。
0218名無しさん@お腹いっぱい。2013/03/13(水) 06:17:13.04
cygwinてなんでbison関係はいってないの
0219名無しさん@お腹いっぱい。2013/03/13(水) 07:08:10.85
あるよ
http://cygwin.com/packages/bison/
0220名無しさん@お腹いっぱい。2013/03/13(水) 22:15:39.57
別でいれるのか
thx
0221名無しさん@お腹いっぱい。2013/03/19(火) 01:31:42.53
http://cygwin.com に繋がらねー
落ちてる???
0222名無しさん@お腹いっぱい。2013/03/19(火) 05:41:42.10
>>221
メンテ中
http://article.gmane.org/gmane.os.cygwin/138589
0223名無しさん@お腹いっぱい。2013/03/19(火) 10:34:26.32
>>222
モノシリックカーネルwww
トンクス
0224名無しさん@お腹いっぱい。2013/03/20(水) 00:18:06.56
物知りっく??
0225名無しさん@お腹いっぱい。2013/03/20(水) 04:46:58.85
かかって来いよタネンバウム!!!!!
0226名無しさん@お腹いっぱい。2013/03/22(金) 08:26:33.91
海苔知りじゃよ
0227名無しさん@お腹いっぱい。2013/04/03(水) 22:12:38.73
いつの間にか64bit版の開発始まってたんだな
もうやらないのかと思ってた

まーたcygwinを捨てない理由が出来てしまった
0228名無しさん@お腹いっぱい。2013/04/04(木) 13:47:24.62
gnupack使っているのですが、文字の行間をもう少し広くする設定は
できないのですかね?
gvimやemacsならばlinespaceで設定できるような気がするのですが、
minttyやbashなどで行間のカスタマイズは不可能でしょうか……
0229名無しさん@お腹いっぱい。2013/04/07(日) 07:33:20.56
minttyを使うと日本語が90度ずれる・・・
ttp://software.harikonotora.net/m_src/835-1s.jpg

上がcygwin.batから
下がmintty.exe

なぜだろう?
02302292013/04/07(日) 07:41:00.55
スクリーンショット貼り付け失敗
ttp://uploda.cc/img/img5160a42099159.png
0231名無しさん@お腹いっぱい。2013/04/07(日) 07:42:02.16
minttyに設定してるのが縦書フォントなんじゃないの
フォント名に「@」ついてないか?
02322292013/04/07(日) 20:17:26.37
>>231
サンクス。フォント名に@がついてた
縦書フォントなんてあるんだ。知らんかった
0233名無しさん@お腹いっぱい。2013/04/13(土) 04:33:05.58
Windows XP SP3
Cygwin 1.7.17
の環境を使っています。

Cygwin Terminalにて

echo $0

を実行すると、

-bash

と、先頭に"-"が付いて出力されてしまいます。

$ aaa
-bash: aaa: command not found

と、コマンドエラーの出力も同様に"-bash"と表示されます。
一方、コマンドプロンプトベース?のCygwinでは、きちんと"bash"と表示されます。
このようになるのは何故でしょうか?
0234名無しさん@お腹いっぱい。2013/04/13(土) 07:37:53.04
-で始まるのはログインシェルって意味
02352332013/04/13(土) 15:48:56.86
>>234
そうなのですか
でも"Cygwin.bat"を実行した場合は"-"が表示されませんが
これはなぜなのでしょうか
0236名無しさん@お腹いっぱい。2013/04/13(土) 16:18:29.81
>>235
ログインシェルじゃないから
02372332013/04/13(土) 16:23:17.08
>>236
"Cygwin.bat"の中身は"bash --login -i"になっていますが
これはログインシェルではないのでしょうか
0238名無しさん@お腹いっぱい。2013/04/13(土) 16:27:34.57
>>237
--login オプションはログインシェルじゃないシェルに
ログインシェルと同様に .bash_profileとかを読ませるためのオプションで、
あくまで「ログインシェルではない」

もともとシェルの仕様で、- が頭につくとシェル自身がログインシェルだと
判断していた。--login はその判断を変更するためのオプションでしかない。
0239名無しさん@お腹いっぱい。2013/04/13(土) 16:41:05.06
>>237
"bash"というコマンド名で実行されたんだから
$0の値はbashになる。--loginオプションとは無関係。

ログインシェルは、システムによって"-bash"という名前で起動されてる。
だから$0の値は-bashになる。
02402332013/04/13(土) 17:02:57.95
>>238>>239
ありがとうございます。

イメージとしては、
Cygwin Terminalのショートカットから起動する場合("mintty -"を実行)は、
CygwinというUnixシステムにログインする形式をきちんと模していて、
一方、Cygwin.batから起動する場合("bash --login"を実行)は、
コマンドプロンプト上からbashをログインシェルと同じ実行手順で起動しているだけで、
Unixシステムへログインする形式は模していない
(既にログインしたUnixのターミナル上から"bash --login"を実行するのと同じ)
といった感じでしょうか。

ちなみに、"mintty -"でCygwinを起動する場合と、Cygwin.batでCygwinを起動する場合とで、
Cygwinの起動処理やその後の動作環境などに何か違いはありますか?
0241名無しさん@お腹いっぱい。2013/04/13(土) 20:03:51.34
DOSコマンドが使えない>>mintty
02422332013/04/13(土) 22:56:03.21
>>241
ありがとうございます
0243名無しさん@お腹いっぱい。2013/04/13(土) 23:07:48.23
>>241の何か良い例はある?
0244名無しさん@お腹いっぱい。2013/04/13(土) 23:31:11.76
minttyのトップページにproblemsって書いてある
http://code.google.com/p/mintty/issues/detail?id=56
0245名無しさん@お腹いっぱい。2013/04/22(月) 19:27:40.60
Cygwin 1.7.18キター
0246名無しさん@お腹いっぱい。2013/04/28(日) 13:57:35.55
>>245
> Cygwin 1.7.18キター
何が変わったの?
つーか、バンドル版のclang/llvmもいい加減3.2にしてほしいんだが・・・。
0247名無しさん@お腹いっぱい。2013/05/30(木) 19:12:28.52
Cygwinのbinutilsのバージョンが本家よりスゴイ進んでるんだけど
なんで?
0248名無しさん@お腹いっぱい。2013/05/30(木) 19:13:17.20
本家のbinutilsは 2.23.1 が最新になってるけど
Cygwinのbinutilsのバージョンは 2.23.51-1 になってる
スゴイ進んでる
0249名無しさん@お腹いっぱい。2013/05/30(木) 20:45:24.13
>>248
開発版のスナップショットだから
ftp://sourceware.org/pub/binutils/snapshots/
0250名無しさん@お腹いっぱい。2013/05/31(金) 08:10:46.79
3番目の数字が増えるのは、バグがなかなか取れなくて苦労していると解釈すべき。
0251名無しさん@お腹いっぱい。2013/05/31(金) 14:34:02.16
>>249-250
ありがとう
そういうことなら納得した
0252名無しさん@お腹いっぱい。2013/07/04(木) NY:AN:NY.AN
gcc-3消えた?
0253名無しさん@お腹いっぱい。2013/07/05(金) NY:AN:NY.AN
2.95使えよ
0254名無しさん@お腹いっぱい。2013/07/05(金) NY:AN:NY.AN
>>252
JonY - [ANNOUNCEMENT] Updated: gcc-4.7.3-1
http://cygwin.com/ml/cygwin/2013-07/msg00016.html
0255名無しさん@お腹いっぱい。2013/07/07(日) NY:AN:NY.AN
>>254
もともとgcc-4ってマニュアルには、-mno-cygwinが載っていたが使えなかったような気が
Makefileを書き直さないと
cygwinを最新にアップデートしたままの状態でgcc-3で-mno-cygwinを
使える方法は無いのかな?
0256名無しさん@お腹いっぱい。2013/07/08(月) NY:AN:NY.AN
なんでmingw使わずmno-cygwinに拘るんだ?
0257名無しさん@お腹いっぱい。2013/07/08(月) NY:AN:NY.AN
cygwinスレだからだろ
0258名無しさん@お腹いっぱい。2013/07/08(月) NY:AN:NY.AN

cygwin版のmingw入れればいいだけの話だろ
cygwinホスト、ターゲットがmingwのgccクロスコンパイラツールセットってことだけど

パッケージ化されてるし、i686-pc-mingw32/i686-w64-mingw32/x86_64-w64-mingw32
どれも使える
感覚的にはLinuxからのmingwクロスと一緒だよ
0259名無しさん@お腹いっぱい。2013/07/16(火) NY:AN:NY.AN
1.7キタ━━━━(゚∀゚)━━━━!!
0260名無しさん@お腹いっぱい。2013/07/21(日) NY:AN:NY.AN
いつの話だよ
0261名無しさん@お腹いっぱい。2013/07/25(木) NY:AN:NY.AN
clangでC++のコードがコンパイルできないんですけれど、これはインストール方法が悪いんですか?
それともコマンドラインのオプション設定が何か間違っているんでしょうか?
(正確には「climits」「deque」などのSTLを認識してくれない)
当方の環境はCygwinの最新版です
(http://yoffy.dyndns.org/2012/04/cygwin_clang.htmlを見てclangをインストールし直したりもしましたが治ってくれません)

エラーの内容:
$ clang -o soft.exe soft.cpp
soft.cpp:11:10: fatal error: 'climits' file not found
#include <climits> //INT_MIN<97>p
^
1 error generated.
0262名無しさん@お腹いっぱい。2013/07/25(木) NY:AN:NY.AN
>>261
勘違いしているようですが clangでC++はコンパイルできません
0263名無しさん@お腹いっぱい。2013/07/25(木) NY:AN:NY.AN
>>261
もしかして: clang++
02642622013/07/25(木) NY:AN:NY.AN
>262-263
あ、書き方が悪かったようですみません。「Clang」自体のことを指していたのでした。
「clang++」に書き換えてもなぜか同じエラーが出てきます。と言うより、C++対応の方が認識されていないような
気すらするのです……。

USER@USER-PC /cygdrive/d/
$ clang++ -o soft.exe soft.cpp
soft.cpp:11:10: fatal error: 'climits' file not found
#include <climits> //INT_MIN<97>p
^
1 error generated.

USER@USER-PC /cygdrive/d/
$ clang -v
clang version 3.1 (branches/release_31)
Target: i386-pc-cygwin
Thread model: posix

USER@USER-PC /cygdrive/d/
$ clang++ -v
clang version 3.1 (branches/release_31)
Target: i386-pc-cygwin
Thread model: posix
0265名無しさん@お腹いっぱい。2013/07/25(木) NY:AN:NY.AN
clangでC++のコードがコンパイルできないんですけれど、これはインストール方法が悪いんですか?
それともコマンドラインのオプション設定が何か間違っているんでしょうか?
(正確には「climits」「deque」などのSTLを認識してくれない)
当方の環境はCygwinの最新版です
(http://yoffy.dyndns.org/2012/04/cygwin_clang.htmlを見てclangをインストールし直したりもしましたが治ってくれません)

エラーの内容:
$ clang -o soft.exe soft.cpp
soft.cpp:11:10: fatal error: 'climits' file not found
#include <climits> //INT_MIN<97>p
^
1 error generated.
02662612013/07/25(木) NY:AN:NY.AN
>262-263
あ、書き方が悪かったようですみません。「Clang」自体のことを指していたのでした。
「clang++」に書き換えてもなぜか同じエラーが出てきます。と言うより、C++対応の方が認識されていないような
気すらするのです……。

USER@USER-PC /cygdrive/d/
$ clang++ -o soft.exe soft.cpp
soft.cpp:11:10: fatal error: 'climits' file not found
#include <climits> //INT_MIN<97>p
^
1 error generated.

USER@USER-PC /cygdrive/d/
$ clang -v
clang version 3.1 (branches/release_31)
Target: i386-pc-cygwin
Thread model: posix

USER@USER-PC /cygdrive/d/
$ clang++ -v
clang version 3.1 (branches/release_31)
Target: i386-pc-cygwin
Thread model: posix
■ このスレッドは過去ログ倉庫に格納されています