Cygwin + MinGW + GCC 相談室 Part 8

1デフォルトの名無しさん
垢版 |
2014/09/23(火) 00:20:11.40ID:G97CLCj1
Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。

過去スレ:
Cygwin + MinGW + GCC 相談室 Part 7
http://peace.2ch.net/test/read.cgi/tech/1357019230/
Cygwin + MinGW + GCC 相談室 Part 6
http://toro.2ch.net/test/read.cgi/tech/1304609116/
Cygwin + MinGW + GCC 相談室 Part 5
http://hibari.2ch.net/test/read.cgi/tech/1269400706/
Cygwin + MinGW + GCC 相談室 Part 4
http://pc12.2ch.net/test/read.cgi/tech/1221233882/
cygwin + mingwn + gcc 相談室 Part3
http://pc11.2ch.net/test/read.cgi/tech/1177944767/
cygwin + mingwn + gcc 相談室 Part2
http://pc11.2ch.net/test/read.cgi/tech/1126103347/
cygwin + mingwn + gcc 相談室
http://pc8.2ch.net/test/read.cgi/tech/1058134693/

関連サイト:
Cygwin http://www.cygwin.com/
MinGW http://www.mingw.org/

関連スレッド:
GCCについて part10
http://toro.2ch.net/test/read.cgi/tech/1315026784/
2020/05/04(月) 03:06:12.15ID:szliIti6
あ、dashの結果書くの忘れてた。dashは速いから数を10倍にしてる
傾向は一緒。ただのループなのに2倍ぐらいの差が出てしまう

WSL1
$ time dash -c 'for i in $(seq 10000000); do :; done'
real 0m4.480s
user 0m2.875s
sys 0m2.047s

Cygwin
$ time dash -c 'for i in $(seq 10000000); do :; done'
real 0m7.598s
user 0m6.531s
sys 0m1.296s

MinGW64
$ time dash -c 'for i in $(seq 10000000); do :; done'
real 0m7.905s
user 0m6.905s
sys 0m1.155s
2020/05/04(月) 03:06:42.72ID:szliIti6
>>715
どこでフォークしてるというの?
2020/05/04(月) 03:16:08.18ID:szliIti6
awkは更に速いから、更に10倍にしてる。これなら理解できるな。
CygwinとMinGW64がWSL1より少し遅いのは起動時のパフォーマンスの差だろう
ってことはシェルスクリプトだと、なにか遅くなる処理をやってるってことか
整数型じゃないとか?

WSL1
$ time awk 'BEGIN{i=0;for(i=0;i<100000000;i++);}'
real 0m4.121s
user 0m4.109s
sys 0m0.016s

Cygwin
time awk 'BEGIN{i=0;for(i=0;i<100000000;i++);}'
real 0m4.978s
user 0m4.875s
sys 0m0.031s

MinGW64
$ time awk 'BEGIN{i=0;for(i=0;i<100000000;i++);}'
real 0m4.586s
user 0m4.562s
sys 0m0.015s
719715
垢版 |
2020/05/04(月) 04:54:04.28ID:R/PLl+Gn
for がコマンドだから、フォークされるのだろ。
だから、シェルスクリプトでは、while を使えと言われる

bash よりも、dash を使う。
それ以上は、awk, perl, ruby
2020/05/04(月) 05:14:01.45ID:szliIti6
whileを使うと遅いからforに変えたのですが?
forを使った>>716とループ回数は同じ

WSL1
$ time dash -c 'for i in $(seq 10000000); do :; done'
real 0m4.480s
user 0m2.875s
sys 0m2.047s

$ time dash -c 'i=0; while [ $i -lt 10000000 ]; do i=$((i+1)); done'
real 0m15.811s
user 0m15.766s
sys 0m0.016s

Cygwin
$ time dash -c 'for i in $(seq 10000000); do :; done'
real 0m7.598s
user 0m6.531s
sys 0m1.296s

$ time dash -c 'i=0; while [ $i -lt 10000000 ]; do i=$((i+1)); done'
real 0m26.173s
user 0m26.109s
sys 0m0.031s


MinGWはCygwinと大差ないので省略
721715
垢版 |
2020/05/04(月) 07:28:52.02ID:R/PLl+Gn
8年前のシェルスクリプトの本には、
10万行の処理で、

for : 9分
while : 5秒
awk/perl : 0.1秒
722715
垢版 |
2020/05/04(月) 07:33:20.66ID:R/PLl+Gn
$((i+1)) という部分が、コマンドだから遅いのだろう

ほとんどが、そのフォーク時間
2020/05/04(月) 07:37:26.49ID:iIYyf/rd
せいぜいbashのサブコマンドで、forkしとらん気がする
ただマルチスレッドは使ってるかも知れんし、その際のメモリ操作はなんか性能の問題があった気はする
2020/05/04(月) 07:49:25.72ID:szliIti6
>>722
コマンドじゃないよ
2020/05/04(月) 18:39:29.61ID:EvcVp/Zr
$(())内でiを更新できることから分かるようにforkしていないし、少なくともbashとdashはシングルスレッド

linux上で
ltrace -f bash -c 'for i in {1..1000000}; do :; done'
したら、mallocを何度も呼んでいるようだから、ヒープ操作関係が遅い可能性はある
実際、linux上でもmallocの実装をglibcのからjemallocに切り替えたら上のループが2割近く速くなった
2020/05/06(水) 17:53:36.31ID:cyb3WwF6
wsl2は仮想マシンになるのか
windowsバイナリ実行できるのかな
727デフォルトの名無しさん
垢版 |
2020/05/06(水) 19:33:37.07ID:DK8FW5YB
以下のパッケージ、入れようとすると対象が見つからないと出るんだけど・・・

dlfcn
libpng
tools-git
jq
clang
2020/05/06(水) 20:42:44.30ID:Fjn1hDTG
WSL, Ubuntu 18.04 には、jq もあるけど

apt-cache show jq

メンテナー : 陳昌倬
2020/05/06(水) 22:45:14.75ID:UqyV1t7H
>>727
ないんだろ?Cygwinは独自のディストリ
Windowsに移植できたもの、自分が関心があるパッケージしか
登録されていない
730デフォルトの名無しさん
垢版 |
2020/05/11(月) 23:46:54.34ID:77t5bXxM
GCC 10.1まだですか
2020/05/12(火) 00:26:10.57ID:6XbzcR0E
ついにGCCのバージョンも10まできたか・・
2020/05/12(火) 01:18:10.18ID:yS+J4vmz
GCCじゅにや
2020/05/12(火) 07:09:28.82ID:zxRznJOz
カバにダンスをさせるのは
あまり楽しくないそうだ
2020/05/14(木) 00:17:24.56ID:rBW8Yffw
MSYS2でWin32アプリ作ってみようとチャレンジ中
735デフォルトの名無しさん
垢版 |
2020/05/14(木) 10:05:25.88ID:tvxDWcUo
きばれ
tdm-gcc (64)
736デフォルトの名無しさん
垢版 |
2020/05/14(木) 10:09:03.48ID:tvxDWcUo
https://jmeubank.github.io/tdm-gcc/articles/2020-03/9.2.0-release
2020/05/14(木) 10:17:17.31ID:HbCKurWZ
Ruby はやめとけ
738デフォルトの名無しさん
垢版 |
2020/05/22(金) 14:26:50.74ID:DztlkuPK
msys2をサイレントインストールするにはどうしたら良いですか?
2020/05/28(木) 04:57:53.37
WSL2で 9PFs 経由でWin32側のファイルを読み込むの、なんでこんな遅いの?
2020/05/28(木) 05:10:55.81ID:X/662gLn
仮想マシン経由だからでは?
だからWSL1も引き続き開発してるわけで
741デフォルトの名無しさん
垢版 |
2020/05/29(金) 02:44:46.36ID:o1TI0Bdi
そろそろ更新してくれ
742デフォルトの名無しさん
垢版 |
2020/06/23(火) 03:13:01.66ID:1wsAa41I
新版まだですか〜
2020/06/23(火) 04:40:31.79ID:TI7IUkkN
あきらめれ。Cygwinはもうお役御免
2020/06/23(火) 05:19:55.35ID:AJ4z3x9t
同意。mingwは存在意義があるけど、cygwinは役割を終えた。
2020/06/23(火) 07:12:20.62ID:lBX+9FOg
cygwin
ついに死す、か・・
2020/06/23(火) 08:06:26.09ID:oj2a+YQY
大往生だね
2020/06/23(火) 12:40:28.65ID:AJ4z3x9t
mingwは「Git For Windows」のバンドルモジュールとしてしぶとく生き残る。
cygwinはdll依存をなくしてmingwに統合されていくでしょ。
2020/06/23(火) 13:37:46.90ID:IV3AROMx
それを言ったらGit Bashはmsys2のbashだが、bashがmingwに移植されるとは思えんな
2020/06/23(火) 13:44:06.97ID:oj2a+YQY
gcc -staticがデフォじゃないのがよくわからん
じゃあMinGWの立ち位置って何よって
750デフォルトの名無しさん
垢版 |
2020/06/23(火) 13:57:09.75ID:4kHZmTBE
https://www.itmedia.co.jp/enterprise/articles/2006/18/news108.html
http://www.security-next.com/096491
2020/06/23(火) 14:46:14.01ID:ORgy0fyK
bash使いたいならbusybox-w32を使えばいいじゃない
2020/06/23(火) 18:04:53.62ID:IV3AROMx
MinGWの立ち位置?
Win32アプリをビルドできるGCC環境
2020/06/23(火) 18:07:43.51ID:5yVlyLrR
ReactOS Build Environment (RosBE)という選択肢もアリます。
2020/06/23(火) 18:42:37.39ID:sbDHiXI+
MSVC に依存したくないので、mingw をお手軽に維持できる cygwin 環境はありがたいですね…
2020/06/23(火) 18:50:53.69ID:5yVlyLrR
WineHQとかRosBEとかはLinuxでも使えるクロスコンパイラを用意している。まあ、やる人は少ないが。
2020/06/23(火) 18:53:16.90ID:V6B5o2yX
別にlinuxからでもクロスコンパイルできるんやろ?
2020/06/23(火) 19:25:00.34ID:5yVlyLrR
XPでも動くプログラムが作れるってのが味噌。MSYS2はVista+に移行した。
2020/06/23(火) 22:02:49.42ID:AJ4z3x9t
mac OSはzshに移行したというのに
2020/06/23(火) 22:14:53.82ID:MHuIwrXa
移行したと言うか、互換性の点でbashの方が良かったが
bashのライセンスがGPL3に変わって受け入れられなかったから
仕方なくzshにしたってだけだろ
古いbash 3系よりは、zshの方がまだましという消極的な理由
760デフォルトの名無しさん
垢版 |
2020/06/24(水) 11:23:52.65ID:6+kkBVmV
>>752
>>754
tdmgcc で cygwin から解放されました
ほんとうにありがとうございました
761デフォルトの名無しさん
垢版 |
2020/07/23(木) 17:26:38.39ID:VHveRWmf
更新まだですか
762デフォルトの名無しさん
垢版 |
2020/07/25(土) 17:28:58.82ID:zqROUOzo
tdmgcc は wikipedia では開発が止まった事になってるな。
763デフォルトの名無しさん
垢版 |
2020/07/25(土) 19:44:16.83ID:e/b0FSz8
フェラチオザウルスにパクってされちゃうよ
764デフォルトの名無しさん
垢版 |
2020/07/27(月) 10:47:44.01ID:vNtx9fDh
日本語情報が怪しい時は
英語で探せとあれほど
https://en.wikipedia.org/wiki/TDM-GCC
765デフォルトの名無しさん
垢版 |
2020/08/02(日) 17:49:35.08ID:5nHbYcRj
GCC10.2が出ましたが更新まだですか
2020/08/02(日) 21:42:09.02ID:tCIK0cPS
まあそうせかすな
2020/08/13(木) 04:41:43.17ID:fvRziO87
例の場所に10.2.1きとる
2020/08/27(木) 16:58:23.47ID:Q9n93HF/
10.2.1更新来たな
769デフォルトの名無しさん
垢版 |
2020/09/06(日) 05:21:00.21ID:6+AOMFkl
どこ。
2020/09/06(日) 14:38:00.75ID:brHr3Ow2
>>768
来たな
2020/09/12(土) 15:02:17.29ID:9491oo7t
>>769
教えない
772デフォルトの名無しさん
垢版 |
2020/09/12(土) 15:31:34.91ID:cDX1Q2rT
どこもろ
773デフォルトの名無しさん
垢版 |
2020/09/13(日) 02:49:17.38ID:H5kZw8iZ
どこやねん
2020/09/13(日) 23:19:27.35ID:fPwxPBWU
VSと比べてDLLサイズが異常に大きいのは何故?
2020/09/13(日) 23:36:47.82ID:TB8HnEHa
例外処理テーブルとか
2020/09/14(月) 06:19:49.80ID:ojDUYk2D
なるほど
2020/09/22(火) 10:07:53.86ID:E39jLpI9
例の場所に更新
2020/09/22(火) 15:23:38.04ID:GllshRbk
どこやねん
2020/09/22(火) 18:05:26.68ID:seuGL7uU
検索すらできないのか
それともネタなのか
2020/09/22(火) 19:37:32.27ID:CCoUpWrp
今時mingwはmsys2のを使っときゃいいんだよ
2020/09/23(水) 11:02:58.68ID:XRK7WPHx
検索してもわからんやろ
2020/09/23(水) 23:46:41.48ID:gLjfq4c0
SourceForgeのMinGWページを隅から隅まで探せば書いてあるじゃん
2020/09/24(木) 04:03:25.38ID:Qc2kqk0D
隅から隅まで探さないといけないやつを検索すらできないのかっていうのはなんか違わない?????
僕そもそもなぜかCygwinの話だと思ってたからそれ以前の問題なんですけど
2020/09/24(木) 08:19:03.36ID:hsn7nUMR
こまけーことは気にせずにmsys2使っときゃええんやで
cygwinはなあ…gccの更新いつも遅いから
2020/09/25(金) 02:23:28.62ID:R0ES/gEA
Last Update: 2018-07-13
2020/09/25(金) 05:05:33.50ID:xdrtZXMH
Git for Windows にバンドルされてるbash使えばいい。
ビルド環境はStrawberry Perlにバンドルされてるのを使えばいい。
787デフォルトの名無しさん
垢版 |
2020/09/25(金) 10:53:31.32ID:4ovx1Tzj
git bash まじ重宝
2020/09/25(金) 16:22:15.04ID:zomYspwe
git bash何かいらねえ
2020/09/27(日) 12:42:54.48ID:7DquKLWE
>>775
例外処理省く方法教えて
デカすぎて
2020/09/27(日) 17:29:20.39ID:N8t4cs0T
デバッグビルドしてストリップしてないとか?
2020/09/27(日) 17:39:43.97ID:RCK09O0u
ライブラリをストリップしたらあかんのではないかな
gccのオプションにexceptionのなんかがあった気がする
2020/09/27(日) 17:55:53.32ID:/pvqCRq3
なんでライブラリをストリップしちゃだめなの?
2020/09/28(月) 05:51:50.74ID:fkfJzhy+
ごめんなさい
デバッグしてた
ありがとう
2020/09/28(月) 17:33:38.94ID:QxfbhGyV
Visual Studioに入ってるdumpbinに相当するコマンドある?
DLLのエクスポートテーブルを覗きたいんだけど
795デフォルトの名無しさん
垢版 |
2020/09/28(月) 18:01:48.48ID:zjrobJ8x
digitalmars_com /ctg/implib.html
wiki_dlang_org /Win32_DLLs_in_D
www_kmonos_net /alang/d/dll.html
2020/09/28(月) 19:28:55.09ID:o9UKO8uP
>>794
objdump
readelf
797デフォルトの名無しさん
垢版 |
2020/10/16(金) 19:44:08.37ID:UdyDW7b6
オーイ
2020/10/16(金) 22:45:48.97ID:JU6AgX+H
ハニマル
2020/10/19(月) 13:45:57.53ID:icj8nwBD
>>79チンチンなめなさい
800デフォルトの名無しさん
垢版 |
2020/11/09(月) 21:03:17.57ID:IuElySO5
fork: retry: resource temporarily unavailable とかでて直せない。
rebaseallとかやっても効果ないみたいだし
もうcygwin、msysのテストやめようかな
801デフォルトの名無しさん
垢版 |
2020/11/10(火) 12:08:26.08ID:08CevRpc
おそらく D よりも需要無い
2020/11/10(火) 12:59:45.22ID:xOE44Ei0
>>800
よっぽど暇なんだね
2020/12/15(火) 15:11:54.58ID:XwGFb1c9
MSYS2には、lscpuコマンドはないのかな?
CentOSなんかだとutil-linuxパッケージに入ってるけど、MSYS2のには入ってないもよう。。。
2020/12/15(火) 15:49:11.07ID:nSXgvBdA
cpuinfoあるんだっけ
2020/12/15(火) 15:58:16.71ID:XwGFb1c9
/proc/cpuinfo
/proc/meminfo
/usr/bin/free
はあるんだけど、lscpuはないんだよな。。。
806デフォルトの名無しさん
垢版 |
2020/12/15(火) 17:22:03.48ID:ME0vqtfe
MinGWって終わってるよな
2020/12/15(火) 22:11:01.31ID:vYGb7HVK
Windows 10, WSL2, Ubuntu 18.04 には、

/usr/bin/lscpu
がある
2020/12/16(水) 21:38:25.53ID:kww319UT
で?
2020/12/19(土) 14:26:36.44ID:ap/HqxcB
MSYS2の終わりだよよう。。。
2020/12/22(火) 16:11:28.24ID:GJ2NqyED
ってかこの世の終わりだよう。。。
811デフォルトの名無しさん
垢版 |
2020/12/23(水) 09:37:51.13ID:vcwRrO0n
コロナもどんどん変異種がでてきとるしな
もう人類は無理だろ
さよなら人類
812デフォルトの名無しさん
垢版 |
2021/01/17(日) 17:25:02.12ID:/QJK4AMk
マジで終わりそうでコロナ怖い
2021/01/18(月) 06:41:44.76ID:062JN0Tv
武漢熱な
責任をぼかす言い方やめようぜ
2021/01/18(月) 07:07:52.97ID:iOtNqc3F
自民党支持者ってまだcygwin使ってるんだ
815デフォルトの名無しさん
垢版 |
2021/01/18(月) 16:38:16.66ID:0ToZeY7a
https://www.youtube.com/watch?v=BfrNJ_CQja8
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況