Cygwin + MinGW + GCC 相談室 Part 8 (987レス)
1-

554: 2019/08/23(金)18:17 ID:jZ19Qjup(2/2) AAS
>>553
おお、ありがとう
ダウンロードしてみる
555
(1): 2019/08/23(金)18:24 ID:aZS2aOxa(1) AAS
今はこっちが良くね
外部リンク:text.baldanders.info
556: 2019/08/24(土)06:55 ID:Glqz8i+r(1/2) AAS
TDM-GCCでビルドしたら遅いの無くなったかもしれない(*´Д`)!!!
>>551
>>553
もう少し様子見るけど、まじでありがとう

>>555
これはMinGWとは違うの?
557: 2019/08/24(土)09:36 ID:u2q8uNB0(1/2) AAS
staticになってるだけというオチだったらわろす
558
(1): 2019/08/24(土)14:59 ID:H4K4vAej(1) AAS
ただ単に -static -O3 -mtune=skylake を指定していないだけ
じゃねえだろうな?
559
(1): 2019/08/24(土)17:29 ID:Glqz8i+r(2/2) AAS
staticオプションは特に指定しませんが……
dllの読み込みが原因だとしたらstaticにすれば解決という話ですか
そういう発想はなかった

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

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

関数A、B、C、Dが含まれるライブラリlibhogeが存在する場合、自分のプログラムで
省15
562: 2019/08/25(日)19:02 ID:7s5pz20M(1) AAS
もっと短く
563
(1): 2019/08/25(日)23:51 ID:V1f8d4H1(1) AAS
>>561
ということは--static -O3 -mtune=skylakeでビルドすれば起動が早くなるかもということですか
時間があるときに試したいと思いますm(_ _)m
564: 2019/08/26(月)01:28 ID:K2zp8I6+(1) AAS
やっぱり名前解決の問題が大きいんすよ
ライブラリの読み込みだけでは説明できない
565
(1): 2019/08/26(月)14:11 ID:T0vtMl8v(1/2) AAS
>スタックリンクの場合には自分のプログラムの実行コードに加えてlibhoge.aから抽出した
>関数BとDのコードを読み込むだけなので関数AとCのコードを読み込まない分ロードが

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

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

まれにコンパイラのバグということもあるが大抵てめーが悪い
573: 2019/08/28(水)17:10 ID:w9RtsrXP(1) AAS
VCで造られたdllをmingwのgccで使いたいです
hoge.dll と hoge.lib は有るのですが
libhoge.a がありません
あと hoge.c とかのソースファイルもありません
hoge.def は hoge.dll から作れるのですが
hoge.lib から libhoge.a を作るのはどうすればよかったか思い出せません
574: 2019/08/28(水)17:25 ID:iAy2zRVx(1) AAS
外部リンク: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

しらんけど
575: 2019/08/28(水)17:45 ID:4qorfKL6(1) AAS
実際parallelstlをコンパイルするのはVCの方が楽だしな
これを.aに変換したいと思っていたのでありがたいです
576: 2019/09/03(火)16:24 ID:fy59PR5b(1) AAS
9.2.0 Rev2 でPCHのエラーが出なくなった。
577: 2019/09/13(金)12:46 ID:wKEqF87n(1/2) AAS
本物のWInネイティブアプリの起動はもっと速いのかもしれません。
MinGW+MSYS2がCygwinより速い理由が釈然としませんが、
forkがCygwinのものまんまよりは多少軽量だったりするんだろうか
Twitterリンク:nullpo_head
Twitterリンク:5chan_nel (5ch newer account)
578: 2019/09/13(金)12:48 ID:wKEqF87n(2/2) AAS
ビルド環境のまとめ
画像リンク[png]:i.loveruby.net
外部リンク[html]:i.loveruby.net
579: 2019/09/13(金)13:01 ID:hxTRiT39(1) AAS
mingwはその本物のネイティブとちゃうか
580: 2019/09/13(金)15:13 ID:ud7Tmahn(1) AAS
cygwin の fork = native じゃなくて emu
mingw の fork = あるんか?
581
(1): 2019/09/13(金)16:40 ID:08rV0d8/(1) AAS
MinGW+MSYS2がCygwinより速い理由は
Cygwinはたとえ遅くなろうとも完璧なエミュレートを目指してるのに対して
MinGW+MSYS2は目指してないから
582: 2019/09/13(金)18:56 ID:2jKM3FP9(1) AAS
MSYS2は、Windowsネイティブアプリを作るための環境です。
Windowsネイティブアプリを作りましょう。
583: 2019/09/13(金)19:47 ID:+NnovRbX(1) AAS
>>581
どういうことなの…
1-
あと 404 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s