Cygwin + MinGW + GCC 相談室 Part 8at TECH
Cygwin + MinGW + GCC 相談室 Part 8 - 暇つぶし2ch416:デフォルトの名無しさん
18/08/04 21:46:10.59 Q5j2wvwG.net
windowsのあれはパッケージ管理なのか?アップデートはアプリ任せだが

417:デフォルトの名無しさん
18/08/05 01:32:40.33 us+tZNOh.net
>>416
Git for WindowsもMSYS2もChocolatey経由でinstall&upgradeしている。
Windowsの「アプリと機能」ってパッケージ管理じゃないの?

418:デフォルトの名無しさん
18/08/05 05:26:48.35 yCHXVEt3.net
msys2のupgradeは
pacman -Ysu
じゃなくて?

419:デフォルトの名無しさん
18/08/05 17:10:39.33 aJhRtn6H.net
>>413
MSYS2で擬似Linux環境が欲しいとかMinGWで
開発をしたいわけではないけど、最新の
VisualStudioとかAndroidStudioがGitを要求
するんでWindowsでGitだけ使いたいとかっていう
要求はある
Git使いたいわけではなくて、ソースコードに
GitHUBなどから動的にソースを取ってくる
見たいなものも増えているので

420:デフォルトの名無しさん
18/08/16 00:54:28.51 dflIWUnx.net
GPLにしたくないのでclang+libc++をベースとしたw32api開発環境を構築してみようと思ったけど全然情報ないのな

421:デフォルトの名無しさん
18/08/17 15:28:41.39 FVp24TVc.net
>>420
このスレで言うのもあれだけど、わりとそのまま置き換えて使えるよ
msvc系で使うならターゲットも気にしなくていいし
でもそれならMSからvcのビルドツール落としてそっちのコマンドラインの方を
使った方がいいような気もする

422:417
18/08/17 23:30:52.33 yyLE/n3z.net
>>421
事態が結構複雑で・・・
言語はRust
使いたいライブラリはOpenCV(cmake)、GraphicsMagick(make/VisualMagick)、PDFium(Ninja)
ビルドツールだと最新のsln/vcxprojしかビルドできない(VisualMagickはVC++7のslnしか作れない)
コミュニティを入れればビルドできるだろうがめっちゃでかい
最近はWindowsでも脱msvcの流れっぽいしRustも例外ではない(リンカをlldにしようという話があるらしい)
最終的にはLinuxや*BSDでも使う可能性を考えるとmsvc依存は好ましくない
じゃあMinGWで・・・でもライブラリ類がGPLなのは困る。今更gccというのも
ならLLVM系は・・・clangはビルド済みを落とせるけどlibc++はどうすれば??? ←イマココ
以降愚痴。Chromeのコンパイラがmsvcからclangになんて記事が出回っているくらいだし
PDFiumもclangでビルドできるはずだがmsvc(コミュニティ)を使う記事しか見つからん
俺様ビルドシステムの上に情報不足とかマジやめて欲しい

423:デフォルトの名無しさん
18/08/18 11:27:26.31 TgZCKLMK.net
需要なし

424:デフォルトの名無しさん
18/08/18 15:38:32.22 AAEMx0aK.net
つまり/(^o^)\オワタ?

425:デフォルトの名無しさん
18/08/18 19:18:47.52 SATvHJrQ.net
別にMinGWでコンパイルしてもGPLになる訳じゃないしな

426:デフォルトの名無しさん
18/08/18 19:50:39.53 dGIgNVTb.net
デバッグにgccを使うだけじゃGPLにはならんな
リリースをvcでやるとか

427:デフォルトの名無しさん
18/08/18 23:25:05.14 MifkGBcf.net
GPL系ライセンスの嫌いなところは業界内で通用する統一された解釈がなくトラブルに発展する可能性が高いこと
類似の事象でも人によって正反対の主張をしているとかザラだし

428:デフォルトの名無しさん
18/08/19 05:15:31.35 I9SRQ6fc.net
おまえらGCCランタイムライブラリ例外を知らんの?

429:デフォルトの名無しさん
18/08/19 12:42:10.06 plhuPGbS.net
>>427
ほんそれ

430:
18/08/19 13:06:32.63 bW/fB7v7.net
>>428
言ってみてください

431:デフォルトの名無しさん
18/08/19 17:55:05.10 9Uz9lMpd.net
GCCランタイムライブラリ例外とFAQ
URLリンク(www.gnu.org)
おまえら知らんの?

432:デフォルトの名無しさん
18/08/19 19:35:32.54 AHbKk0RR.net
>>431
プロプライエタリなプログラムと混ぜてはいけないと読めるが自分の解釈は間違っているかな?

433:デフォルトの名無しさん
18/09/02 13:37:57.28 U5QFbq32.net
GCCランタイムライブラリ例外、GCCランタイムライブラリ例外言っていた人はどこかへ行っちゃったんか?
OS例外というのもあるよね「何を持ってOSか、どこまでがOSか」に対する統一された見解はなくて
人や会社によって差があった気がするけど

434:デフォルトの名無しさん
18/09/04 03:59:36.35 ceyZWyCm.net
>>432
GCCのプラグインとしてproprietaryなプログラムを組み合わせると例外の恩恵を受けられない
「GPLと両立しないプラグインなど」を組み込ま「ない」GCCが、proprietaryなソースコードをビルド(*.oの出力、リンク)しても例外は適用される(出力されるものはGPL扱いにならない)
ように読んだ
たぶん「コンパイラの中間表現」はGIMPLEとかRTLみたいなGCC固有の表現を指してて、アセンブリ言語(-Sオプションで出力されるやつ)やオブジェクトコードは指してなさそう

435:デフォルトの名無しさん
18/10/17 08:00:38.44 Nvagglal.net
register transfer level?

436:デフォルトの名無しさん
19/01/02 16:43:38.97 3QK6uhic.net
スカトロMinGWの方が先に8.2.0出しやがった

437:デフォルトの名無しさん
19/02/13 17:59:49.60 aV+jBrpA.net
待った
このビルドおかしいぞ
g++ -v で --with-arch が i686 じゃなく i586 になってて
#include <thread> は通るのに std::thread がエラーになったり
#include <mutex> は通るのに std::mutex がエラーになるぞ
「このビルド」は、ここ↓で拾ったやつ
URLリンク(ja.osdn.net)

438:さまよえる蟻人間
19/02/13 18:13:37.39 25aOYuUG.net
>>437
mingw-getのサプライチェーンを疑ってみれ。

439:デフォルトの名無しさん
19/02/28 00:03:08.86 ECv4xj6W.net
MinGWは最近更新が無い

440:デフォルトの名無しさん
19/02/28 00:57:58.22 p6WvsFw7.net
最近 Cygwin も今使ってるやつ居るのか不安になる事が・・
もしかして日本で10人ぐらいの Cygwin ユーザーの一人が俺だったりするんじゃないのか?とか

441:デフォルトの名無しさん
19/02/28 02:42:07.39 qfTaiLvR.net
>>440
俺も日本人ユーザーの一人だが、最近はあまり使っていない。
頻繁にパッケージは更新されているから、世界的にユーザーはいるんだろうと思う。

442:デフォルトの名無しさん
19/02/28 15:56:16.17 7nNuTdUM.net
WINDOWSをアンインストールしてUNIXクローンを入れるのが一番幸せになれるよ

443:デフォルトの名無しさん
19/02/28 16:43:00.81 Ux/nkXD6.net
linuxじゃないやつ?

444:デフォルトの名無しさん
19/02/28 16:44:06.85 7nNuTdUM.net
LinuxもUNIXクローンだよ

445:デフォルトの名無しさん
19/02/28 17:08:50.74 Ux/nkXD6.net
リーナス君もタネンバウム先生も
作ったのは完全オリジナルOSだろ

446:デフォルトの名無しさん
19/02/28 17:17:15.67 7nNuTdUM.net
>>445
クローンのいみわかってる?

447:デフォルトの名無しさん
19/02/28 17:27:01.27 Ux/nkXD6.net
ち、紛らわしい

448:はちみつ餃子
19/02/28 17:44:55.06 KlP/6TOW.net
MSYS2 のスレって無いみたいだけど、
このスレで話題にしてもいいかな?

449:さまよえる蟻人間
19/02/28 17:47:00.17 LJ26MrE+.net
ええよ。

450:デフォルトの名無しさん
19/02/28 18:43:48.24 xBbxLRxk.net
むしろここでしなかったらどこでするんだ、と

451:デフォルトの名無しさん
19/02/28 20:42:24.55 qfTaiLvR.net
>>442
デスクトップ2台使っている。
旧機はUbuntu。新機はWindows 10 Pro。
Windows上でUNIXライクなコマンドを使いたいことが多々ある。

452:デフォルトの名無しさん
19/03/01 02:11:07.18 h8NHrx+2.net
みなWSL(Windows Subsystem for Linux)に行ってしまったのさ・・・

453:デフォルトの名無しさん
19/03/01 02:34:17.24 o7Pfs0Tv.net
>>451
Git BashかWSLかあきらめてPowerShellを極める

454:デフォルトの名無しさん
19/03/01 14:53:50.67 Mu17Fd9O.net
>>453
だから何?
バーカカースボーケ

455:デフォルトの名無しさん
19/03/01 15:03:52.75 a4IFMTFx.net
minttyのためだけにcygwin入れてた時期があったけど
それもももうcygwin気にせず使えるようになったし
cygwinはお役御免

456:デフォルトの名無しさん
19/03/01 15:09:47.64 5yLC9cV7.net
cygwin + msys -> msys2だと思ってた

457:デフォルトの名無しさん
19/03/01 15:17:41.76 h8NHrx+2.net
pcre2のpcre2_match_*() がクラッシュするんだけど、cygwinでしか起きないので調査する意欲がわいてこない。

458:デフォルトの名無しさん
19/03/01 19:20:14.49 HVxvwZsK.net
>>452
win7 な私に wsl の恩恵はないのでしょうか?

459:デフォルトの名無しさん
19/03/05 22:36:22.45 kwP326wzI
MinGWでopenssl-1.0.2rをmakeまでは成功するんだけど、make testでエラーがでていた。
demoディレクトリのpemファイルをverifyする部分なんだけど、どうも「pemファイルのハッシュ値.0」というファイルにシンボリックリンクが貼られなければいけないのに、このファイルが作成されていないことが原因のようです。
openssl x509 -in -hash -noout ca-cert.pem のようにハッシュ値を求め、手動でシンボリックリンクを貼ればパスしました。なぜこのようになるんでしょうか?

460:デフォルトの名無しさん
19/03/06 07:49:41.91 paKD8ls/.net
Git for Windows v2.21.0 Release Notes
Latest update: February 26th 2019
URLリンク(gitforwindows.org)

461:デフォルトの名無しさん
19/03/09 08:54:55.16 Ed78ws/P.net
random_deviceがクソすぎ
D:\learn\random>type test1.cpp
#include <random>
#include <iostream>
using namespace std;
int main()
{
random_device d;
cout << d() << endl;
cout << d() << endl;
cout << d() << endl;
}
D:\learn\random>g++ test1.cpp
D:\learn\random>a
3499211612
581869302
3890346734
D:\learn\random>a
3499211612
581869302
3890346734

462:デフォルトの名無しさん
19/03/09 16:56:58.38 kfZA3URW.net
STLがクソすぎ

463:デフォルトの名無しさん
19/03/10 06:26:32.12 gKFy67J4.net
msys2のスレないのね

464:デフォルトの名無しさん
19/03/10 12:24:46.05 yzd/Af8M.net
>>461
MinGWはmt19937を使うと書いてあるぞ。

465:デフォルトの名無しさん
19/03/10 13:13:05.02 uE8BPcgQ.net
それじゃ意味ねえだろって話
mt19937のseedを作るのにmt19937を使ったらアホだろうが

466:デフォルトの名無しさん
19/03/10 13:16:07.39 yzd/Af8M.net
>>465
でも規格上実装依存ってことになっていて、実装が疑似乱数だと明示しているのだから、避けるのは利用者側の義務になるのでは。

467:デフォルトの名無しさん
19/03/10 13:16:49.38 yzd/Af8M.net
素直にVC++使えってことではないだろうか。

468:デフォルトの名無しさん
19/03/10 15:05:41.26 uFsYqTSV.net
疑似乱数よりμs取る方がまし

469:デフォルトの名無しさん
19/03/10 15:06:05.60 uFsYqTSV.net
ごみん
μsだと一緒になるわ
nsでどうかひとつ

470:デフォルトの名無しさん
19/03/10 16:47:30.29 frDbeikI.net
seedはプロセスid と スレッドid の組み合わせのほうがよくない?

471:デフォルトの名無しさん
19/03/10 17:02:17.41 8+bEWcYF.net
ダメだこりゃ
話が通じてない

472:デフォルトの名無しさん
19/03/10 18:10:59.99 uFsYqTSV.net
どうせmt使うんだからseedさえ適当に変更掛かるものなら何でもいいっしょ

473:デフォルトの名無しさん
19/03/11 09:07:42.73 SMAjCV/D.net
>>461
std::random_device::entropy()を表示させてみ
これで 0.0 が帰る場合は毎回同じ値が帰るから
VCはプロセスIDをうまく使ってrandom_deviceを実現してるようだな
MinGWは駄目だよ

474:デフォルトの名無しさん
19/03/11 10:51:55.12 rOT48PNA.net
え、VCってCryptGenRandomを使ってないの?

475:デフォルトの名無しさん
19/03/11 11:06:23.25 XA5PtgcF.net
rand_s()、rtl_gen_random() とかいうAPIでしょ。

476:デフォルトの名無しさん
19/03/12 23:00:09.93 QpdsgiSbW
結局、GCCではseedにタイマつかわなくちゃいけないんだよね。

chrono使うの面倒だよな。単純にCのタイマ関数使うか。

477:デフォルトの名無しさん
19/03/18 05:02:59.47 P9Yklj5G.net
Cでgets_sコンパイルするとエラーになるんだけど
通す方法ってないすか

478:はちみつ餃子
19/03/18 14:59:42.06 YfgH0B4l.net
>>477
gets_s は C11 から導入されたので C11 を有効にするオプション (-std=c11) を付ければいいんじゃね?

479:デフォルトの名無しさん
19/03/18 17:10:19.96 yKiI4G/I.net
C11はこのあとC2aとか出るのかねえ

480:デフォルトの名無しさん
19/03/19 22:39:22.82 5qst9NFY.net
>>478
わたしはぜひそれをしたいと思っていますがBasic Setupのツリーからその項目を見つけることができません
どこにあるのでしょう><

481:デフォルトの名無しさん
19/03/19 22:54:37.22 5qst9NFY.net
>>478
あ、もしかしてそれってターミナルでコンパイルするときに
gcc -std=11 hoge.cとやれということでしょか?だとしたら死にたい…

482:はちみつ餃子
19/03/23 17:33:03.74 ByL/s3eU.net
MSYS2 環境 (32bit) で Guile を実行するとライブラリのプリコンパイルが
始まってなかなか終わらないし、終わってから再度実行するとまた最初
から始まってしまう。
パス変換の考慮ミスで既にあるプリコンパイル済みライブラリを見つけらない (?) っぽい
報告もあるんだけど、これってどうにもならない?

483:デフォルトの名無しさん
19/03/23 18:17:20.21 iMO+WCpL.net
ダミーで ./c/hoge -> /c/hoge みたいなリンク作って path に追加したら?

484:デフォルトの名無しさん
19/04/10 07:27:34.52 qyNiIlQC.net
Windows 8.1 64bit 上で
>set | findstr PATH > c:\tmp\PATH.txt
>set | findstr Path > c:\tmp\Path.txt
したらファイル1つしか残らなかっただ…。
LFN でも大文字小文字区別せんのか…
Windows10 だと違うのか

485:デフォルトの名無しさん
19/04/10 07:35:50.12 qyNiIlQC.net
chcp 65001
するのって常識???

486:デフォルトの名無しさん
19/04/10 10:38:27.98 g9h2j5fz.net
chcp 65001 はバグだらけだから今はしないのが常識

