[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/12 05:38 / Filesize : 230 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Cygwin + MinGW + GCC 相談室 Part 8



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

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

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

関連スレッド:
GCCについて part10
toro.2ch.net/test/read.cgi/tech/1315026784/

992 名前:デフォルトの名無しさん mailto:sage [2025/08/24(日) 21:06:59.10 ID:JGmFRBjN.net]
msys2で全部入り(随時追加)が良いよ
各ランタイムの開発環境(ucrt64,mingw64,clang64)の合計なんて30GBにも満たない
昨今の(mono)プロジェクト単位の依存関係インストールに比べたら軽いものでは

993 名前:デフォルトの名無しさん mailto:sage [2025/08/27(水) 03:14:16.66 ID:nJC8HQwX.net]
windowsのパス環境変数取り合いになるからなあ
こういうの
統合してほしい

994 名前:デフォルトの名無しさん mailto:sage [2025/08/27(水) 05:44:42.72 ID:F9vl64W8.net]
そう言う疑問はmsys2インストールして環境別のショートカットを見たら直ぐに分かる

995 名前:デフォルトの名無しさん [2025/10/12(日) 05:50:47.01 ID:W2SaGlg4.net]
>>992
でけーよ…

996 名前:デフォルトの名無しさん [2025/12/03(水) 11:41:04.56 ID:G3Cx7y7o.net]
inline関数を使うときに
VCだと
inline int hoge(int fuga){ 中身 }
で使えるのに
mingw/gccとかだと
static inline int hoge(int fuga){ 中身 }
って描かないと使えない
なんで?
(.cに描くとか.hに描くとかそういうの無関係な話で)

997 名前:デフォルトの名無しさん mailto:sage [2025/12/03(水) 12:52:21.06 ID:yVL3HxQ8.net]
使えるよ
リンカーエラーでも出てる?

998 名前:デフォルトの名無しさん mailto:sage [2025/12/03(水) 12:55:52.88 ID:yVL3HxQ8.net]
あーわかった
>>996 cではなくてc++でコンパイルしな?

999 名前:はちみつ餃子 mailto:sage [2025/12/03(水) 14:09:55.16 ID:OnxLfrF+.net]
>>996
C ではインライン定義は外部定義 (external definition; 要するに普通の実体ある関数) の代替を与えるというルールで、インライン定義自体は外部定義を与えない (作らない)。

呼び出しのほうは実体のある外部定義を呼び出すか代用品であるインライン定義を使うかは未規定。
インライン化用の代用品を使うかもしれないし、実体のある関数を呼び出すかもしれない。
実体のある関数を使う選択をしたときに >>996 の状況では実体のある関数は作られていないから存在しないというリンカエラーになる。
GCC でも最適化オプションを付けてインライン化されてしまったときは (インライン化されたら関数をリンクする必要がないので) エラーにならずにリンクが完了することもある。

以下のように extern 付きの宣言を付けるとインライン関数定義から外部定義の生成を強制できるのでこれで対処することも出来る。

inline void foo(void) {}
extern void foo(void);

int main(void) {
foo();
}

C++ だとインライン関数がもう少し普通の関数と扱いが平等に近づいているので分かり易いんだが……

1000 名前:デフォルトの名無しさん mailto:sage [2025/12/03(水) 22:07:45.02 ID:Eh+HvnbR.net]
らしいがこの人も勘違いしてそう
https://zenn.dev/mod_poppo/articles/c-inline-function
https://wocota.hatenadiary.org/entry/20090219/1235058524



1001 名前:デフォルトの名無しさん mailto:sage [2025/12/04(木) 05:43:42.35 ID:7puO0DHP.net]
.hの方にinlineで
.cの方にexternってことか
気持ち悪いけど納得






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<230KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef