[過去ログ] cygwin + mingwn + gcc 相談室 (984レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
1: 03/07/14 07:18 AAS
VC や C++ Builder には専用スレがあるのに
俺たちにないのは変だろ?
858: 2005/07/15(金)13:36 AAS
>>852
古いの使うか自分でビルドしる
859
(1): 2005/07/15(金)21:43 AAS
MinGWのgccではなく、cygwinのgccを使うメリットって何?
単に"Unixもどきのコマンドやスクリプトが使える"ってだけかな。
UnixにたいしてこだわりがなければMinGWでOK?
860: 2005/07/15(金)21:57 AAS
/dev/以下が使えるとか
861
(2): 2005/07/15(金)21:58 AAS
>>859
「もどき」じゃなくて本物だけどね(gnuプロダクトを「本物」と言えれば、だけど)。

Windowsにそもそも存在しない概念とかはmingwでは未実装になってることもあるから、
unix由来のソースをコンパイルする場合はmingwでは役者不足の場合もある。
Windowsでしか使わないものを自分で作るのであれば、その辺考慮して、お好きなように。

gccに限った話なら、cygwinのgccでもmingw相当のバイナリ(つまりcygwinに依存しない)
が作れるから、コンソール環境が揃ってるcygwinを使わない理由はあんまりない。
cmd.exe(command.exe)で十分だってのなら、こちらもお好きなように。
862
(1): 2005/07/15(金)22:01 AAS
>>861
>command.exe
違和感を覚えた俺…
863
(1): 2005/07/15(金)22:19 AAS
cmd.exe
command.com
864
(1): 2005/07/15(金)23:52 AAS
>>861
役者不足って、
力不足か?
865: 2005/07/16(土)01:58 AAS
cygwin core が GPL でなければいつまでも mingw と
分離し続けることもなかったのになぁ
合流して一本化できたかもしれない
866: 2005/07/16(土)02:40 AAS
>>862-864
ソノトオリデスゴメンナサイ...orz
867: 2005/07/16(土)03:04 AAS
実現方法も方向性も全然違うというのに、どうやって一本化するというのか
868: 2005/07/16(土)06:49 AAS
ヒント:EGCSとGCC
869
(1): 2005/07/16(土)16:53 AAS
UNIX用のCコードをWINDOWS CYGWINでコンパイラしようと思ったんだけど、
エラーばっかり出て使えない・・・なんで?
楽したいのに・・・
870: 2005/07/16(土)16:57 AAS
>>869
つ[ちらしの裏]

真面目に質問したいのなら、もっと具体的に書かないと誰もアドバイスできないかと。
871
(1): 2005/07/16(土)17:16 AAS
gcc ファイル名.c > name.txt としてもエラーがリダイレクトできない・・・
872
(2): 2005/07/16(土)17:21 AAS
DOSでやったらコピペできました。
エラーが多いので端折ります
/usr/include/stdio.h:176: error: parse error before "size_t"
/usr/include/stdio.h:196: error: parse error before "fread"
/usr/include/sys/unistd.h:57: error: parse error before "size_t"
/usr/include/sys/unistd.h:59: error: parse error before "size_t"
ファイル名.c:175: error: parse error before "__i"
ファイル名.c:175: error: `__i' undeclared (first use in this function)
等。
CYGWINは最新でgccはsetupで入れ直しました
873: 2005/07/16(土)17:25 AAS
>>872
こんなエラーが100行ぐらい続きます。
他のCコードでも同じようでした。
874
(1): 2005/07/16(土)17:31 AAS
>>871
gcc 2>&1 > name.txt

>>872
インストールが巧くいってないんでないの?
「UNIX用のCコード」ではなく、単純なプログラムを書いてそれで試したら?
875
(1): 2005/07/16(土)17:43 AAS
>>874
ごく簡単なプログラムなどは動くようです。
setupインストールを再度しても同じ結果。
876: 2005/07/16(土)17:46 AAS
んじゃ、その問題の「UNIX用のCコード」でstdio.hをインクルードする前に
マクロか型定義がぶつかっているのではないかな?
インクルードする順番を変えてみるなどしてみるとか。
#さもなきゃその「ファイル名.c」を晒すかな。
877: 2005/07/16(土)17:55 AAS
>>875
874が言ってるのは、(動くかじゃなく)ごく簡単なCソース(例えば
Hello World の出力のみ)ならばきちんとコンパイルできることを
確かめたのか、と言うこと。
それが大丈夫なら、エラーの起こるソースの移植性が悪いだけかも。
というか、初心者のCの勉強だとするとスレ違いだしつきあいきれない。
それと、一番最初のエラーが
/usr/include/stdio.h:176: error: parse error before "size_t"
だったんだよね?
878: 2005/07/16(土)18:21 AAS
>マクロか型定義がぶつかっているのではないかな?
ぶつかってる(conflict)なら、ちゃんとそのエラーが出るけど、
初学者はエラーをきちんと読まない人もいるからねぇ。
まあ、最初のエラーじゃない可能性もあるし。
例えば他に次のコードでも、同じエラーを起こせてますし。

#define __size_t
#include

In file included from sample.c:2:
/usr/include/stdio.h:176: error: parse error before "size_t"
/usr/include/stdio.h:196: error: parse error before "fread"
/usr/include/stdio.h:197: error: parse error before "fwrite"
/usr/include/stdio.h:236: error: parse error before "size_t"
879: 2005/07/16(土)18:47 AAS
すみません解決しました。
どうやら複数のコードがまたがってたみたいで、
コードごとに分けてコンパイルしなきゃいけなかったいです。
_| ̄|○iii
すみません・・・でも勉強になりました。
ありがとうございました。
880: 2005/07/16(土)20:58 AAS
意味がわからんが、関わるだけ無駄というのは分かった。
881
(1): 2005/07/19(火)21:07 AAS
本当に恥ずかしい質問です。
cygwinをインストールしたときにデスクトップにでたショートカットを間違えて消したんですが、どうすればまた起動できますか?
Cドライブの中のフォルダ内は探したのですが、それらしいのはありませんでした。
882
(1): 2005/07/19(火)21:08 AAS
cygwin.bat
883
(1): 2005/07/19(火)21:09 AAS
>>881
俺の場合そのショートカットは"D:\cygwin\cygwin.bat"にリンクされているようだ。
884: 2005/07/19(火)22:08 AAS
>>833
ぐわっ…俺と同じドライブに入れてる…w
885
(3): 2005/07/19(火)22:13 AAS
>>882
>>883
レスありがとうございました。おかげで解決しました!
すいませんが、もうひとつ質問致します。
インストールしてCドライブにできたcygwinをCDに焼いて、オフライン環境のパソコンに移しました。
そこでcygwinを起動したのですが、コマンドプロンプト画面に
bash.exe: warning: could not find /tmp, please create!
と表示され、普通に操作できません。
tmpフォルダがないので出来ないと思い、bash.exeがあるフォルダに作ったのですが無理でした。
どうすればいいのですか?
886
(1): 2005/07/19(火)22:15 AAS
>>885
cygwinはマウント情報をレジストリに持っている
887
(1): 2005/07/19(火)22:17 AAS
>>885
>bash.exeがあるフォルダに作った
which bash の結果と /tmp をじっくり比較しなさい
888
(1): 2005/07/19(火)22:34 AAS
レジストリを読まずに.iniを読むようにするパッチをどっかの人が
作ってたと思うからそっちを調べるとか
889: 2005/07/19(火)22:35 AAS
cygwin上にターゲットがi386-pc-elfのクロスgccをインストールしましたが、
実際にそのgccでお決まりのhelloworldをコンパイルしようとしたのですが、ldに怒られます。
バージョンは、
gcc: 3.4.4
binutils: 2.16
newlib: 1.13.0

エラーメッセージは
/usr/lib/gcc/i386-pc-elf/3.4.4/../../../../i386-pc-elf/bin/ld: crt0.o: No such
file: No such file or directory
collect2: ld returned 1 exit status
890: 2005/07/19(火)22:48 AAS
>>886
>>887
>>888
みなさんレスありがとうございます。
現在、携帯しかオンライン環境がないので、再来週あたりにじっくりやりたいと思います。
本当にありがとうございました。
891
(1): 2005/07/20(水)00:38 AAS
2chスレ:unix より。

Windowsを再インストールした後でcygwinを動かす方法

環境変数CYGDIRを登録
set CYGDIR=D:\cygwin

レジストリを変更
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions]
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin]
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2]
"cygdrive prefix"="/cygdrive"
"cygdrive flags"=dword:00000022
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/]
"native"="%CYGDIR%"
"flags"=dword:0000000a
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/bin]
"native"="%CYGDIR%/bin"
"flags"=dword:0000000a
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/usr/lib]
"native"="%CYGDIR%/lib"
"flags"=dword:0000000a
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\Program Options]
892
(3): 2005/07/21(木)17:42 AAS
cygwinでCのファイルをコンパイルしようとしたら
bash: gcc: command not found
ってエラーが出るんだけど何でか分かります?
教えて下さい。
893: 2005/07/21(木)18:31 AAS
>>892
gccをインストールしていないのでは?
Cygwinのsetup.exeでgccにチェックはしてある?
894: 2005/07/21(木)20:32 AAS
>>892
"command" と "not" と "found" を英和辞書で引いてみれば原因が分かるのではなかろうか
895: 2005/07/21(木)20:47 AAS
>>892
cygwinインストールのデフォルトは"Devel"がOffになっているので、
"Devel"をマウスでいぢくってinstallにする必要がある。
896
(1): 2005/07/22(金)20:53 AAS
漢なら黙ってフルインストール
897: 2005/07/22(金)20:56 AAS
>>896
cygwin以下を除外すればいいけど、ウイルススキャンが時間かかる。
898: 2005/07/24(日)19:36 AAS
>>891
この文はコマンドプロンプトに打ち込むんですよね?
認識されません、などと出てうまくいかないのですが…
899: 2005/07/24(日)19:43 AAS
ポカーン( д)  ゚ ゚
900: 2005/07/24(日)19:51 AAS
AA省
901
(1): 2005/07/24(日)20:21 AAS
釣りじゃないです…助けてください…
902
(1): 2005/07/24(日)20:48 AAS
>>901
まず目的を書け。
903
(1): 2005/07/24(日)21:07 AAS
>>902

>>885を参照ください。オフライン環境で起動させるためです。
904
(1): 2005/07/24(日)21:22 AAS
>>903
コマンドプロンプトからregeditと打ち込んでみるべし。
905: 904 2005/07/24(日)21:26 AAS
あー、変なもん弄るなよ。
マシンが起動できなくなっても俺知らんからねw
906
(1): 2005/07/24(日)22:40 AAS
>>904
レジストリエディタは開けました。ありがとうございます。
そこからcygwinフォルダを開いたんですが、どこに文章を打ち込めばいいのですか?
テキストをレジストリに変えてインポートするのも無理でした。新規で試しましたが出来ませんでした。
907: 2005/07/24(日)22:59 AAS
>>906
cygwin使う前にwindowsの使い方覚えたほうがいいと思う。
908
(2): 2005/07/24(日)22:59 AAS
ダウンロードしたファイル一式持って行ってsetup.exeでローカルインストールした方が早くないか?
909: 2005/07/24(日)23:04 AAS
Cygwinを使うのがまだ早い
910: 2005/07/24(日)23:27 AAS
特殊な理由がなく、たんにシグインをネット隔離マシンにインスコしたいだけなら
>>908の方法をオススメする。
シロートがレジストリエディタいじるのは危険じゃて。
(まあ失敗->後悔するのも勉強だとおもうけど)
911
(1): 2005/07/24(日)23:30 AAS
それではいつまでもシロートのまま。
レジストリなどガンガンいじれ。
そして涙を流せ。
涙の数だけ強くなれるよ。
912
(2): 2005/07/25(月)00:36 AAS
そんな筋の悪いやり方で似非玄人になられても使えない。
913: 2005/07/25(月)01:38 AAS
復旧手段を知っているのなら、いくら破壊しても構わないと思う、が
レジストリの操作が出来ないのなら問題外だね
914: 2005/07/25(月)02:12 AAS
>>908の方法がいちばんいいよ
915: 2005/07/25(月)19:45 AAS
レジストリを初めて触って、間違ってOSが立ち上がらなくなる経験を経て
はじめて一つ賢くなれる。
916: 2005/07/25(月)23:34 AAS
よっぽどバカなんだな。
917
(1): 2005/07/26(火)17:29 AAS
Cygwin自体レジストリもわからないような素人が使える代物じゃないと思うけど…

>>911
同意だな…俺も昔うっかりexeの関連付け、いじっちゃって復旧不能→OS再インストールしたことあるよ…orz
ある程度慣れてくればどこをどういじると危険なのかわかるようになってくるよね

>>912
マニュアルに書いていないトラブルが起きると何も出来ない知識人乙w
918: 2005/07/26(火)17:45 AAS
>>912>>917のようなレスを返すようだと、論理学の基礎を学び直した方がいいぞ。
919: 2005/07/26(火)17:46 AAS
俺の歴史、最初に触れたのはPCDOS6.2だった
helpて打って流れる文字みてるだけだった。楽しかった
飽きてきたのでhelpで流れる文字を打ち込んでみた
全部がなんやら英語だらけで同じメッセージだしてきた。つまんなかった

でも一つだけなにやら立体的なもん出しやがった。楽しかった。
カーソル動かしまくっていろいろ押した。全部押した。
翌日何も動かなくなってた。奴の名前はfdisk
スキルのついた今ならはっきりとわかるfdisk以外が吐いてたメッセージは
引数よこせよばか!!だったんだ

険しい道を選べ、レジストリぐらい屁でもねー
920: 2005/07/26(火)17:51 AAS
ROM BASICとモニタしかなかった頃ならともかく、
その時代にそんなやりかたって非効率すぎ。
単にものの学び方を知らないだけでしょ。
921: 2005/07/26(火)17:58 AAS
サルですな
922: 2005/07/26(火)18:00 AAS
try & errorなんて時代遅れ
923
(1): 2005/07/26(火)18:51 AAS
最先端のやり方教えれ。
924: 2005/07/26(火)20:11 AAS
>>923
喪前様が最先端。
925: 2005/07/26(火)20:11 AAS
Google先生に聞く
926: 2005/07/26(火)20:38 AAS
stringsとstraceしてみる自分は…
927
(1): 2005/07/29(金)01:28 AAS
いくつか質問があります。

1つ目は、ここの

外部リンク:coconut.sys.eng.shizuoka.ac.jp

bmp.h、bmp.c、test0.cをcygwin+gccでコンパイルしてみたら、
きちんとbmpが作成されたんですが、

bmp.h で MAXWIDTHとMAXHEIGHTが1000になっていて、

color data[MAXHEIGHT][MAXWIDTH]

となっているのでスタック領域が2MBを超えているはずなのになぜかうまく動きます。
あと、これをg++でコンパイルしようとしたところ

multiple definition of〜とかになり通らなかったのですがなぜなのでしょうか?

またその後、bmp.hのグローバル変数をbmp.cだけのほうに記述することでそのエラーはなくなり、
g++でもコンパイルできたのですが、その場合実行するとスタックオーバーフロー〜のような
エラーが出ます。

MAXWIDTHとMAXHEIGHTをそれぞれ590あたりにすると2MB以下になるので実行もできたのですが、
なぜ最初の状態でgccでコンパイル、実行したときは1000、1000で出来たものが
上記のように修正した結果スタックオーバーフローが出るのでしょうか?

どなたかご存知の方いますでしょうか?
928: 2005/07/29(金)03:33 AAS
>>927
まずbmp.hのcolor data[なんちゃら][うんちゃら]は定義。
そしてtest0.cのimgは静的変数なんでスタックには配置されない。
だからスタックオーバーフローにもならない。

あとの修正なんちゃらは、シラネ。まあがんがれや。
929: 2005/07/29(金)03:38 AAS
普通にコンパイル通るな。
g++でコンパイルするとmain()に型がないから怒られるけど。
930: 2005/07/29(金)03:40 AAS
つか、これC/C++の話だな。
931: 927 2005/07/29(金)11:29 AAS
>> test0.cのimgは静的変数なんでスタックには配置されない。

とのことなのですが、なぜか

  5 [main] img 1980 handle_exceptions: Exception: STATUS_STACK_OVERFLOW
634 [main] img 1980 open_stackdumpfile: Dumping stack trace to img.exe.stack dump

のようなエラーが出てしまいます。
スレ違いとのご指摘がありましたのでc言語のほうへ行ってきます。
932: 2005/07/29(金)11:57 AAS
外部リンク:coconut.sys.eng.shizuoka.ac.jp
ここにある、bmp.h、bmp.c、test0.c(test1.c)をcygwin+gccでコンパイル+実行すると、きちんとbmpが
作成されたんですが、これを自分なりに修正していくうちにスタックオーバーフローが出るようになりました。
以下はその修正したのを省略したものです。

img.c
------------
#include "bmp.h"

int main(int argc, char** argv) {
 img tmp;
 return 0;
}
-------------
bmp.h
-------------
#define MAXWIDTH 1000
#define MAXHEIGHT 1000

typedef struct {
 unsigned char r;
 unsigned char g;
 unsigned char b;
} color;

typedef struct {
 color data[MAXHEIGHT][MAXWIDTH];
} img;
--------------
933: 932 2005/07/29(金)11:58 AAS
すいません、2chブラウザを使っていて同じタブのままレスしてしまいました。
934: 2005/07/29(金)12:51 AAS
スタックのサイズなんて実行環境によって違うんだから当たり前だろ
935: 2005/07/29(金)13:22 AAS
実行環境以前に Cを理解してないのが問題なので、
もうここでは止める、がよろし。
936
(2): 2005/07/29(金)23:57 AAS
UNIT GenieList;

INTERFACE

USES
SANE, DialogUtils, GFiles, GCommonDec;

PROCEDURE MAIN (lMessage: INTEGER;
lSelect: BOOLEAN;
lRect: Rect;
lCell: Cell;
lDataOffset, lDataLen: INTEGER;
lHandle: ListHandle);

IMPLEMENTATION

PROCEDURE MAIN (lMessage: INTEGER;
lSelect: BOOLEAN;
lRect: Rect;
lCell: Cell;
lDataOffset, lDataLen: INTE

これ何言語かわかりますか?
ファイルの拡張子は.pです。
937: 2005/07/30(土)00:08 AAS
>>936
PASCALじゃないか?
938: 2005/07/30(土)01:53 AAS
ひょっとしたらCかもしれんけどな
外部リンク[html]:www.pro.or.jp

pseudo_pas.h がどこかに隠れてないか探してみろ
939: 2005/07/30(土)02:52 AAS
>>936
つまらん。氏ね。
940: 2005/07/31(日)12:59 AAS
cygwinの最新版をフルインストールしたらsysvinit.shを実行するところでフリーズ。
そのまま一晩放置したところ、空き容量30GByteのハードディスクが満杯に。
復帰するのに3日かかったよ・・・
941
(1): 2005/08/01(月)15:54 AAS
cygwin, gcc ver 3.4.4にてプロファイラが使いたいと思っています。
/*proftest.c*/
#include

int main(void)
{
char ss[80] = "abcdefgh";
char str[80] = "ABCDEFGH";
int i;
for(i=0;i<10000;i++){
strcmp(ss, str);
strncmp(ss, str, 8);
}
return 0;
}

こんなサンプルコードなんですがどうやったらプロファイルができるのか分かりません。

↓のようなコマンドでやってみたりもしましたが
$ gcc proftest.c -p -o proftest

下記のような変なエラーが出てしまいます。
どうすればいいんでしょうか

/*変なエラー*/
/cygdrive/c/DOCUME~1/giko/LOCALS~1/Temp/ccmOHUj1.o:proftest.c:(.text+0x9): u
ndefined reference to `_mcount'
/cygdrive/c/DOCUME~1/giko/LOCALS~1/Temp/ccmOHUj1.o:proftest.c:(.text+0x20):
undefined reference to `_mcount'
/cygdrive/c/DOCUME~1/giko/LOCALS~1/Temp/ccmOHUj1.o:proftest.c:(.text+0x35):
undefined reference to `_mcount'
〜〜以下略〜〜
942: 2005/08/01(月)20:08 AAS
MinGWのcfgmgr32.hってちゃんと動く?
外部リンク[aspx]:support.microsoft.com
をやりたいのだが機能しないような…?
943
(1): 2005/08/01(月)20:56 AAS
>>941
-pじゃなくて-pgを試してみたら。
944
(2): 2005/08/01(月)21:09 AAS
$ gcc proftest.c -pg -o proftest
>>943さん
このコマンドでコンパイルできました、ありがとうございます。

ですが、
$./prof, $profとしても
bash: ./prof: No such file or directory
と言われてしまい目的が果たせません。

プロファイラを実行するのに必要なコマンドってありますか?
945: 2005/08/01(月)21:37 AAS
>>944
gprof

その質問を見るに、なんだか基礎知識が激しく不足してそうね。
946
(1): 2005/08/01(月)22:43 AAS
>>944
$ gcc -pg -o proftest proftest.c
$ ./proftest
$ gprof ./proftest > proftest.gprof
でどう?
947: 2005/08/02(火)11:05 AAS
できた、できた、できました〜〜
>>946さんありがとうございます。

精進してきます。
948
(1): 1 2005/08/02(火)12:56 AAS
>>950
次スレよろ
それとタイトル直してくだちい
cygwin + mingw + gcc相談室ね
949: 2005/08/02(火)13:43 AAS
MinGWだとWinows、mingwだとクロス環境をイメージしてしまう。
cygwin上だからクロスだろ、と言われるとそうかなと思ったり思わなかったり。
950
(1): 2005/08/05(金)04:16 AAS
>>948
当方plala。合点承知した!
951: 2005/08/05(金)16:52 AAS
コンソールを表示するDLLって生成できますか?
952: 2005/08/05(金)21:44 AAS
もっと噛み砕いて、
それどう解釈する?DLLだとなぜできないと?
953: 951 2005/08/06(土)02:09 AAS
あ、思いっきり説明不足だな…すまん…orz
DLLのデバッグにSTDOUT(printf等)を使いたい
プラグインなので親アプリ側で作るのは不可能

で、DLL側でコンソールを表示させられないかと…
954: 2005/08/06(土)02:13 AAS
リストコントロールでもええんちゃうの?Cygwinじゃ多少めんどくさいけど。
955: 2005/08/06(土)02:31 AAS
ファイルにでも出力するとか
956: 2005/08/06(土)03:16 AAS
ファイルにappendで出力して tail -f が一番簡単
957
(3): 951 2005/08/06(土)03:32 AAS
使っているライブラリの出力先がSTDOUT及びSTDERRなのでこれらのメッセージを取れないと
意味ないんです(インタプリタの組み込みをやっているので…)

STDOUTをリストコントロールとかファイルに出力する方法ってあるんですか?
958: 2005/08/06(土)03:42 AAS
>>957
パイプを使うのが王道だけど
外部リンク[asp]:www.microsoft.com
959: 2005/08/06(土)06:04 AAS
AllocConsole()とかじゃ駄目なの?
960: 2005/08/06(土)06:56 AAS
stdoutなりstderrなりをファイルにすればいいだけでは?
961: 2005/08/06(土)09:16 AAS
>>957
リダイレクト
962: 2005/08/07(日)10:25 AAS
>>957

freopen ()
963: 2005/08/10(水)02:42 AAS
gcc-4.1-20050806がビルドできないorz
次のsnapshot待つしかないんですかね…?

../../gcc/libgcc2.c:772: error: unrecognizable insn:
(insn 30 29 31 2 ../../gcc/libgcc2.c:769 (set (subreg:SI (reg:DI 202) 0)
        (if_then_else:SI (eq:SI (reg:SI 203)
                (const_int 0 [0x0]))
            (subreg:SI (reg:DI 202) 0)
            (subreg:SI (reg:DI 202) 4))) -1 (nil)
    (expr_list:REG_NO_CONFLICT (reg/v:DI 200 [ x ])
        (expr_list:REG_NO_CONFLICT (reg/v:SI 198 [ i ])
            (nil))))
../../gcc/libgcc2.c:772: internal compiler error: in extract_insn, at recog.c:20
84
964: 2005/08/20(土)14:09 AAS
MSDNヘルプにCのライブラリを使う場合は
CreateThreadじゃなくて_beginthreadexを使えって書いてあるんですが、
これって"msvcrtを使う場合は"っていう意味でしょうか?
だとしたらcygwinではCreateThreadを使っても問題無しで
mingwでは_beginthreadexを使わなければメモリリーク発生の可能性があり
BCCとか他のVCランタイム使わないコンパイラでは
もちろんCreateThreadで問題無いということでしょうか?
965: 2005/08/20(土)14:27 AAS
CreateThreadはスレッドだけ作ってランタイムの初期化が行われないって
だけだから、結局ランタイムを使いたいときは環境ごとにやり方を調べる
しかない。

Cygwinはpthreadを使わないときつかったような。
966: 2005/08/21(日)18:54 AAS
日本語のMSDNだとCランタイム使用すると必ずリークするみたいに書いてあるけど、
↓にはもう少し詳しい説明があるね

外部リンク[asp]:msdn.microsoft.com

A thread in an executable that calls the C run-time library (CRT)
should use the _beginthread and _endthread functions for thread
management rather than CreateThread and ExitThread; this requires
the use of the multi-threaded version of the CRT. It is safe to call
CreateThread and ExitThread from a thread in a DLL that links to the
static CRT as long as the thread does not call the
DisableThreadLibraryCalls function.
967: 2005/08/22(月)00:34 AAS
ちょっと、ここの人とは環境違うみたいだが・・・適当な場所が思いつかんので・・・誘導プリーズ。
ホストVine Linux、ターゲットi386-mingw32でgccをコンパイルしたら
sys/wait.hがないと怒られるんだが・・・
へるぷみー
968: 2005/08/22(月)07:29 AAS
GCC自体の話ならこっちかな?
2chスレ:tech

素人目にはconfigureでバグorミスってる気がする。
mingwでwait(2)なんて使えるわけないし。
969: 2005/09/01(木)12:04 AAS
保守
970
(1): [age] 2005/09/06(火)02:46 AAS
VCから乗り換えで、cygwinでgccを使い始めたばかりなのですが、
gcc -o test test.c
で生成されたtest.exeはクリックするとcygwin.dllがありませんと出てしまいます。
いわゆるリリース版は、どのように生成すればよいのでしょうか?
御指南をお願いします。
971: 2005/09/06(火)03:27 AAS
>>970
それでリリース版だよ。
VCでコンパイルしたらkernel32.dllやuser32.dllに依存するでしょ。それと似たようなもの。
cygwinで普通にコンパイルするとcygwin.dllに依存した形になるので、
cygwin.dllがパスの通る位置においてある必要がある。
972: 2005/09/06(火)03:42 AAS
-mno-cygwin
973: 2005/09/06(火)05:59 AAS
cygwin1.dll
974
(1): 970 [age] 2005/09/06(火)21:22 AAS
できました。ありがとうございます。m(_ _)m
975: 2005/09/06(火)22:38 AAS
>>974
Cygwin固有のUNIXシステムコールを使う気が無いのなら、MinGWがおすすめ。
976: 2005/09/06(火)23:49 AAS
すなわちそれが mingw
977: 2005/09/07(水)12:54 AAS
すなわちそれが mingwn
次スレもこのままのスレタイで行こうじゃないか

>>980
次スレよろ
978: 2005/09/07(水)13:23 AAS
チキンレース!!!
979: 2005/09/07(水)15:41 AAS
↓よろしく
980
(4): 2005/09/07(水)23:14 AAS
おっ立ててきます。
981
(2): 2005/09/07(水)23:30 AAS
次スレ
cygwin + mingwn + gcc 相談室 Part2
2chスレ:tech
982
(1): 977 [sage 冗談だったのに本当にそのままだ] 2005/09/07(水)23:33 AAS
>>980
983: 2005/09/07(水)23:37 AAS
>>980-981
984: 2005/09/08(木)00:43 AAS
>>982
こら!

>>980-981
おつ
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.027s