X



Cygwin + MinGW + GCC 相談室 Part 8
0001デフォルトの名無しさん
垢版 |
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/
0505デフォルトの名無しさん
垢版 |
2019/05/22(水) 11:00:03.94ID:1OSMRbFi
C++11 なんてオワコンだからやめとけ
0508デフォルトの名無しさん
垢版 |
2019/06/13(木) 16:59:54.42ID:/0Hvd4dT
cygwin に apt-cyg find R したら Rがあった(長らくこれはなかった)
感動的だ

ようやくWindowsの上でもスタート地点に立った
0510デフォルトの名無しさん
垢版 |
2019/06/13(木) 22:37:36.09ID:tYlssfYj
ものすごい今さらな質問なんだが・・・
Cygwin て何て発音するんだ?サイウイン?
まわりに使ってるやつ1人もいないから実際に発音することがなくて困る
0516デフォルトの名無しさん
垢版 |
2019/06/14(金) 12:20:34.75ID:5t0rLbyA
cygnusは英語では、「シグナス」です。

むかし、Cygnusと云う商標で、「キグナス石油」という会社が
あったので、Cygnusを英語読みで[シグナス」ということを
知らないで、、「キグナス」と読んだりするみたいです。

ちょっと、きになったら、『英和辞典」を引いてみるとよいでしょう。
0517デフォルトの名無しさん
垢版 |
2019/06/14(金) 12:26:57.67ID:YE54Q2cv
ジョアンとフアンとジョンとジャンと…

カルロスとチャールズとシャルルと…

ジョージとホルヘとゲオルクと…
0519デフォルトの名無しさん
垢版 |
2019/06/14(金) 12:47:10.03ID:bpAwmG5b
ペーターピーターピョートル
シーメンスジーメンス
ジャーマンゲルマンドイツドイチュ
0521デフォルトの名無しさん
垢版 |
2019/06/14(金) 23:28:44.92ID:5t0rLbyA
フランス語は
cygne
で、cygnusとは違います。
ラテン語は、英語と同じ
cygnus
です。
0523デフォルトの名無しさん
垢版 |
2019/06/15(土) 11:12:22.87ID:Z5/LYv7k
Cognac
Tough
Lamborghini
を思い出す
0525デフォルトの名無しさん
垢版 |
2019/06/22(土) 19:12:03.45ID:UYyu+IU/
>>523
ぶぁーか
0526デフォルトの名無しさん
垢版 |
2019/06/23(日) 05:49:44.99ID:g5igmDJr
MinGW更新が滞っています
0527デフォルトの名無しさん
垢版 |
2019/06/24(月) 05:27:39.62ID:bdPLxrDs
>>526
MinGW-W64 project のやつは滞ってるけど、
MSYS2 project のやつ(pacmanで入れるやつ)は滞ってないよ(9.1.0)。
0530デフォルトの名無しさん
垢版 |
2019/06/25(火) 20:17:15.80ID:Cgc4J/db
>>529
一言余計なんだよカス
0537デフォルトの名無しさん
垢版 |
2019/08/14(水) 15:59:31.43ID:cSlSK8mm
> 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++
あとこんな警告が大量に出るようになって邪魔。
0538デフォルトの名無しさん
垢版 |
2019/08/20(火) 15:18:40.97ID:4DZMx7ke
MinGWで作ったバイナリ、コマンドプロンプトで実行するとすごい遅い
一回実行するとキャッシュでもされるのかそれ以降の実行はわりと速い
ひどいときはプロセス間通信を使ってるバイナリで実行から終了まで7秒とかかかったりする

Gitとかはコマンドプロンプトで実行してもすぐに実行されるんだけど、何が違うんだろう
ウィルスソフトのリアルタイムスキャンに時間がかかってるのかと思って、問題のバイナリの除外設定とかしてみたけど、効果なかった

問題のバイナリはプロセス間通信を使ってるから、このプロセス間通信がボトルネックになってるのかなぁ
WindowsのCreateProcessはLinuxのforkに比べるとめちゃくちゃ遅いらしいし
0539デフォルトの名無しさん
垢版 |
2019/08/20(火) 15:20:15.93ID:zlJnj2O9
cmd からじゃなくて mintty から実行しても遅いか?
0542デフォルトの名無しさん
垢版 |
2019/08/20(火) 17:27:25.95ID:4DZMx7ke
>>539
mintty, MSYSでは動作が速かったです
cmd特有の「初回起動だけ遅い」というのはありませんでした
powershellでも試してみます

>>541
cmdでも実行は出来てるんですが、なんか初回実行だけ遅いんです
初回以降は速くて、しばらく放置してまた実行すると遅くなってます
0543デフォルトの名無しさん
垢版 |
2019/08/20(火) 17:37:17.04ID:zlJnj2O9
キャッシュしてるとしたら socks の dll かな
0545デフォルトの名無しさん
垢版 |
2019/08/21(水) 17:19:04.83ID:iGK2Kp/R
雑な事いえばminttyやMSYSを起動すると、起動した時点でMinGWのdllが
読み込まれるのでコマンド起動遅くならないのでは
0546デフォルトの名無しさん
垢版 |
2019/08/21(水) 17:33:03.25ID:ur92HW83
それならそれで解決とするか
0547デフォルトの名無しさん
垢版 |
2019/08/21(水) 23:34:12.77ID:L4bPYRCx
dllの読み込みに時間かかってるってことですか
なるほど
ということはMinGWでコンパイルしたバイナリ全般に現れる問題っぽいですね
0548デフォルトの名無しさん
垢版 |
2019/08/22(木) 04:38:34.97ID:Rc8J28Ob
コマンドプロンプトで実行するようなプログラムは
Windowsネイティブアプリにしろよw
0550デフォルトの名無しさん
垢版 |
2019/08/22(木) 06:10:29.02ID:dqAPG5D5
>>548
最初はLinuxで開発してて、それからWindows用に移植したんですよ
で、MinGWが手軽だったからMinGW使ってたんだけど
0551デフォルトの名無しさん
垢版 |
2019/08/22(木) 10:15:45.06ID:xQsiKIbM
そんな用途には tdmgcc64 おすすめ
0556デフォルトの名無しさん
垢版 |
2019/08/24(土) 06:55:34.51ID:Glqz8i+r
TDM-GCCでビルドしたら遅いの無くなったかもしれない(*´Д`)!!!
>>551
>>553
もう少し様子見るけど、まじでありがとう

>>555
これはMinGWとは違うの?
0557デフォルトの名無しさん
垢版 |
2019/08/24(土) 09:36:31.35ID:u2q8uNB0
staticになってるだけというオチだったらわろす
0559デフォルトの名無しさん
垢版 |
2019/08/24(土) 17:29:38.98ID:Glqz8i+r
staticオプションは特に指定しませんが……
dllの読み込みが原因だとしたらstaticにすれば解決という話ですか
そういう発想はなかった

>>558
--mtune=skylakeってなんですか?
0560デフォルトの名無しさん
垢版 |
2019/08/24(土) 17:48:35.57ID:u2q8uNB0
DLLよりstaticが速いとか都市伝説
0561デフォルトの名無しさん
垢版 |
2019/08/25(日) 16:54:37.16ID:z6AAmiat
>>559
-O3はコードの最適化を3レベル(あるいはタイプ3)で行う
実際に何を行っているかはコンパイランの説明を読まないと分からない
-mtune=skylakeはコードをIntel CPUのSkyLakeアーキテクチャで最適な形にする
どちらも記述したコードを実行形式にするときに最適化を行うオプションなので、
非常に大きなコードを書いた際や似たような処理を繰り返すコードを書いている際に
指定すると早くなる事もある(ライブラリに含まれるコードは最適化されない)

>>560
都市伝説ってこともない

関数A、B、C、Dが含まれるライブラリlibhogeが存在する場合、自分のプログラムで
関数BとDだけを使っていると、ダイナミックリンクの場合自分のプログラムの実行
コードに加えてすべての関数が含まれるlibhoge.dll全体を読み込む必要がある
スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した
関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが
早くなる可能性は高くなる

ただし、実際問題としてはdllを一回読み込めばキャッシュからなくならない限り読み込む
必要がない+Windowsのプログラミングで使用するライブラリで基本的なものは通常
システムを起動した時点でキャッシュされていることに加えて、Windowsでプログラムを
動かすために必要な関数郡はかなりの量になる事が多いのでスタティックにリンクすると
すでにキャッシュされている関数郡を使わずに、必要な関数郡を含んだ大きなコードを
読み込む必要があるのでスタティックリンクの方が起動が遅くなるって本末転倒な事態が
発生することもある

MinGWの場合にはWindows一般では使わないライブラリを使用するので1回目の
起動時には必要なdllを読み込むよりは、必要な関数のみをリンクしたスタティックな
状態の方が早い場合があるかもってこと
0563デフォルトの名無しさん
垢版 |
2019/08/25(日) 23:51:01.48ID:V1f8d4H1
>>561
ということは--static -O3 -mtune=skylakeでビルドすれば起動が早くなるかもということですか
時間があるときに試したいと思いますm(_ _)m
0564デフォルトの名無しさん
垢版 |
2019/08/26(月) 01:28:47.93ID:K2zp8I6+
やっぱり名前解決の問題が大きいんすよ
ライブラリの読み込みだけでは説明できない
0565デフォルトの名無しさん
垢版 |
2019/08/26(月) 14:11:24.03ID:T0vtMl8v
>スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した
>関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが

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

これ関数単位でソース分けてあって
一関数が一objになってる場合だけだよな
0567デフォルトの名無しさん
垢版 |
2019/08/26(月) 17:43:39.53ID:eYWa871J
dll読み込みってそんなに重いかな?
なんか別のところで時間がかかっていそうな感じ。
0568デフォルトの名無しさん
垢版 |
2019/08/26(月) 21:44:29.54ID:CEMf0Y7L
>>565-566
MinGWの場合はそうかな。確かMinGWでは--gc-sectionsが効かなかったかと。
LTOで未使用関数が除去されるかもしれないけどバグが多いので試してない。
0569デフォルトの名無しさん
垢版 |
2019/08/27(火) 05:30:30.81ID:FSIINwco
>>563
でビルドしてみました
様子見します
-O3は、前にビルドしたときにプログラムがうまく動作しないことがあったんですよね
-O0にすると正常に動作したんですけど
0570デフォルトの名無しさん
垢版 |
2019/08/27(火) 09:41:49.02ID:NZJyfwBK
-O3に完璧を求める方が可笑しい
0572デフォルトの名無しさん
垢版 |
2019/08/27(火) 12:32:02.21ID:j4wzaSFP
-O3と-O0で挙動が違うのは、不定の値を使っているとか、
未規定の動作に依存しているとか、そういう系だぞ

まれにコンパイラのバグということもあるが大抵てめーが悪い
0573デフォルトの名無しさん
垢版 |
2019/08/28(水) 17:10:08.53ID:w9RtsrXP
VCで造られたdllをmingwのgccで使いたいです
hoge.dll と hoge.lib は有るのですが
libhoge.a がありません
あと hoge.c とかのソースファイルもありません
hoge.def は hoge.dll から作れるのですが
hoge.lib から libhoge.a を作るのはどうすればよかったか思い出せません
0575デフォルトの名無しさん
垢版 |
2019/08/28(水) 17:45:16.06ID:4qorfKL6
実際parallelstlをコンパイルするのはVCの方が楽だしな
これを.aに変換したいと思っていたのでありがたいです
0580デフォルトの名無しさん
垢版 |
2019/09/13(金) 15:13:51.93ID:ud7Tmahn
cygwin の fork = native じゃなくて emu
mingw の fork = あるんか?
0581デフォルトの名無しさん
垢版 |
2019/09/13(金) 16:40:00.05ID:08rV0d8/
MinGW+MSYS2がCygwinより速い理由は
Cygwinはたとえ遅くなろうとも完璧なエミュレートを目指してるのに対して
MinGW+MSYS2は目指してないから
0582デフォルトの名無しさん
垢版 |
2019/09/13(金) 18:56:41.57ID:2jKM3FP9
MSYS2は、Windowsネイティブアプリを作るための環境です。
Windowsネイティブアプリを作りましょう。
0588デフォルトの名無しさん
垢版 |
2019/10/02(水) 07:41:31.63ID:WxowMW3Q
GMPって真面目にソースtarからビルドするしかないの? ビルド済みのバイナリですぐ使えるのがあれば欲しいんだけどcygwinのインストーラでチェック入れてもダメで、なんじゃこりゃってなってるんだけど。
0590デフォルトの名無しさん
垢版 |
2019/10/02(水) 11:46:15.82ID:55+aQRnY
4.1.2 は解決
0594593
垢版 |
2019/10/19(土) 15:58:06.55ID:US3VZtYL
arch linuxので解決
0595デフォルトの名無しさん
垢版 |
2019/11/10(日) 23:46:15.76ID:vZIjc/J6
長期間更新がありませんが何か支障があるのでしょうか・・
0596デフォルトの名無しさん
垢版 |
2019/11/14(木) 16:18:35.97ID:m0xrmwtq
>>595
あるよ
0597デフォルトの名無しさん
垢版 |
2019/11/15(金) 14:11:12.27ID:L6hfSVpN
>>595
ないない
0600デフォルトの名無しさん
垢版 |
2019/12/23(月) 02:13:46.99ID:IO6RyZUn
Cygwin って /cygdrive上ではディレクトリまたげないんだけど、これってそんなもんだったっけ?


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

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

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

何か設定がおかしい?それともこんなものだったっけ?
なお今のところディレクトリをまたげないだけでカレントについてはコマンドは通る。
0602デフォルトの名無しさん
垢版 |
2019/12/23(月) 12:40:57.34ID:sEnpgkKc
もちつけ
他人のせいにする前に自分を疑え
0604デフォルトの名無しさん
垢版 |
2019/12/23(月) 13:59:53.49ID:IO6RyZUn
>>602
それはそうだが普段シンボリックリンクである事なんて意識しないからな。
いまだにcygwinではNTFSのシンボリックリンクを辿れないのはしょぼいと思うが。
なお32bit版。bashはversion4.4.12(3)、cygwin1.dll はversion 3001.2.0.0
(昨日の時点でsetup.exeを使いBestに更新)

64bit版なら行けるのかも?誰か動作報告よろしく。
レスを投稿する


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