487:デフォルトの名無しさん
19/04/10 11:57:36.05 ctVOU6iK.net
>>484
grep -ir "abc" ./*
grep でも使えば?
i は、大文字小文字を区別しない。
r は、ディレクトリを再帰的にたどる

488:デフォルトの名無しさん
19/04/12 02:01:09.38 K5RuTlhq.net
test

489:デフォルトの名無しさん
19/04/12 02:02:22.10 K5RuTlhq.net
cp932でgcc-8.2.0がコンソールを深紅に染めない環境はありますか

490:デフォルトの名無しさん
19/04/12 02:03:18.43 K5RuTlhq.net
findstr /I
で case insensitive 処理が出来るようですね

491:デフォルトの名無しさん
19/04/12 02:03:48.55 K5RuTlhq.net
いずれも環境はWindows8.1 64bitです

492:デフォルトの名無しさん
19/04/17 09:23:22.24 LMpL5fl6.net
mingw-w64-x86_64- が頭についてるGUIソフトってXなしで動くのですか?
また、これが頭についていないパッケージってなんのために存在するのですか?

493:デフォルトの名無しさん
19/04/17 09:52:22.56 vaxiFaLk.net
名前はなんでもいいが、mingwをつかって直接windows api呼んでりゃXなしでうごく。あとQtとか使ってるのもあるじゃろう。
公式のパッケージは全部同じ命名なんじゃないか?なんか管理用のファイルとか?

494:デフォルトの名無しさん
19/04/17 10:10:51.07 RU1ct6Mv.net
qt-5.12.2ならMinGWのgcc-7.3.0を入れられる
g++ & qtで書ける

495:デフォルトの名無しさん
19/04/17 10:14:46.50 RU1ct6Mv.net
<私見>
qt charts ブチ込んでも、qt-5.12.2なら問題はリバースエンジニアリング関連にとどまる
なぜなら、qt chartsをインストール対象としてチェックしたうえでインストーラを進めても、
ライセンスとしてLGPLが選択可能で、GPLv3が要求する "displays an appropriate copyright notice" を満たさずGPLv3の適用を主張できないから
</私見>
正確なところは弁理士または弁護士に確認されたし
IPAの逐条訳が参考になるかも

496:デフォルトの名無しさん
19/04/17 10:35:09.65 4gj66k19.net
>>493
例えばEmacsは両方あります

497:デフォルトの名無しさん
19/04/17 21:22:11.34 9Q2ukeRT.net
msys用でしょ

498:デフォルトの名無しさん
19/04/18 17:45:20.57 T5E1BM4x.net
>>493
最初は意味が分からなかったんだけど、unix(っていうかLinux系かな)と同じGUIツールは
X11なしでも動くのなんでかなって話かな
これは>>493が書いているようにGUIの表示にX11を使っていなくてWindowsで表示可能な
GUIシステム(例えばmingw用のQtとか)で組まれているならば当然X11は必要ない
逆にX11ベースのxtermコマンド(あるならば)はX11サーバがないと表示できない
「mingw-w64-x86_64-」っていうのはマルチプラットフォーム/マルチアーキテクチャに
対応しているアプリケーションでプラットフォームやアーキテクチャをを表している
例えば「gcc」は「mingw」や「linux」といった複数のプラットフォームで「x86」や「arm」など
複数のアーキテクチャに対応している
なのでこの「gcc」は「64bit Windows」の「mingw」で「x86」系のCPUで動く「64bit」CPUで
動くよって意味で「mingw-w64-x86_64-」という接頭語みたいなのが付けられている
ただし接頭語が付いたままだと使うときにユーザーが一々プラットフォームとアーキ
テクチャを意識しなければならないし、configureみたいにその辺を自分で解決できる
スクリプトとかアプリケーションでないと一般的なコマンドとして使用出来ないので接頭語
なしのコマンドが用意されている
Linuxの場合には複数バイナリを用意するのは無駄なので接頭語つきのコマンドに
シンボリックリンクされた接頭語なしコマンド名が作られているけど「MSYS」みたいな
Windows上で動作する環境の場合シンボリックリンクに対応していないので同じバイナリが
2つあるような感じで実装されてたりするって感じかな

499:デフォルトの名無しさん
19/04/19 16:30:35.71 kPHA0zLK.net
>>498
違います

500:デフォルトの名無しさん
19/04/19 17:02:11.09 dBiDFHmq.net
emacsはX Window System必須ではなかったような気もするし今は違うのかも知れないし何とも

501:デフォルトの名無しさん
19/04/19 17:21:27.71 jGjLpvIL.net
windowsではcygwinのやつ使っとるよ。
msys2/mingwはいまいち信用できん。
なんにせよXは不要だよ

502:デフォルトの名無しさん
19/04/19 20:44:01.33 Cry1IFM3.net
cygwinのはXlibリンクしてるんじゃない?

503:デフォルトの名無しさん
19/04/22 22:01:05.02 dWmpunjw.net
>>502
嘘はよくない

504:デフォルトの名無しさん
19/04/23 00:42:18.05 YVNM1Id6.net
emacs-X11とemacs-w32があるから嘘でもない

505:デフォルトの名無しさん
19/04/23 01:02:36.94 mPLR84qw.net
まだastec-xとか売ってるんですね

506:デフォルトの名無しさん
19/05/02 21:24:20.65 qbL1jEY8.net
valgrind みたいにアクセス違反検出する仕組で msys2 上で使えるものってあります?

507:デフォルトの名無しさん
19/05/08 17:58:41.57 jUoRAJVn.net
>>506
ないですね

508:デフォルトの名無しさん
19/05/21 22:53:35.55 5dr0Nkwr.net
>>506
ありますよ

509:デフォルトの名無しさん
19/05/22 01:15:47.82 zrih+ccQ.net
Windows 上で g++ & qt ってどのくらいメジャーなのかな
とりあえず「オレオレコード」書くなら C++11 とかかいな
GCの仕組みとか全く知らんけど
「適切なC++11の教科書などない!」という話もあるけど
Python 使え?

510:デフォルトの名無しさん
19/05/22 11:00:03.94 1OSMRbFi.net
C++11 なんてオワコンだからやめとけ

511:デフォルトの名無しさん
19/05/22 17:17:32.49 qHBIaGAD.net
>>509
話もあるけどね

512:デフォルトの名無しさん
19/06/03 06:28:27.40 +7d3cfJz.net
ふう😎

513:デフォルトの名無しさん
19/06/13 16:59:54.42 /0Hvd4dT.net
cygwin に apt-cyg find R したら Rがあった(長らくこれはなかった)
感動的だ
ようやくWindowsの上でもスタート地点に立った

514:デフォルトの名無しさん
19/06/13 19:08:21.05 t/TgILxI.net
いまから C++ (and qt) をゼロから習得するなら
基本的には C++17 レベル???
URLリンク(cpprefjp.github.io) みたかんじ
殆ど実装されてるっぽい???

515:デフォルトの名無しさん
19/06/13 22:37:36.09 tYlssfYj.net
ものすごい今さらな質問なんだが・・・
Cygwin て何て発音するんだ?サイウイン?
まわりに使ってるやつ1人もいないから実際に発音することがなくて困る

516:デフォルトの名無しさん
19/06/13 22:43:02.73 C6mR/1ai.net
>>515
URLリンク(ja.wikipedia.org)

517:デフォルトの名無しさん
19/06/13 23:07:55.81 rmSOkmKf.net
まじかよ・・人前で発音してなくてよかった

518:デフォルトの名無しさん
19/06/14 00:04:54.99 7DXJVUad.net
cygnusはキグナスだった?
mingwがむしろ困るよな

519:デフォルトの名無しさん
19/06/14 11:01:55.94 YE54Q2cv.net
みんじーだぶる

520:デフォルトの名無しさん
19/06/14 11:06:24.98 LY52/qBF.net
みんぐうじゃないのか

521:デフォルトの名無しさん
19/06/14 12:20:34.75 5t0rLbyA.net
cygnusは英語では、「シグナス」です。
むかし、Cygnusと云う商標で、「キグナス石油」という会社が
あったので、Cygnusを英語読みで[シグナス」ということを
知らないで、、「キグナス」と読んだりするみたいです。
ちょっと、きになったら、『英和辞典」を引いてみるとよいでしょう。

522:デフォルトの名無しさん
19/06/14 12:26:57.67 YE54Q2cv.net
ジョアンとフアンとジョンとジャンと…
カルロスとチャールズとシャルルと…
ジョージとホルヘとゲオルクと…

523:デフォルトの名無しさん
19/06/14 12:28:33.37 7fHAKBFE.net
>>521
英語しかできないってこと?

524:デフォルトの名無しさん
19/06/14 12:47:10.03 bpAwmG5b.net
ペーターピーターピョートル
シーメンスジーメンス
ジャーマンゲルマンドイツドイチュ

525:デフォルトの名無しさん
19/06/14 19:09:25.40 YE54Q2cv.net
英語読みにこだわるなら
Linux は「らいなくす」か

526:デフォルトの名無しさん
19/06/14 23:28:44.92 5t0rLbyA.net
フランス語は
cygne
で、cygnusとは違います。
ラテン語は、英語と同じ
cygnus
です。

527:デフォルトの名無しさん
19/06/15 00:44:39.57 Dx2Qxwyp.net
>>521
URLリンク(ja.forvo.com)
こうか

528:デフォルトの名無しさん
19/06/15 11:12:22.87 Z5/LYv7k.net
Cognac
Tough
Lamborghini
を思い出す

529:デフォルトの名無しさん
19/06/20 22:49:09.67 saP3r1IF.net
クンタッシ

530:デフォルトの名無しさん
19/06/22 19:12:03.45 UYyu+IU/.net
>>528
ぶぁーか

531:デフォルトの名無しさん
19/06/23 05:49:44.99 g5igmDJr.net
MinGW更新が滞っています

532:デフォルトの名無しさん
19/06/24 05:27:39.62 bdPLxrDs.net
>>531
MinGW-W64 project のやつは滞ってるけど、
MSYS2 project のやつ(pacmanで入れるやつ)は滞ってないよ(9.1.0)。

533:デフォルトの名無しさん
19/06/24 12:32:30.26 INmKbVms.net
msys2もWSL2で役目終了かな

534:デフォルトの名無しさん
19/06/24 16:47:30.43 Qf6r6oPW.net
そして焼け野原

535:デフォルトの名無しさん
19/06/25 20:17:15.80 Cgc4J/db.net
>>534
一言余計なんだよカス

536:デフォルトの名無しさん
19/06/25 20:43:23.33 mNuvBnC/.net
効いてるw

537:デフォルトの名無しさん
19/06/25 21:35:27.64 0CG+TeYQ.net
URLリンク(gcc-mcf.lhmouse.com)
ここちゃんとチェックしてるか?9.1.1まで出てるぞ

538:デフォルトの名無しさん
19/06/26 01:21:30.62 uaiF8BI0.net
>>537
普通チェックしないし使わない

539:デフォルトの名無しさん
19/07/02 16:03:24.73 +WA62fsw.net
>>538
効いてるw

540:デフォルトの名無しさん
19/08/05 11:53:08.29 r6BvniMN.net
clang で良いんじゃないの? Google もGCC からclang に切り替えたし。

541:デフォルトの名無しさん
19/08/13 11:23:23.39 5isOnGEb.net
gcc-9.2

542:デフォルトの名無しさん
19/08/14 15:59:31.43 cSlSK8mm.net
> warning: hoge.hpp.gch/fuga.gch: had text segment at different address
9.2でこんなエラーが出るようになってPCHが効かない。ビルド時間が3倍に。
> cc1plus.exe: warning: '-Werror=' argument '-Werror=hoge-fuga' is not valid for C++
あとこんな警告が大量に出るようになって邪魔。

543:デフォルトの名無しさん
19/08/20 15:18:40.97 4DZMx7ke.net
MinGWで作ったバイナリ、コマンドプロンプトで実行するとすごい遅い
一回実行するとキャッシュでもされるのかそれ以降の実行はわりと速い
ひどいときはプロセス間通信を使ってるバイナリで実行から終了まで7秒とかかかったりする
Gitとかはコマンドプロンプトで実行してもすぐに実行されるんだけど、何が違うんだろう
ウィルスソフトのリアルタイムスキャンに時間がかかってるのかと思って、問題のバイナリの除外設定とかしてみたけど、効果なかった
問題のバイナリはプロセス間通信を使ってるから、このプロセス間通信がボトルネックになってるのかなぁ
WindowsのCreateProcessはLinuxのforkに比べるとめちゃくちゃ遅いらしいし

544:デフォルトの名無しさん
19/08/20 15:20:15.93 zlJnj2O9.net
cmd からじゃなくて mintty から実行しても遅いか?

545:デフォルトの名無しさん
19/08/20 15:35:04.29 4DZMx7ke.net
>>544
試してないけど試してみます

546:デフォルトの名無しさん
19/08/20 15:50:21.30 KG2FXNu0.net
mkpasswdとかmkgroupとかやっとかないとあかんのじゃなかったっけ

547:デフォルトの名無しさん
19/08/20 17:27:25.95 4DZMx7ke.net
>>544
mintty, MSYSでは動作が速かったです
cmd特有の「初回起動だけ遅い」というのはありませんでした
powershellでも試してみます
>>546
cmdでも実行は出来てるんですが、なんか初回実行だけ遅いんです
初回以降は速くて、しばらく放置してまた実行すると遅くなってます

548:デフォルトの名無しさん
19/08/20 17:37:17.04 zlJnj2O9.net
キャッシュしてるとしたら socks の dll かな

549:デフォルトの名無しさん
19/08/20 17:51:30.05 ITb7FkqQ.net
ログ吐かせてどこにネックがあるのかみてみないと

550:デフォルトの名無しさん
19/08/21 17:19:04.83 iGK2Kp/R.net
雑な事いえばminttyやMSYSを起動すると、起動した時点でMinGWのdllが
読み込まれるのでコマンド起動遅くならないのでは

551:デフォルトの名無しさん
19/08/21 17:33:03.25 ur92HW83.net
それならそれで解決とするか

552:デフォルトの名無しさん
19/08/21 23:34:12.77 L4bPYRCx.net
dllの読み込みに時間かかってるってことですか
なるほど
ということはMinGWでコンパイルしたバイナリ全般に現れる問題っぽいですね

553:デフォルトの名無しさん
19/08/22 04:38:34.97 Rc8J28Ob.net
コマンドプロンプトで実行するようなプログラムは
Windowsネイティブアプリにしろよw

554:デフォルトの名無しさん
19/08/22 05:37:28.68 rzNCVH2V.net
MinGWで作ったら余程変態技を使わない限りWindowsネイティブアプリ

555:デフォルトの名無しさん
19/08/22 06:10:29.02 dqAPG5D5.net
>>553
最初はLinuxで開発してて、それからWindows用に移植したんですよ
で、MinGWが手軽だったからMinGW使ってたんだけど

556:デフォルトの名無しさん
19/08/22 10:15:45.06 xQsiKIbM.net
そんな用途には tdmgcc64 おすすめ

557:デフォルトの名無しさん
19/08/23 03:35:27.20 jZ19Qjup.net
ググっても一件しか出なかった
gccなのはわかる

558:デフォルトの名無しさん
19/08/23 15:09:01.75 Zx6EO+xk.net
これやろ
URLリンク(ja.wikipedia.org)
URLリンク(tdm-gcc.tdragon.net)

559:デフォルトの名無しさん
19/08/23 18:17:23.56 jZ19Qjup.net
>>558
おお、ありがとう
ダウンロードしてみる

560:デフォルトの名無しさん
19/08/23 18:24:15.33 aZS2aOxa.net
今はこっちが良くね
URLリンク(text.baldanders.info)

561:デフォルトの名無しさん
19/08/24 06:55:34.51 Glqz8i+r.net
TDM-GCCでビルドしたら遅いの無くなったかもしれない(*´Д`)!!!
>>556
>>558
もう少し様子見るけど、まじでありがとう
>>560
これはMinGWとは違うの?

562:デフォルトの名無しさん
19/08/24 09:36:31.35 u2q8uNB0.net
staticになってるだけというオチだったらわろす

563:デフォルトの名無しさん
19/08/24 14:59:08.43 H4K4vAej.net
ただ単に -static -O3 -mtune=skylake を指定していないだけ
じゃねえだろうな?

564:デフォルトの名無しさん
19/08/24 17:29:38.98 Glqz8i+r.net
staticオプションは特に指定しませんが……
dllの読み込みが原因だとしたらstaticにすれば解決という話ですか
そういう発想はなかった
>>563
--mtune=skylakeってなんですか?

565:デフォルトの名無しさん
19/08/24 17:48:35.57 u2q8uNB0.net
DLLよりstaticが速いとか都市伝説

566:デフォルトの名無しさん
19/08/25 16:54:37.16 z6AAmiat.net
>>564
-O3はコードの最適化を3レベル(あるいはタイプ3)で行う
実際に何を行っているかはコンパイランの説明を読まないと分からない
-mtune=skylakeはコードをIntel CPUのSkyLakeアーキテクチャで最適な形にする
どちらも記述したコードを実行形式にするときに最適化を行うオプションなので、
非常に大きなコードを書いた際や似たような処理を繰り返すコードを書いている際に
指定すると早くなる事もある(ライブラリに含まれるコードは最適化されない)
>>565
都市伝説ってこともない
関数A、B、C、Dが含まれるライブラリlibhogeが存在する場合、自分のプログラムで
関数BとDだけを使っていると、ダイナミックリンクの場合自分のプログラムの実行
コードに加えてすべての関数が含まれるlibhoge.dll全体を読み込む必要がある
スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した
関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが
早くなる可能性は高くなる
ただし、実際問題としてはdllを一回読み込めばキャッシュからなくならない限り読み込む
必要がない+Windowsのプログラミングで使用するライブラリで基本的なものは通常
システムを起動した時点でキャッシュされていることに加えて、Windowsでプログラムを
動かすために必要な関数郡はかなりの量になる事が多いのでスタティックにリンクすると
すでにキャッシュされている関数郡を使わずに、必要な関数郡を含んだ大きなコードを
読み込む必要があるのでスタティックリンクの方が起動が遅くなるって本末転倒な事態が
発生することもある
MinGWの場合にはWindows一般では使わないライブラリを使用するので1回目の
起動時には必要なdllを読み込むよりは、必要な関数のみをリンクしたスタティックな
状態の方が早い場合があるかもってこと

567:デフォルトの名無しさん
19/08/25 19:02:38.36 7s5pz20M.net
もっと短く

568:デフォルトの名無しさん
19/08/25 23:51:01.48 V1f8d4H1.net
>>566
ということは--static -O3 -mtune=skylakeでビルドすれば起動が早くなるかもということですか
時間があるときに試したいと思いますm(_ _)m

569:デフォルトの名無しさん
19/08/26 01:28:47.93 K2zp8I6+.net
やっぱり名前解決の問題が大きいんすよ
ライブラリの読み込みだけでは説明できない

570:デフォルトの名無しさん
19/08/26 14:11:24.03 T0vtMl8v.net
>スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した
>関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが
これ関数単位でソース分けてあって
一関数が一objになってる場合だけだよな

571:デフォルトの名無しさん
19/08/26 14:11:24.09 T0vtMl8v.net
>スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した
>関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが
これ関数単位でソース分けてあって
一関数が一objになってる場合だけだよな

572:デフォルトの名無しさん
19/08/26 17:43:39.53 eYWa871J.net
dll読み込みってそんなに重いかな?
なんか別のところで時間がかかっていそうな感じ。

573:デフォルトの名無しさん
19/08/26 21:44:29.54 CEMf0Y7L.net
>>570-571
MinGWの場合はそうかな。確かMinGWでは--gc-sectionsが効かなかったかと。
LTOで未使用関数が除去されるかもしれないけどバグが多いので試してない。

574:デフォルトの名無しさん
19/08/27 05:30:30.81 FSIINwco.net
>>568
でビルドしてみました
様子見します
-O3は、前にビルドしたときにプログラムがうまく動作しないことがあったんですよね
-O0にすると正常に動作したんですけど

575:デフォルトの名無しさん
19/08/27 09:41:49.02 NZJyfwBK.net
-O3に完璧を求める方が可笑しい

576:デフォルトの名無しさん
19/08/27 11:08:45.95 NDEdv6OD.net
そこで-Ofastですよ

577:デフォルトの名無しさん
19/08/27 12:32:02.21 j4wzaSFP.net
-O3と-O0で挙動が違うのは、不定の値を使っているとか、
未規定の動作に依存しているとか、そういう系だぞ
まれにコンパイラのバグということもあるが大抵てめーが悪い

578:デフォルトの名無しさん
19/08/28 17:10:08.53 w9RtsrXP.net
VCで造られたdllをmingwのgccで使いたいです
hoge.dll と hoge.lib は有るのですが
libhoge.a がありません
あと hoge.c とかのソースファイルもありません
hoge.def は hoge.dll から作れるのですが
hoge.lib から libhoge.a を作るのはどうすればよかったか思い出せません

579:デフォルトの名無しさん
19/08/28 17:25:07.66 iAy2zRVx.net
URLリンク(stackoverflow.com)
dlltool.exe -m i386:x86-64 -d libhoge.def -D hoge.dll -l libhoge.a
dlltool.exe -m i386 -d libhoge.def -D hoge.dll -l libhoge.a
しらんけど

580:デフォルトの名無しさん
19/08/28 17:45:16.06 4qorfKL6.net
実際parallelstlをコンパイルするのはVCの方が楽だしな
これを.aに変換したいと思っていたのでありがたいです

581:デフォルトの名無しさん
19/09/03 16:24:26.27 fy59PR5b.net
9.2.0 Rev2 でPCHのエラーが出なくなった。

582:デフォルトの名無しさん
19/09/13 12:46:20.65 wKEqF87n.net
本物のWInネイティブアプリの起動はもっと速いのかもしれません。
MinGW+MSYS2がCygwinより速い理由が釈然としませんが、
forkがCygwinのものまんまよりは多少軽量だったりするんだろうか
URLリンク(twitter.com)
(deleted an unsolicited ad)

583:デフォルトの名無しさん
19/09/13 12:48:07.35 wKEqF87n.net
ビルド環境のまとめ
URLリンク(i.loveruby.net)
URLリンク(i.loveruby.net)

584:デフォルトの名無しさん
19/09/13 13:01:11.82 hxTRiT39.net
mingwはその本物のネイティブとちゃうか

585:デフォルトの名無しさん
19/09/13 15:13:51.93 ud7Tmahn.net
cygwin の fork = native じゃなくて emu
mingw の fork = あるんか?

586:デフォルトの名無しさん
19/09/13 16:40:00.05 08rV0d8/.net
MinGW+MSYS2がCygwinより速い理由は
Cygwinはたとえ遅くなろうとも完璧なエミュレートを目指してるのに対して
MinGW+MSYS2は目指してないから

587:デフォルトの名無しさん
19/09/13 18:56:41.57 2jKM3FP9.net
MSYS2は、Windowsネイティブアプリを作るための環境です。
Windowsネイティブアプリを作りましょう。

588:デフォルトの名無しさん
19/09/13 19:47:41.41 +NnovRbX.net
>>586
どういうことなの…

589:デフォルトの名無しさん
19/09/14 10:05:32.62 NwEptffo.net
fork の歴史 (windows の fork 含む)
URLリンク(www.eelsgo.com)
URLリンク(support.microsoft.com)

590:デフォルトの名無しさん
19/09/14 10:32:34.60 NwEptffo.net
なぜ今 fork が熱いのか
スレリンク(linux板)

591:デフォルトの名無しさん
19/09/14 11:49:59.95 mIZ3m5oP.net
URLリンク(www.kobore.net)
URLリンク(www.kobore.net)
URLリンク(books.google.co.jp)

592:デフォルトの名無しさん
19/09/15 06:58:43.73 zbVYZgVB.net
>>589
むりぽ
URLリンク(social.msdn.microsoft.com)

593:デフォルトの名無しさん
19/10/02 07:41:31.63 WxowMW3Q.net
GMPって真面目にソースtarからビルドするしかないの? ビルド済みのバイナリですぐ使えるのがあれば欲しいんだけどcygwinのインストーラでチェック入れてもダメで、なんじゃこりゃってなってるんだけど。

594:デフォルトの名無しさん
19/10/02 11:20:07.41 55+aQRnY.net
URLリンク(stackoverflow.com)
URLリンク(7shi.hateblo.jp)
URLリンク(cs.nyu.edu)

595:デフォルトの名無しさん
19/10/02 11:46:15.82 55+aQRnY.net
4.1.2 は解決

596:デフォルトの名無しさん
19/10/02 12:47:35.09 pQm6Lk8A.net
>>594
どうでもいいことだが Stack Overflow のURLは削れる。
build - Are there any recent GMP Windows binary distributions? - Stack Overflow
URLリンク(stackoverflow.com)

597:デフォルトの名無しさん
19/10/02 12:53:13.99 55+aQRnY.net
どうでもいいことだが thx
URLリンク(stackoverflow.com)

build - Are there any recent GMP Windows binary distributions? - Stack Overflow
URLリンク(stackoverflow.com)
では前者の方がバイト数は少ない

598:
19/10/19 01:49:14 US3VZtYL.net
msys2のpacmanでfdupesがないんですけど、どっからか手に入りますか?

599:593
19/10/19 15:58:06.55 US3VZtYL.net
arch linuxので解決

600:デフォルトの名無しさん
19/11/10 23:46:15.76 vZIjc/J6.net
長期間更新がありませんが何か支障があるのでしょうか・・

601:デフォルトの名無しさん
19/11/14 16:18:35.97 m0xrmwtq.net
>>600
あるよ

602:デフォルトの名無しさん
19/11/15 14:11:12.27 L6hfSVpN.net
>>600
ないない

603:デフォルトの名無しさん
19/11/15 20:34:54.04 cedqxdDY.net
ないあるよ

604:デフォルトの名無しさん
19/11/15 23:50:32.38 z3wd5lUW.net
WSL使ったら?

605:デフォルトの名無しさん
19/12/23 02:13:46 IO6RyZUn.net
Cygwin って /cygdrive上ではディレクトリまたげないんだけど、これってそんなもんだったっけ?


かなり久しぶりにCygwinを使おうとしているのだが困っている。
ディレクトリ構成 D:\DEV\debug で
下のディレクトリから上のディレクトリのファイルをコピーする、以下のコマンドが通らない。

MyMachine@MyName /cygdrive/d/dev/debug
$ cp ../some_file .

ディレクトリまたげないんだけど、こんなんだったっけ?
なお / をバックスラッシュにしても駄目。
なお/home以下のディレクトリならこれらのコマンドは通る。あまり試していないが、おそらく、/cygdrive以下だけ駄目。

何か設定がおかしい?それともこんなものだったっけ?
なお今のところディレクトリをまたげないだけでカレントについてはコマンドは通る。

606:デフォルトの名無しさん
19/12/23 02:30:38 IO6RyZUn.net
>>605
すまぬ自己解決した。
debugがシンボリックリンクだったorz

607:デフォルトの名無しさん
19/12/23 12:40:57.34 sEnpgkKc.net
もちつけ
他人のせいにする前に自分を疑え

608:デフォルトの名無しさん
19/12/23 12:45:36.48 CGg4xw4r.net
自分を疑う自分を疑え

609:デフォルトの名無しさん
19/12/23 13:59:53.49 IO6RyZUn.net
>>607
それはそうだが普段シンボリックリンクである事なんて意識しないからな。
いまだにcygwinではNTFSのシンボリックリンクを辿れないのはしょぼいと思うが。
なお32bit版。bashはversion4.4.12(3)、cygwin1.dll はversion 3001.2.0.0
(昨日の時点でsetup.exeを使いBestに更新)
64bit版なら行けるのかも?誰か動作報告よろしく。

610:デフォルトの名無しさん
19/12/23 14:06:09.78 sEnpgkKc.net
NTFSのリンクはシンボリックリンクではないでしょ

611:デフォルトの名無しさん
19/12/23 14:48:39.41 Losi+wwQ.net
シンボリックリンクあるよ、ジャンクションじゃないやつ

612:デフォルトの名無しさん
19/12/23 15:26:21.18 IO6RyZUn.net
>>610
シンボリックリンクはSever2008/Vistaから導入された。もう10年以上前になる。
URLリンク(www.atmarkit.co.jp)
つかお前、このレベルの話を知らないでその言い草は完全に老害化してるぞ。

613:デフォルトの名無しさん
19/12/23 15:39:18.43 Losi+wwQ.net
mklink /? で普通に表示されるのに
それすらやったことないのか?

614:デフォルトの名無しさん
19/12/23 15:40:22.34 Losi+wwQ.net
共有フォルダ作るときなんか
シンボリックリンクとジャンクションの違いを知らないと困るだろうが

615:デフォルトの名無しさん
19/12/23 15:41:13.85 sEnpgkKc.net
みなさん思いのほか親切ですね

616:デフォルトの名無しさん
19/12/23 15:47:56.41 nbY+qllN.net
>>609
シンボリックリンクもジャンクションも辿れるし、環境変数の設定(CYGWIN=winsymlinks:nativestrict)によってはln -sやtarの展開でNTFSのシンボリックリンクができる
NTFS側でD:とかをリンク先にしても、勝手に/cygdrive/d以下に読み替えてくれる
cygdrive以下だけ動かないなら、/etc/fstabの設定がおかしいとか?

617:デフォルトの名無しさん
19/12/23 15:48:24.03 sEnpgkKc.net
だけどシンボリックリンクωを名乗ってるだけでシンボリックリンクではないですねこれ

618:デフォルトの名無しさん
19/12/23 15:52:08.05 Losi+wwQ.net
難癖つけたいんなら、具体的に問題を指摘しろや

619:デフォルトの名無しさん
19/12/23 15:54:08.35 qAO2lZtX.net
Windowsには
1.ハードリンク
2.ジャンクション
3.あほなシンボリックリンク
4.だるいシンボリックリンク
がある

620:デフォルトの名無しさん
19/12/23 16:12:25.30 IO6RyZUn.net
>>616
すまんが、/cygdrive以下だけ動かない、というのは間違いだった。
動作としては、シンボリックリンクを辿ることは出来るが、戻れない、というものだ。
本来はシンボリックリンクはカレントと共に使用される。
つまりD:/dev/debugがシンボリックリンクでそこにD:/devからcdして入ったら、 cd .. だとD:/devに戻って来れないといけない。
(シンボリックリンク先に入った時の元に戻る。他から入ったらそこに当然戻る)
これが出来ておらず、debugしかないディレクトリ(というものを作って渡しているのだと思う)に戻ってしまう。
だから下から上が参照出来ない。上から下は参照出来るし、
下から上でも自分に戻ってくるのなら参照出来る。(言葉だと分かりにくいが要するに以下が通る)
MyMachine@MyName /cygdrive/d/dev/debug
$ less ../debug/some_file
下から上でもファイル名の補完は出来るのでbash自体は動作してる。
なお cd ../.. とシンボリックリンクを跨いで2つ上がることは可能。
cdってbashのコマンドだっけ?だとして、やはりbash自体は動作してる。
bashから各アプリに渡す時に失敗しているか、cygwin1.dll自体が対応してないか、だと思う。
バグ報告してもいいけど、それ以前に64bit環境の動作を確かめてからでないとウザがられる。
というわけで普段から64bit環境で使っている人がいたら試してみてくれ。

>>617
いや完全にシンボリックリンクだよ。
ln -s と使い勝手は同じ。

621:デフォルトの名無しさん
19/12/23 16:26:38.22 CGg4xw4r.net
cygwinはもう永眠させてやれ
WSLに乗っ取られた

622:デフォルトの名無しさん
19/12/23 18:46:28.73 wtBUbgEZ.net
>>617
黙れ!

623:デフォルトの名無しさん
19/12/23 22:27:33.69 nMe23UdH.net
>>620
何をしようとしているか大体分かった。
・/cygdrive/d/dev/debug はシンボリックリンクで /cygdrive/d/test/debug を指すと仮定
・/cygdrive/d/dev/some_file があると仮定
このとき
・まずcd /cygdrive/d/dev/debugする
・次にcp ../some_file .するとファイルが無いと言われる
ということだと思う。もしそうならそれがUNIX系では普通。LinuxやMacでもそうなる。
これは、cdした時点で既にカレントディレクトリが/cygdrive/d/test/debugに移っているからで、cpは/cygdrive/d/test/some_fileを読もうとしているために起こる。つまり
>本来はシンボリックリンクはカレントと共に使用される。
がUNIX的には正しくない。
実際の挙動としては、
・UNIXの場合、カーネル的にはカレントディレクトリはあくまでもディレクトリで、シンボリックリンクをパスの途中に含むことはできない
・cd ..でもといたディレクトリに戻るのはbashがシンボリックリンクを本当のデイレクトリのようにエミュレーションしているから(set -Pで切れる)
・これは基本的には内部コマンドのcdやpwdに対してのみできることで、外部コマンドのcpやlessに対してはできない(引数の..が親ディレクトリの意味になるかはコマンドに依存するから、シェルが勝手に置き換えられない)
・シェルはPWD環境変数にシンボリックリンクを含むロジカルなカレントディレクトリを出力するので、これを見るようにすれば原理的には外部コマンドもエミユレーションに対応できる(危なっかしいので普通はしない)
WindowsのシンボリックリンクはUNIXと違ってOS自体がシンボリックリンクを含むカレントディレクトリを扱っているようだが、CYGWINはUNIXに合わせていると考えられる。

624:デフォルトの名無しさん
19/12/23 23:39:27.27 IO6RyZUn.net
>>623
こちらの状況は正しく伝わっており、君の言っていることも正しい。
こちらも615を書いた後、遠い昔にシンボリックリンク周りでトラブった記憶があり、
あれはなんだったかな?と思っていたところだった。
つまりbashで上手く誤魔化していてくれているわけだ。
ではtcshは?と確認したが、こちらもsymlinks変数で誤魔化し方を調整出来るようになっている。
URLリンク(linuxjm.osdn.jp)
結果、Cygwinとしては仕様通り、UNIXは糞仕様(≒仕様バグ)だな。
突っ込む必要はないと思うが、
> (引数の..が親ディレクトリの意味になるかはコマンドに依存するから、シェルが勝手に置き換えられない)
これはよく分からない。
bashがコマンドに引数を渡すときにあらかじめシンボリックリンク周りを解決していたら、どういう問題が発生する?
というかtcshだとsymlinks=expandに設定したらそうなるらしい。
今回で言えば、
MyMachine@MyName /cygdrive/d/dev/debug
$ cp ../some_file .
を cp /cygdrive/d/dev/somefile /cygdrive/d/dev/debug として実行すれば問題ないはず。
(.を展開する必要はないかもだが)
既存シェルスクリプトの互換性が無くなるだけなら仕様バグでした、残念でした、でしかなく、
後発のwindowsでは修正されているということになる。
シンボリックリンクを辿って、その上の「論理的ではない、物理的上位ディレクトリ」を辿る必要がある使い方なんて無いはず。
なお上記man of tcshのsymlinksの最後の
> > cd ".."; echo $cwd
> /tmp/from
> > /bin/echo ..
> /tmp/to ←これがよく分からん、/tmpではなくて?あるいはコマンドが .. ではなく /bin/echo . なら納得だが
> > /bin/echo ".."
> ..
分かれば出来れば解説よろしく。

625:デフォルトの名無しさん
19/12/23 23:43:56.19 gENEPh5i.net
WindowsがーではなくCygwinの問題でしょ
WindowsはWindowsの仕様でやってる。それがなんであれ正しい仕様
Cygwinがエミュレート機能をすべて行ってる
問題があるならそれはCygwinの問題
WSLならその問題も解決してるだろうさ

626:デフォルトの名無しさん
19/12/23 23:58:57.35 IO6RyZUn.net
>>625
それは違う。
Cygwinはエミュレーションレイヤーを提供しており、つまりUnixのシステムコールを受け付けているだけ。
だから仕様としてUnixと同じ動作になる。
詳しくはWikiなり本家なり読めばいい。
問題はUnixの糞仕様が今も修正されずそのままbash等で誤魔化され続け、
windowsでは修正された?為に動作が異なっている事による。
ただこれをCygwinで修正することは出来ないし、するべき事柄でもない。

627:デフォルトの名無しさん
19/12/24 00:05:26.55 8h2rOUkn.net
> Cygwinはエミュレーションレイヤーを提供しており、つまりUnixのシステムコールを受け付けているだけ。
ただしい
? だから仕様としてUnixと同じ動作になる。
○ 仕様としてUnixと同じ動作になるように目指すべきだが、できてない

628:デフォルトの名無しさん
19/12/24 00:06:45.59 8h2rOUkn.net
なんか文字化けする方法のバツを記録してるな。これでいいか?
× だから仕様としてUnixと同じ動作になる。
○ 仕様としてUnixと同じ動作になるように目指すべきだが、できてない

629:デフォルトの名無しさん
19/12/24 00:22:04.30 6GYTbaHl.net
>>625
なおWSLは理屈上はUnixの動作になるはず。
ただしbash等を見る限り既知の問題だから対策出来そうではあるが、
バイナリ互換なので現実的に無理だと思う。
(もちろんwindows専用bashを用意すればいいが、それだと既存のシェルスクリプトが動かなくなる。
といってもそれで問題が発生するような奴はWSLなんて使わずDockerだと思うが)
が、まあ、俺に関して言えば、
問題の詳細は判明し、特段問題ないから当面はCygwinを使う。

(すまんがNGに当たっているようなのでバラバラにして投稿する)

630:デフォルトの名無しさん
19/12/24 00:23:19.80 6GYTbaHl.net
(すまんがNGに当たっているようなのでバラバラにして投稿する)
>>628
> ○ 仕様としてUnixと同じ動作になるように目指すべきだが、できてない
違う。そこを目指してない。
CygwinはUnixのシステムコールをcygwin1.dllが受け付けることにより、
GNU等が書き溜めた膨大なUnix向けCソースをそのまま動作させることを目標としている。
結果、ありとあらゆるUnixのツールがcygwin上では動くので、大成功している。

631:デフォルトの名無しさん
19/12/24 00:24:32.17 6GYTbaHl.net
>>628続き
windowsのCMD。EXEのエミュレーションなんて必要ないし、目指してもいない。
本家でも読め。
そして認識も間違っている。CygwinはUnixと同じ動作になってる。つまり、「できてる」

632:デフォルトの名無しさん
19/12/24 00:29:23.48 d/S5Qnsu.net
>>624
・tcshのmanは間違っているだけだと思う。実際試したら想定通り/tmpになった。
・シェルが勝手に置き換えるべきではないというのは、単にgrep ..とかの動作が今までと変わって直感的でなくなるあたりの問題。.や..の置き換えの仕様とエスケープやクォートの仕様を十分理解すればまあそんなに困らないとは感じる。

633:デフォルトの名無しさん
19/12/24 00:49:31.91 6GYTbaHl.net
>>632
おおサンクス、手元にこなれた環境がないので助かる。
しかし今更このレベルの誤字ってあるかね?
まあtcshなんて今時誰も使ってないが、他のマニュアルもそうなってるし。
URLリンク(linux.die.net)
とはいえ実行結果がそうなのならそれが一番信憑性があるが。
Unixは今更直せないで行くのだろうけど、WSLの際にMS内部ではどうするか検討してるだろうね。
WSL推しの人はどうぞ動作報告よろしく。

634:デフォルトの名無しさん
19/12/24 15:52:35.51 IBUEMR4t.net
WSLの話題はこちらへどうぞ スレリンク(linux板)
cygwinの話題は引き続きこのスレでどうぞ

635:デフォルトの名無しさん
20/01/05 00:06:31.37 RxmL5T69.net
>>632
ばーーーか

636:627
20/02/21 14:13:26 3bMJAyBr.net
>>635
ごめんなさい。

637:デフォルトの名無しさん
20/03/07 09:24:50 6t68C04E.net
このところ、MSYS2 の pacman を実行するとエラーが出るな
サーバー不調なん?それとも pacman がバグった?
一度アンインストールして最初から入れなおしてもダメやった・・・

638:デフォルトの名無しさん
20/03/11 21:27:12.49 o+x7iIJI.net
いつの間にか直ってた
やっぱり、サーバーが不調なだけだったのか・・・

639:デフォルトの名無しさん
20/03/12 11:58:54.03 MzPDqAwN.net
自分の回線を疑う気は皆無か

640:デフォルトの名無しさん
20/03/12 19:21:51.59 TmXPZpmc.net
自分の回線だけだったら書き込まないが・・・

641:デフォルトの名無しさん
20/03/25 09:30:19 C+0WfFNh0.net
回線があまりに遅いと向こうからお断りしてくるのでは

642:デフォルトの名無しさん
20/03/28 13:48:39.21 Mtf58BEo.net
サーバー不調なだけだぞ、公式でも話題になってた
URLリンク(github.com)

643:デフォルトの名無しさん
20/04/02 18:00:43.50 1pp0Yvcl.net
今更
pacmanでfork errorでまくったので見切った。
wslでLinux入れてmingw64クロスコンパイルしている。
wslのコンソールでwindowsバイナリもそのまま動くし良い。
cygwinやmsysみたいにcygwin, msysバイナリとwindowsバイナリが混在することの混乱もないしさらに良い

644:デフォルトの名無しさん
20/04/03 04:00:25.48 FV+QUjkb.net
GCC 9.3を早く出してくれ

645:デフォルトの名無しさん
20/04/03 09:51:54 yEeayoKI.net
pacmanでfork errorの一番の解決策は
ちゃんと出てきたメッセージを読むこと
これに尽きる
638がそうなのかは知らんが

646:デフォルトの名無しさん
20/04/05 22:38:22.52 bwZ5xk1F.net
WSLよりMSYS2の方が更新早い?

647:デフォルトの名無しさん
20/04/06 09:55:13.35 m+LKHOnj.net
WSLで使うディストリビューション(ArchとかUbuntuとか)によるでしょう
共通して言えるのはLinuxではセキュリティ修正の取り込みは早い

648:デフォルトの名無しさん
20/04/06 20:27:42.43 O5iO/eDc.net
WSL は色々なディストリビューションが選べるんですね

649:デフォルトの名無しさん
20/04/19 17:57:31.18 UEW9MHEw.net
インストールしようと思ったら、このサイト3年近く更新が止まってる・・・
URLリンク(xhmikosr.1f0.de)
今入れるならどうしたらいい?

650:デフォルトの名無しさん
20/04/19 22:00:29 +AizyWB9.net
WSLがある以上、MSYSのメンテはもう廃れるだろうな。
意味ねーし。
cygwinはXのためだけに存在する

651:デフォルトの名無しさん
20/04/19 23:35:15 UEW9MHEw.net
>>650
えっ、そんなのあるの?

652:デフォルトの名無しさん
20/04/20 01:29:10 VYi0JRSU.net
そ、そんな~(´・ω・`)

653:デフォルトの名無しさん
20/04/20 04:16:21.28 DIgHaEzI.net
更新が止まってしまった

654:デフォルトの名無しさん
20/04/20 04:41:27.35 H+0bMHyU.net
>>650
cygwinは便利だ。

655:デフォルトの名無しさん
20/04/20 07:25:19 vhP2C7pa0.net
マジかよシグウィン窓から投げ捨てた
WSL派になります

656:デフォルトの名無しさん
20/04/20 08:37:44.26 iSOfvkhv.net
DLLだけで動くのが便利なときもあるが、日々の生活はWSLだね

657:デフォルトの名無しさん
20/04/20 09:12:16.95 aqwTNz7b.net
Windows 10, WSL, Ubuntu 18.04 で、
VSCode の拡張機能、Remote WSL も使う
Linux側には、日本人が作った、バージョンマネージャーのanyenv で、rbenv, nodenv を使って、
ruby 2.6.6, node 12.16.2 を入れた
yarn は、Windows側に入れて、WSL から、拡張子なしのyarn コマンドを呼べる。
これは、#!/bin/sh で始まるシェルスクリプト
anyenv は多言語向きで、rbenv, nodenv, pyenv, phpenv などを同じ使い方で、統一的に扱える。
~/.bashrc に、下の2行を追加するだけで、各言語ごとに追加しないでも良い
export PATH="$HOME/.anyenv/bin:$PATH"
eval "$(anyenv init -)"

658:デフォルトの名無しさん
20/04/20 09:13:30.71 lEczCUui.net
MSYS+MinGW、仮想マシン+Linuxって感じでWSLの入る余地がない
WSL+MinGWツールチェーンにすれば仮想マシンすら必要ないって考えもあるけど
やっぱり仮想マシンは手放せないからWindows側はMSYSでいいやってなる

659:デフォルトの名無しさん
20/04/20 10:24:18.82 HdM6J8YZ.net
>>658
同じく

660:デフォルトの名無しさん
20/04/20 13:58:21 2UEzrf8e.net
>>658
MSYS+MinGWで何作ってるの?
Windowsアプリ?

まあWindowsアプリしかないよね。
WSLはLinuxアプリを作って動かすものなので目的が違うよ。

661:デフォルトの名無しさん
20/04/20 14:00:46 2UEzrf8e.net
仮想マシンは手放せないけど、仮想マシンはほぼテスト環境になった
作ったアプリを動かすための環境

普段の開発でテストのためだけの環境を使う気にならない
起動重いしメモリ食うし

662:デフォルトの名無しさん
20/04/20 14:10:17.96 X6dUog3k.net
起動したままで良い
メモリ喰うのは諦めろ

663:デフォルトの名無しさん
20/04/20 14:16:53 agWbeiM9.net
msys+mingw入れて何がしたい?
ffmpegをビルドしたいから

664:デフォルトの名無しさん
20/04/20 14:17:05 2UEzrf8e.net
ああ、なるほど。テスト環境じゃないから
一つしか仮想マシンがないんだな

それぞれ微妙に異なるからテスト環境(仮想マシン)は
プロジェクトごとに必要なんだよ

665:デフォルトの名無しさん
20/04/20 14:18:38 2UEzrf8e.net
>>663
LinuxツールのWindowsネイティブ版への移植以外になんかあるの?
ffmpegもそうだし

まあ全員がWSLをインストールしてるとは限らないから
Windowsネイティブ版を作る意味はあるだろうね。

666:デフォルトの名無しさん
20/04/20 17:04:12 lEczCUui.net
だから何としか言えねぇ

667:デフォルトの名無しさん
20/04/20 21:50:47 vn9gJe4h0.net
cygwin
mingw
wsl

作ったアプリの動作時オーバーヘッド(動作速度)が大きい順に並べて

668:デフォルトの名無しさん
20/04/20 21:54:06.18 iSOfvkhv.net
c
w
m

669:デフォルトの名無しさん
20/04/20 21:57:01.49 vn9gJe4h0.net
マジかよWSLに失望しました。窓から投げ捨ててMinGWに乗り換えます

670:デフォルトの名無しさん
20/04/20 23:38:08.46 pVOiahav.net
いやいや君なんでも即断すぎやろw

671:デフォルトの名無しさん
20/04/21 05:17:44.95 Lx1iEb8v.net
>>670
結論ありきの質問だからねw
使ってみればわかる。
WSLが一番軽いし一番正確に動く。

672:デフォルトの名無しさん
20/04/22 00:52:15.00 nnh+EV8P.net
mingw-w64-〇〇〇-yasm-1.3.0-4 (は32bit用はi686、64bit用はx86_64)
yasm-1.3.0-2
どう違うの?
入れるのはどっち?

673:デフォルトの名無しさん
20/04/22 09:41:29.70 UQ7whF8j.net
前者はMinGW-w64のDLLが必要。いわゆるネイティブアプリ
後者はMSYSのDLLと場合によってはターミナルエミュレータが必要
どちらを使うかは環境と用途次第

674:デフォルトの名無しさん
20/04/22 09:46:40.84 O/jaLKmb.net
おま環

675:デフォルトの名無しさん
20/04/23 21:18:54 4ZqPhGA2.net
msys2を入れてpacman -Syuをやった後、home/PC名のフォルダに、.gnupgというフォルダがあるんだけど、これって消しちゃダメ?

676:デフォルトの名無しさん
20/04/26 14:07:46.35 XGLrD3LC0.net
え!?WSLってそのままでは音流せないんですか!?

677:デフォルトの名無しさん
20/04/26 15:10:53 O/ywVmO1.net
gnupgってGPGだろ
GNU製のPGP暗号化と復号プログラム

678:デフォルトの名無しさん
20/04/26 16:13:34.86 D7tlSM02.net
>>676
PulseAudio使えばいいだけじゃね?

679:デフォルトの名無しさん
20/04/27 04:32:34.19 xcrAouIA0.net
ではWSLは、デフォルトでは音すら流せない杜撰な造りをしていると認めるんですか?

680:デフォルトの名無しさん
20/04/27 06:42:04.21 4F1K1x/3.net
単にサウンドデバイスを実装してないだけだよ
設計は良く出来てるので実装しようと思えば出来るだろうが
利用者が求めてない機能なので優先度が低い
WSLの利用者は開発者だからね。開発者が欲しい機能が最優先

681:デフォルトの名無しさん
20/04/27 06:46:16 4F1K1x/3.net
あ、もしWSLが開発者向けの機能を優先してるのを知った上で
WSLは駄目だって印象を与えようとした書き込みだったらごめん、邪魔したね
そうでないなら音ならWindowsで鳴らせばいいと気づければOKだよ
音を鳴らす程度のためにWSLは不要だからね

682:デフォルトの名無しさん
20/04/27 17:16:43 cdGyQVmm.net
>>658
wslはwslのコマンドラインからlinuxバイナリもwindowsバイナリも動く優れものなんだよ

683:デフォルトの名無しさん
20/04/27 18:06:23 AD9YXzU7.net
>>682
そうそう。だからbashのシェルスクリプトで
Windowsのコマンドを実行してOSの設定を変更するとかできちゃう

684:デフォルトの名無しさん
20/04/27 19:44:31 .net
Windowsのコマンドプロンプト側からWSLのディレクトリに入っていけるの?

685:デフォルトの名無しさん
20/04/27 19:55:00 AD9YXzU7.net
>>684
それはコマンドプロンプト自体の問題で、こいつは古いアプリなのでUNCパスに対応していない
UNCパス(\\ではじまるネットワークフォルダのパス)を扱えるツールを使う必要がある
WSLのディレクトリに対応してるかというよりも
ネットワークフォルダに対応しているかという話に近い

PowerShellはUNCパスに対応しているからWSLのディレクトリにも入れる
コマンドプロンプトから実行するコマンドもUNCパスに対応していれば参照できる
またネットワークフォルダはドライブに割り当てることが出来るので
ドライブに割り当てればコマンドコマンドからWSLのディレクトリに入ることも出来る

686:デフォルトの名無しさん
20/04/27 19:56:20 AD9YXzU7.net
ちなみにcdの代わりにpushdを使えば
コマンドコマンドからUNCパスに移動できる
一時的にドライブを割り当てているだけだが

687:デフォルトの名無しさん
20/04/27 22:41:42 .net
詳しい情報サンクス!
これなら皆がWSLへl移行するのもわかる気がする

688:デフォルトの名無しさん
20/04/27 23:26:27 hGgbh3Gh.net
windowsのSSHサーバ立ち上げてwslをシェルにできるのは便利
PowerShell極めてるひとなら不要かもしれんけどね

689:デフォルトの名無しさん
20/04/28 10:33:28 gG+m5xpc.net
MSYS2とWSLって共存出来るんですか?

690:デフォルトの名無しさん
20/04/28 10:52:09 zAZN/f3s.net
マジレスするとmsys使ってて問題無ければwsl要らない

691:デフォルトの名無しさん
20/04/28 17:09:56 7TaGv6sC.net
>>689
共存できる。msys2はただのアプリでしかないから

>>690
msysの問題はUbuntuと同じようなメンテナンス力を期待できないところかな
WSLは本物のUbuntuのディストリのパッケージが使われてるので
Ubuntuとほぼ同等にメンテナンスされてると思っていい

だけどmsysは(Ubuntuと比べたら小さな)開発者が対応してるパッケージしか使えない
しかもLinuxと完全互換じゃないからmsysでソースコードからコンパイルしようとしても
動くとは限らない。WSLを使えばそういった煩わしさから開放される。

msysはWSLを入れてない人のためのWindows用アプリを作るためのものだよ
開発者がLinuxの代わりとして使うものじゃない

692:デフォルトの名無しさん
20/04/28 17:14:36 qC7CqvMj.net
ホームパスを一緒にすると色々弊害出そう

693:デフォルトの名無しさん
20/04/28 17:30:05 7TaGv6sC.net
>>692
シンボリックリンクでホームディレクトリ以下から
アクセスしやすくするのがおすすめ
色々と混ざらないし複数のディストリでも共有できる

694:デフォルトの名無しさん
20/04/28 18:17:52 eCWBo+Hl.net
色々と混ぜたいからホームディレクトリを一緒にするんだろ
そうじゃなければ最初から分けとけばいいだけの話だ

695:デフォルトの名無しさん
20/04/28 18:20:54 7TaGv6sC.net
>>694
「色々」と混ぜたいならその「色々」だめを混ぜればいいじゃん
全部混ぜる必要はない

696:デフォルトの名無しさん
20/04/28 18:21:10 7TaGv6sC.net
「色々」と混ぜたいならその「色々」だけを混ぜればいいじゃん

697:デフォルトの名無しさん
20/04/29 09:35:11 TuLha3Ht.net
混ぜるな危険

698:デフォルトの名無しさん
20/04/29 09:46:08.06 .net
Microsoft Store に WSL Ubuntu 20.04 LTS 出てるけど、まだ入れない方がいいんですか

699:デフォルトの名無しさん
20/04/29 10:27:50.31 Cpi+Il5+.net
早くても、8月以降に、20.04.1 とか修正版が出た後。
1年後でも良い
Ruby のirb では、MSYS2/MinGW で、日本語入力でバグるから、
WSL の方が、互換性が高い
日本人が作った、バージョンマネージャーのanyenv で、rbenv, nodenv で、
色々なバージョンも入れられる
VSCode も、Remote WSL 拡張機能で、Linux 側へアクセスできる

700:デフォルトの名無しさん
20/04/29 10:38:59 Cpi+Il5+.net
>>684
コマンドプロンプト・PowerShell で、wsl と入力すれば、WSLが起動する

最も良いのは、Linux 側のフォルダのショートカットをデスクトップにでも作って、
そのフォルダの右クリックメニューから、VSCode を起動する

これで、WSLを起動して、Linux側のプロジェクトを開ける

701:デフォルトの名無しさん
20/04/29 11:51:03 Jemg3aCN.net
wsl, opensuse leapにmingw64入れてクロスビルドしてる。
configure作って--hostでmingw指定すれば楽勝すぎて屁が出そう

702:デフォルトの名無しさん
20/04/29 11:51:38 .net
自分が使っているWSLが1なのか2なのか知る方法は?

703:デフォルトの名無しさん
20/04/30 13:35:41.83 HbyVq09Q.net
openSUSE Leap 15.1用のmingw配布消えとるやん
くそがー

704:デフォルトの名無しさん
20/04/30 17:32:57 .net
そもそもWSL2はエンスー向けか
普通の人は1が入ってるのか

705:デフォルトの名無しさん
20/05/02 23:21:47.63 nkPqW+JC.net
MinGWっていうかGitBash環境なんだけど
WSL1より2倍ぐらいシェルスクリプトが遅いんだよね
どこが原因かわからんけどこんなもん?
なにか大きな差がでるポイントでもあるんかね?

706:デフォルトの名無しさん
20/05/03 03:37:53 HUz+EFHq.net
WSL1 (bash 4.4.20) だと
$ time bash -c 'i=0; while [ $i -lt 1000000 ]; do : $((i+=1)); done'
real 0m6.317s
user 0m6.313s
sys 0m0.000s

MinGW64 (bash 4.4.23) だと
$ time bash -c 'i=0; while [ $i -lt 1000000 ]; do : $((i+=1)); done'
real 0m15.053s
user 0m15.000s
sys 0m0.030s

Cygwin (bash 4.4.12) だと
$ time bash -c 'i=0; while [ $i -lt 1000000 ]; do : $((i+=1)); done'
real 0m13.897s
user 0m13.858s
sys 0m0.046s

うーん、こんな単純なコードで2倍の差がでてるから
もうこれはどうしようもないのか?

707:デフォルトの名無しさん
20/05/03 04:04:18.44 HUz+EFHq.net
比較とか計算が遅いのかと思ってやってみたけど
この比率は変わらない
WSL1
$ time bash -c 'for i in $(seq 1000000); do :; done'
real 0m2.159s
user 0m1.828s
sys 0m0.359s
Cygwin
$ time bash -c 'for i in $(seq 1000000); do :; done'
real 0m4.222s
user 0m3.889s
sys 0m0.341s
MinGW64
$ time bash -c 'for i in $(seq 1000000); do :; done'
real 0m4.821s
user 0m4.342s
sys 0m0.436s

WSL1 → Cygwin(2倍ぐらい遅い)→MinGW(さらに10%遅い)
こんな傾向がある。ファイルシステムは関係ないはず
やってるのはCPUの処理だけなはずなんだけどなぁ

708:デフォルトの名無しさん
20/05/03 05:18:19 1PSoskYy.net
調べるとradeonのドライバを切れとか書いてあるけど…

709:デフォルトの名無しさん
20/05/03 05:22:33 HUz+EFHq.net
>>708
使ってないよw

710:デフォルトの名無しさん
20/05/03 05:24:47.68 HUz+EFHq.net
radeonの話は画面に出力が絡むなら
関係ありそうな気もするけど、それ以外でも発生するんだろうかね
あとHOMEは MinGWは /c/Users/myname
Cygwinは/home/mynameだ

711:デフォルトの名無しさん
20/05/03 05:26:40 HUz+EFHq.net
よく見ると大きな差があるのはuser空間だから
コンパイルオプションが違ってるとかなのかな?

712:デフォルトの名無しさん
20/05/03 05:38:01.14 1PSoskYy.net
seq使うんじゃなくて{1..1000000}の方がいいかもね

713:デフォルトの名無しさん
20/05/03 06:00:40 HUz+EFHq.net
>>712
つってもわずか一回だからなぁ。やってみてもいいけど

WSL1
$ time bash -c 'for i in {1..1000000}; do :; done'
real 0m1.710s
user 0m1.547s
sys 0m0.156s

Cygwin
$ time bash -c 'for i in {1..1000000}; do :; done'
real 0m4.854s
user 0m4.811s
sys 0m0.108s

MinGW64
$ time bash -c 'for i in {1..1000000}; do :; done'
real 0m4.934s
user 0m4.843s
sys 0m0.109s

あとあれから少しわかったのはMinGWは何回か繰り返せば
Cygwinに迫るのでファイル読み込み?とかも少し関連してるんだと思う
が2倍以上かかることに変わりはない

cygwin.dll?とかが遅いのかもな。MinGWでも使ってるんじゃなかったっけ?

714:デフォルトの名無しさん
20/05/03 07:25:18 69WKUEPM.net
>>713
を、WSL1, Ubuntu 18.04 で、3回やった。
8GB メモリ、CPU-i3・エコモード

real 0m4.680s
user 0m4.234s
sys 0m0.453s

715:デフォルトの名無しさん
20/05/03 07:38:38.22 HUz+EFHq.net
>>714
いや比較しないと意味ないだろw

716:デフォルトの名無しさん
20/05/03 07:39:48 HUz+EFHq.net
ちなみに俺のはCPUはi7な
Cygwin、MinGWを実行したら
それの2倍かかるはず

717:デフォルトの名無しさん
20/05/03 21:39:24 ADBK+oPb.net
cygwinはforkがヘボいから遅い
MinGWといいつつmsysのbashやろ
これもforkがcygwinゆずりだから遅い。
wslもfork遅いと思うけど。
virtual boxにwindowsファイルを共有させたものの方が実は速い。
純粋にwindowsとLinuxの環境を同居させたきゃ仮想PC
Linuxでwindows binaryをクロスビルド、テストまでしたけりゃwsl

718:デフォルトの名無しさん
20/05/03 21:47:49 v0W4oGhj.net
まあ名前解決のところと passwd/group の設定はしといた方がいいね

719:デフォルトの名無しさん
20/05/03 23:40:13.01 sXSeyux8.net
>>717
forkが遅いのはわかってるけど、
このコードでforkなんて大量にはしないだろ?
time bash -c 'for i in {1..1000000}; do :; done'

720:デフォルトの名無しさん
20/05/04 02:27:10.75 R/PLl+Gn.net
元々、bash が、ループ向きではないから、dash などを使う
for は遅いから、while などを使う。
実行時間中のほとんどが、フォークの時間
ループは、awk, perl, ruby などでは、0.1 秒も掛からない。
単一プロセス中の処理だから

721:デフォルトの名無しさん
20/05/04 03:06:12.15 szliIti6.net
あ、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

722:デフォルトの名無しさん
20/05/04 03:06:42.72 szliIti6.net
>>720
どこでフォークしてるというの?

723:デフォルトの名無しさん
20/05/04 03:16:08.18 szliIti6.net
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

724:715
20/05/04 04:54:04 R/PLl+Gn.net
for がコマンドだから、フォークされるのだろ。
だから、シェルスクリプトでは、while を使えと言われる

bash よりも、dash を使う。
それ以上は、awk, perl, ruby

725:デフォルトの名無しさん
20/05/04 05:14:01 szliIti6.net
whileを使うと遅いからforに変えたのですが?
forを使った>>721とループ回数は同じ

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と大差ないので省略

726:715
20/05/04 07:28:52 R/PLl+Gn.net
8年前のシェルスクリプトの本には、
10万行の処理で、

for : 9分
while : 5秒
awk/perl : 0.1秒

727:715
20/05/04 07:33:20 R/PLl+Gn.net
$((i+1)) という部分が、コマンドだから遅いのだろう

ほとんどが、そのフォーク時間

728:デフォルトの名無しさん
20/05/04 07:37:26 iIYyf/rd.net
せいぜいbashのサブコマンドで、forkしとらん気がする
ただマルチスレッドは使ってるかも知れんし、その際のメモリ操作はなんか性能の問題があった気はする

729:デフォルトの名無しさん
20/05/04 07:49:25 szliIti6.net
>>727
コマンドじゃないよ

730:デフォルトの名無しさん
20/05/04 18:39:29.61 EvcVp/Zr.net
$(())内でiを更新できることから分かるようにforkしていないし、少なくともbashとdashはシングルスレッド
linux上で
ltrace -f bash -c 'for i in {1..1000000}; do :; done'
したら、mallocを何度も呼んでいるようだから、ヒープ操作関係が遅い可能性はある
実際、linux上でもmallocの実装をglibcのからjemallocに切り替えたら上のループが2割近く速くなった

731:デフォルトの名無しさん
20/05/06 17:53:36 cyb3WwF6.net
wsl2は仮想マシンになるのか
windowsバイナリ実行できるのかな

732:デフォルトの名無しさん
20/05/06 19:33:37 DK8FW5YB.net
以下のパッケージ、入れようとすると対象が見つからないと出るんだけど・・・

dlfcn
libpng
tools-git
jq
clang

733:デフォルトの名無しさん
20/05/06 20:42:44 Fjn1hDTG.net
WSL, Ubuntu 18.04 には、jq もあるけど

apt-cache show jq

メンテナー : 陳昌倬

734:デフォルトの名無しさん
20/05/06 22:45:14 UqyV1t7H.net
>>732
ないんだろ?Cygwinは独自のディストリ
Windowsに移植できたもの、自分が関心があるパッケージしか
登録されていない

735:デフォルトの名無しさん
20/05/11 23:46:54.34 77t5bXxM.net
GCC 10.1まだですか

736:デフォルトの名無しさん
20/05/12 00:26:10.57 6XbzcR0E.net
ついにGCCのバージョンも10まできたか・・

737:デフォルトの名無しさん
20/05/12 01:18:10 yS+J4vmz.net
GCCじゅにや

738:デフォルトの名無しさん
20/05/12 07:09:28.82 zxRznJOz.net
カバにダンスをさせるのは
あまり楽しくないそうだ

739:デフォルトの名無しさん
20/05/14 00:17:24.56 rBW8Yffw.net
MSYS2でWin32アプリ作ってみようとチャレンジ中

740:デフォルトの名無しさん
20/05/14 10:05:25 tvxDWcUo.net
きばれ
tdm-gcc (64)

741:デフォルトの名無しさん
20/05/14 10:09:03 tvxDWcUo.net
URLリンク(jmeubank.github.io)

742:デフォルトの名無しさん
20/05/14 10:17:17.31 HbCKurWZ.net
Ruby はやめとけ

743:デフォルトの名無しさん
20/05/22 14:26:50.74 DztlkuPK.net
msys2をサイレントインストールするにはどうしたら良いですか?

744:デフォルトの名無しさん
20/05/28 04:57:53.37 .net
WSL2で 9PFs 経由でWin32側のファイルを読み込むの、なんでこんな遅いの?

745:デフォルトの名無しさん
20/05/28 05:10:55.81 X/662gLn.net
仮想マシン経由だからでは?
だからWSL1も引き続き開発してるわけで

746:デフォルトの名無しさん
20/05/29 02:44:46.36 o1TI0Bdi.net
そろそろ更新してくれ

747:デフォルトの名無しさん
20/06/23 03:13:01.66 1wsAa41I.net
新版まだですか~

748:デフォルトの名無しさん
20/06/23 04:40:31.79 TI7IUkkN.net
あきらめれ。Cygwinはもうお役御免

749:デフォルトの名無しさん
20/06/23 05:19:55.35 AJ4z3x9t.net
同意。mingwは存在意義があるけど、cygwinは役割を終えた。

750:デフォルトの名無しさん
20/06/23 07:12:20.62 lBX+9FOg.net
cygwin
ついに死す、か・・

751:デフォルトの名無しさん
20/06/23 08:06:26.09 oj2a+YQY.net
大往生だね

752:デフォルトの名無しさん
20/06/23 12:40:28.65 AJ4z3x9t.net
mingwは「Git For Windows」のバンドルモジュールとしてしぶとく生き残る。
cygwinはdll依存をなくしてmingwに統合されていくでしょ。

753:デフォルトの名無しさん
20/06/23 13:37:46.90 IV3AROMx.net
それを言ったらGit Bashはmsys2のbashだが、bashがmingwに移植されるとは思えんな

754:デフォルトの名無しさん
20/06/23 13:44:06.97 oj2a+YQY.net
gcc -staticがデフォじゃないのがよくわからん
じゃあMinGWの立ち位置って何よって

755:デフォルトの名無しさん
20/06/23 13:57:09.75 4kHZmTBE.net
URLリンク(www.itmedia.co.jp)
URLリンク(www.security-next.com)

756:デフォルトの名無しさん
20/06/23 14:46:14 ORgy0fyK.net
bash使いたいならbusybox-w32を使えばいいじゃない

757:デフォルトの名無しさん
20/06/23 18:04:53.62 IV3AROMx.net
MinGWの立ち位置?
Win32アプリをビルドできるGCC環境

758:蟻人間
20/06/23 18:07:43.51 5yVlyLrR.net
ReactOS Build Environment (RosBE)という選択肢もアリます。

759:
20/06/23 18:42:37.39 sbDHiXI+.net
MSVC に依存したくないので、mingw をお手軽に維持できる cygwin 環境はありがたいですね…

760:蟻人間
20/06/23 18:50:53.69 5yVlyLrR.net
WineHQとかRosBEとかはLinuxでも使えるクロスコンパイラを用意している。まあ、やる人は少ないが。

761:デフォルトの名無しさん
20/06/23 18:53:16.90 V6B5o2yX.net
別にlinuxからでもクロスコンパイルできるんやろ?

762:蟻人間 ◆T6xkBnTXz7B0
20/06/23 19:25:00 5yVlyLrR.net
XPでも動くプログラムが作れるってのが味噌。MSYS2はVista+に移行した。

763:デフォルトの名無しさん
20/06/23 22:02:49.42 AJ4z3x9t.net
mac OSはzshに移行したというのに

764:デフォルトの名無しさん
20/06/23 22:14:53.82 MHuIwrXa.net
移行したと言うか、互換性の点でbashの方が良かったが
bashのライセンスがGPL3に変わって受け入れられなかったから
仕方なくzshにしたってだけだろ
古いbash 3系よりは、zshの方がまだましという消極的な理由

765:デフォルトの名無しさん
20/06/24 11:23:52 6+kkBVmV.net
>>757
>>759
tdmgcc で cygwin から解放されました
ほんとうにありがとうございました

766:デフォルトの名無しさん
20/07/23 17:26:38.39 VHveRWmf.net
更新まだですか

767:デフォルトの名無しさん
20/07/25 17:28:58.82 zqROUOzo.net
tdmgcc は wikipedia では開発が止まった事になってるな。

768:デフォルトの名無しさん
20/07/25 19:44:16.83 e/b0FSz8.net
フェラチオザウルスにパクってされちゃうよ

769:デフォルトの名無しさん
20/07/27 10:47:44.01 vNtx9fDh.net
日本語情報が怪しい時は
英語で探せとあれほど
URLリンク(en.wikipedia.org)

770:デフォルトの名無しさん
20/08/02 17:49:35.08 5nHbYcRj.net
GCC10.2が出ましたが更新まだですか

771:デフォルトの名無しさん
20/08/02 21:42:09.02 tCIK0cPS.net
まあそうせかすな

772:デフォルトの名無しさん
20/08/13 04:41:43.17 fvRziO87.net
例の場所に10.2.1きとる

773:デフォルトの名無しさん
20/08/27 16:58:23.47 Q9n93HF/.net
10.2.1更新来たな

774:デフォルトの名無しさん
20/09/06 05:21:00.21 6+AOMFkl.net
どこ。

775:デフォルトの名無しさん
20/09/06 14:38:00.75 brHr3Ow2.net
>>773
来たな

776:デフォルトの名無しさん
20/09/12 15:02:17.29 9491oo7t.net
>>774
教えない

777:デフォルトの名無しさん
20/09/12 15:31:34.91 cDX1Q2rT.net
どこもろ

778:デフォルトの名無しさん
20/09/13 02:49:17.38 H5kZw8iZ.net
どこやねん

779:デフォルトの名無しさん
20/09/13 23:19:27.35 fPwxPBWU.net
VSと比べてDLLサイズが異常に大きいのは何故?

780:デフォルトの名無しさん
20/09/13 23:36:47.82 TB8HnEHa.net
例外処理テーブルとか

781:デフォルトの名無しさん
20/09/14 06:19:49.80 ojDUYk2D.net
なるほど

782:デフォルトの名無しさん
20/09/22 10:07:53.86 E39jLpI9.net
例の場所に更新

783:デフォルトの名無しさん
20/09/22 15:23:38.04 GllshRbk.net
どこやねん

784:デフォルトの名無しさん
20/09/22 18:05:26.68 seuGL7uU.net
検索すらできないのか
それともネタなのか

785:デフォルトの名無しさん
20/09/22 19:37:32.27 CCoUpWrp.net
今時mingwはmsys2のを使っときゃいいんだよ

786:デフォルトの名無しさん
20/09/23 11:02:58.68 XRK7WPHx.net
検索してもわからんやろ

787:デフォルトの名無しさん
20/09/23 23:46:41.48 gLjfq4c0.net
SourceForgeのMinGWページを隅から隅まで探せば書いてあるじゃん

788:デフォルトの名無しさん
20/09/24 04:03:25.38 Qc2kqk0D.net
隅から隅まで探さないといけないやつを検索すらできないのかっていうのはなんか違わない?????
僕そもそもなぜかCygwinの話だと思ってたからそれ以前の問題なんですけど

789:デフォルトの名無しさん
20/09/24 08:19:03.36 hsn7nUMR.net
こまけーことは気にせずにmsys2使っときゃええんやで
cygwinはなあ…gccの更新いつも遅いから

790:デフォルトの名無しさん
20/09/25 02:23:28.62 R0ES/gEA.net
Last Update: 2018-07-13

791:デフォルトの名無しさん
20/09/25 05:05:33.50 xdrtZXMH.net
Git for Windows にバンドルされてるbash使えばいい。
ビルド環境はStrawberry Perlにバンドルされてるのを使えばいい。

792:デフォルトの名無しさん
20/09/25 10:53:31.32 4ovx1Tzj.net
git bash まじ重宝

793:デフォルトの名無しさん
20/09/25 16:22:15.04 zomYspwe.net
git bash何かいらねえ

794:デフォルトの名無しさん
20/09/27 12:42:54.48 7DquKLWE.net
>>780
例外処理省く方法教えて
デカすぎて

795:デフォルトの名無しさん
20/09/27 17:29:20.39 N8t4cs0T.net
デバッグビルドしてストリップしてないとか?

796:デフォルトの名無しさん
20/09/27 17:39:43.97 RCK09O0u.net
ライブラリをストリップしたらあかんのではないかな
gccのオプションにexceptionのなんかがあった気がする

797:デフォルトの名無しさん
20/09/27 17:55:53.32 /pvqCRq3.net
なんでライブラリをストリップしちゃだめなの?

798:デフォルトの名無しさん
20/09/28 05:51:50.74 fkfJzhy+.net
ごめんなさい
デバッグしてた
ありがとう

799:デフォルトの名無しさん
20/09/28 17:33:38.94 QxfbhGyV.net
Visual Studioに入ってるdumpbinに相当するコマンドある?
DLLのエクスポートテーブルを覗きたいんだけど

800:デフォルトの名無しさん
20/09/28 18:01:48.48 zjrobJ8x.net
digitalmars_com /ctg/implib.html
wiki_dlang_org /Win32_DLLs_in_D
www_kmonos_net /alang/d/dll.html

801:デフォルトの名無しさん
20/09/28 19:28:55.09 o9UKO8uP.net
>>799
objdump
readelf

802:デフォルトの名無しさん
20/10/16 19:44:08.37 UdyDW7b6.net
オーイ

803:デフォルトの名無しさん
20/10/16 22:45:48.97 JU6AgX+H.net
ハニマル

804:デフォルトの名無しさん
20/10/19 13:45:57.53 icj8nwBD.net
>>79チンチンなめなさい

805:デフォルトの名無しさん
20/11/09 21:03:17.57 IuElySO5.net
fork: retry: resource temporarily unavailable とかでて直せない。
rebaseallとかやっても効果ないみたいだし
もうcygwin、msysのテストやめようかな

806:デフォルトの名無しさん
20/11/10 12:08:26.08 08CevRpc.net
おそらく D よりも需要無い

807:デフォルトの名無しさん
20/11/10 12:59:45.22 xOE44Ei0.net
>>805
よっぽど暇なんだね

808:デフォルトの名無しさん
20/11/30 20:19:07.75 3JTTeG8Mz
「稼ぎたい!」と言う前にまず童貞を卒業してきてください【必須事項】
URLリンク(www.youtube.com)
感情を抑圧する働き方を「感情労働」と言います。この感情労働を辞めないと自由な人生は送れません!
URLリンク(www.youtube.com)
凡人Fラン大学生が新卒で月収80万円稼げるようになった4つの理由
URLリンク(www.youtube.com)
スキル無しでロゴを作成してココナラでお金を稼ぐ方法【デザイン・イラストレーター】
URLリンク(www.youtube.com)
学生起業家あるある6選【大学生で起業するとこうなります】
URLリンク(www.youtube.com)
大学生でバイトのシフトに入りまくると貧乏になる理由
URLリンク(www.youtube.com)
学生がネットで稼ぐ方法【稼げる金額別に紹介
URLリンク(www.youtube.com)
学生の間に自分で稼げるようになるべき3つの理由
URLリンク(www.youtube.com)
【裏技】ネットビジネスで月1万円から月40万円まで収益を拡大する方法
URLリンク(www.youtube.com)
Fラン大学生がやるべき事は「金儲け」です【お金を稼ぐ方法】
URLリンク(www.youtube.com)
僕が「月5万」を稼ぐために、行動したこと全て【ステマなし/行動命】
URLリンク(www.youtube.com)

809:デフォルトの名無しさん
20/12/15 15:11:54.58 XwGFb1c9.net
MSYS2には、lscpuコマンドはないのかな?
CentOSなんかだとutil-linuxパッケージに入ってるけど、MSYS2のには入ってないもよう。。。

810:デフォルトの名無しさん
20/12/15 15:49:11.07 nSXgvBdA.net
cpuinfoあるんだっけ

811:デフォルトの名無しさん
20/12/15 15:58:16.71 XwGFb1c9.net
/proc/cpuinfo
/proc/meminfo
/usr/bin/free
はあるんだけど、lscpuはないんだよな。。。

812:デフォルトの名無しさん
20/12/15 17:22:03.48 ME0vqtfe.net
MinGWって終わってるよな

813:デフォルトの名無しさん
20/12/15 22:11:01.31 vYGb7HVK.net
Windows 10, WSL2, Ubuntu 18.04 には、
/usr/bin/lscpu
がある

814:デフォルトの名無しさん
20/12/16 21:38:25.53 kww319UT.net
で?

815:デフォルトの名無しさん
20/12/19 14:26:36.44 ap/HqxcB.net
MSYS2の終わりだよよう。。。

816:デフォルトの名無しさん
20/12/22 16:11:28.24 GJ2NqyED.net
ってかこの世の終わりだよう。。。

817:デフォルトの名無しさん
20/12/23 09:37:51.13 vcwRrO0n.net
コロナもどんどん変異種がでてきとるしな
もう人類は無理だろ
さよなら人類

818:デフォルトの名無しさん
21/01/17 17:25:02.12 /QJK4AMk.net
マジで終わりそうでコロナ怖い

819:デフォルトの名無しさん
21/01/18 06:41:44.76 062JN0Tv.net
武漢熱な
責任をぼかす言い方やめようぜ

820:デフォルトの名無しさん
21/01/18 07:07:52.97 iOtNqc3F.net
自民党支持者ってまだcygwin使ってるんだ

821:デフォルトの名無しさん
21/01/18 16:38:16.66 0ToZeY7a.net
URLリンク(www.youtube.com)

822:デフォルトの名無しさん
21/01/18 21:10:56.29 062JN0Tv.net
アカって何の根拠もなく唐突に決めつけてくるんだ

823:デフォルトの名無しさん
21/01/22 18:29:04.68 WeFjBpWyB
日本と海外のプログラマーの違いを比較してみた
URLリンク(www.youtube.com)
SIer業界がブラックな理由を解説する。エンジニアは自社開発をしているWeb業界がオススメ!
URLリンク(www.youtube.com)
エンジニアの仕事が稼げる理由とは?プログラミングスキルと
仕事の需要は比例しないので、実は技術力が低くても稼ぐことができる!
URLリンク(www.youtube.com)
通勤時間が長い人ほど無能説。家賃節約とか言っている暇があったら、
会社の近くに引っ越して浮いた時間に副業したほうがお金も貯まるし強くなれる。
URLリンク(www.youtube.com)
プログラミングに英語は必要か?に対する明確な答え
URLリンク(www.youtube.com)
私がヤフーを辞めた理由
URLリンク(www.youtube.com)
【業界研究】IT業界でひと括りにするのは危険。SIer、Web制作、
アプリ開発で仕事内容が全く違います。【就活・転職】
URLリンク(www.youtube.com)
ITエンジニアの種類と必要なスキル ?アプリケーションエンジニア編?
URLリンク(www.youtube.com)


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch