Cygwin + MinGW + GCC 相談室 Part 5

このエントリーをはてなブックマークに追加
389デフォルトの名無しさん
mingw32のコンパイラのバージョンは4.5.1だけどCygwinのバージョン
は4.3.4です。GCCのオプションで
gcc -O3 -ftree-vectorize を付けたとき、Cygwinのときはループの
ベクトル化をしてくれますがmingw32のときは失敗してベクトル化
してくれません。どうすればいいですか。
390デフォルトの名無しさん:2010/09/30(木) 10:39:38
mingwではなくcygwinを使えばいいだけでは
391デフォルトの名無しさん:2010/09/30(木) 10:53:15
>ベクトル化してくれません。
どこみたら、してないのがわかるの?
392デフォルトの名無しさん:2010/09/30(木) 11:00:05
C:\cygwin>gcc -march=core2 -msse2 -mtune=core2 -O3 -ftree-vectorize -ftree-vecto
rizer-verbose=5 -o grs3 grs.grs.c: In function 'main':
grs.c:590:7: warning: incompatible implicit declaration of built-in function 'me
mcpy'

grs.c:607: note: not vectorized: data ref analysis failed D.6415_427 = GF[D.6414
_426];

grs.c:592: note: not vectorized: data ref analysis failed D.6401_33 = FG[D.6400_
32];

grs.c:552: note: vectorized 0 loops in function.c
393デフォルトの名無しさん:2010/09/30(木) 11:05:55
?
394デフォルトの名無しさん:2010/09/30(木) 11:12:25
某スレに貼ってたソースだと
grs.c:600: note: LOOP VECTORIZED.
grs.c:549: note: vectorized 2 loops in function.
こうなったけど
395デフォルトの名無しさん:2010/09/30(木) 11:15:53
失敗例
grs.c:552: note: vectorized 0 loops in function.c

成功例
grs.c:572: note: LOOP VECTORIZED.
grs.c:552: note: vectorized 3 loops in function.
396デフォルトの名無しさん:2010/09/30(木) 11:20:32
ソース貼れ
答えだけがほしいなら
397デフォルトの名無しさん:2010/09/30(木) 11:23:39
398デフォルトの名無しさん:2010/09/30(木) 11:30:10
書き方変えたのか知らんが、cygwinのgccでも失敗してるみたいだけど
399デフォルトの名無しさん:2010/09/30(木) 11:35:53
$ gcc -O3 -ftree-vectorize -ftree-vectorizer-verbose=5 -o grs2 grs.c
400デフォルトの名無しさん:2010/09/30(木) 11:37:21
$ gcc -O3 -ftree-vectorize -ftree-vectorizer-verbose=5 -msse2 -o grs2 grs.c
401デフォルトの名無しさん:2010/09/30(木) 11:38:50
fedoraのgcc 4.4.4の結果
$ gcc -g -m32 -O3 -ftree-vectorize -mmmx -msse2 -ftree-vectorizer-verbose=5 grs.c
grs.c: In function ‘main’:
grs.c:590: 警告: incompatible implicit declaration of built-in function ‘memcpy’

grs.c:607: note: not vectorized: data ref analysis failed D.5842D.5842_365 = GF[D.5841D.5841_364];

grs.c:592: note: not vectorized: data ref analysis failed D.5827D.5827_41 = FG[D.5826D.5826_40];

grs.c:552: note: vectorized 0 loops in function.

cygwinは4.3だからかもね
402デフォルトの名無しさん:2010/09/30(木) 11:46:17
VisualStudioにはConfigure makeのビルド環境がないから4.3.4には
戻せそうにないし、どうすればベクトル生成に成功するのかがわからない。
WINで動けばいいのだが、Cygwin環境依存だとアプリにするのが難しい。
403デフォルトの名無しさん:2010/09/30(木) 12:17:12
cygwinのテストパッケージでmingw64-{i686,x86_64}-gcc-4.5系のが無かったっけ?
ちゃんとクロスビルドできるのかまでは知らんけど。
404デフォルトの名無しさん:2010/09/30(木) 12:37:02
欲しいバージョンのgccのソースをダウンロードしてきてcygwin上で ./configure --target=mingw32 でビルドしてみたら
405デフォルトの名無しさん:2010/09/30(木) 13:30:31
コンパイルが済んだものは普通にmake installすれば、mingw32で
動くようになりますか。何かパスを通す必要はありますか?
406デフォルトの名無しさん:2010/09/30(木) 13:42:15
>>402
[ANNOUNCEMENT] New package: mingw64-i686 cross toolchain
http://cygwin.com/ml/cygwin/2010-09/msg00551.html

> The mingw64-i686 cross toolchain set has been uploaded to the Cygwin mirrors.
> It is used to build 32bit Windows applications and programs.


407デフォルトの名無しさん:2010/09/30(木) 14:45:39
./configure --target=mingw32
オブジェクトファイルがコンパイルできないとかいって
makeするときにビルドに失敗した。
408デフォルトの名無しさん:2010/09/30(木) 16:24:42
o=FG[a[j]];
p=FG[b[j]];
a[j],b[j]で参照してるのをFG[j]で参照出来るようにすれば
少しはましになるかも
409デフォルトの名無しさん:2010/09/30(木) 17:30:31
o=FG[a[j]];
p=FG[b[j]];
o+h1[p][i]-2
とか毎回計算してるけど、よく見たら、配列の固定値にできるんじゃないじゃろか?
410デフォルトの名無しさん:2010/09/30(木) 17:44:25
なんか、固定値でxorとってるだけに思えてきた
411デフォルトの名無しさん:2010/09/30(木) 17:51:03
固定値じゃなくて鍵ストリームでは?
それは鍵やIVが変わると変わるので、鍵が固定なら固定値でもいいが、実用上そういうわけにはいかないだろう
412デフォルトの名無しさん:2010/09/30(木) 17:52:47
どうコンパイルしてもコンパイラがエラーになってできません。
値は固定値というよりは256列の行列の中から16パターン選び出す種類を
固有の値として平文にXORしているという感じです。2^32では周期は出
ません。このままだとVisualStudioで作ったものとCygwinで作ったものと
で動作環境に互換性のない暗号として配布しなければならないことになります。
413デフォルトの名無しさん:2010/09/30(木) 18:02:52
libgccがないとかエラーが出ます。
414デフォルトの名無しさん:2010/09/30(木) 18:12:50
互換性のない結果出してるところから、調べたら
何が原因なのかわかってるなら、いいんだけど
415デフォルトの名無しさん:2010/09/30(木) 18:22:18
clでコンパイルすると普通にWindows環境で動きます。
しかし速度や性能でGCCの方が上なのでGCCでコンパイルしたものを
WIN上で動かしたいのです。
416デフォルトの名無しさん:2010/09/30(木) 18:24:15
>>415
cygwinでコンパイルしたものをDosPromptから動かしたらどうなる?
dllが見つからない旨のエラーメッセージが出るだけなら、そのdllにパスを通せば動くんでないかい?
417デフォルトの名無しさん:2010/09/30(木) 18:27:32
>>415
出力が同じなら高速版と通常版の2種類あったって別にいいと思うけど
どのみちSSE載ってない古いCPUじゃ高速版は動かないんだろ、その人たちは見捨てる気か (まぁ別にそれでもいいと思うけど)
418デフォルトの名無しさん:2010/09/30(木) 18:29:33
aとbにもスクランブルかけてるのね。
all0のデータとか突っ込まれたら、パターンがバレそうな気がするけど、気のせいかな
419デフォルトの名無しさん:2010/09/30(木) 18:31:26
でも全員がCygwin使ってるなんて考えられないし、やっぱりWindows
互換のコンパイラで最適化したソフトを配布したいから・・・

ところで安全性の基本原理とか興味ありますか?
420デフォルトの名無しさん:2010/09/30(木) 18:33:22
ありません
ここそういうスレじゃないし
421デフォルトの名無しさん:2010/09/30(木) 18:36:21
つーか、>416は無視ですか、そうですか。
422デフォルトの名無しさん:2010/09/30(木) 18:42:22
無理矢理パスを通せば動きますけど、普通の人がそうするとは思えません。
とくにCygwinを知らない人は。
423デフォルトの名無しさん:2010/09/30(木) 18:44:02
-mno-cygwin
でコンパイルできますか?今(version 4) はできなかったかなあ。
424デフォルトの名無しさん:2010/09/30(木) 18:45:04
libgccをスタティックリンクすれば、いいんじゃないの

buffのmemcpyとか無駄なところを手で最適化したら
425デフォルトの名無しさん:2010/09/30(木) 18:47:09
全部0の値が入っても、行列のどの列の組み合わせかがわからなければ
安全です。因みにどんな組み合わせでも鍵ストリームは0にはなりません。
(当然か)IVはわかってもいいのですが、秘密鍵でスクランブルを
かけているので出力から鍵はわかりません。
426デフォルトの名無しさん:2010/09/30(木) 18:47:43
-mno-cygwinはcygwinのgcc4からなくなったよ。
-mno-cygwinを使うなら、gcc3を使いなさいってことみたいよ
427デフォルトの名無しさん:2010/09/30(木) 18:55:00
-mno-cygwin
コンパイルは通りますけど、どんな意味があるんですか?
ループのベクトル化がしたいのに。
428デフォルトの名無しさん:2010/09/30(木) 18:58:15
そもそもCygwinでGCCのコンパイル出来るんでしょうか。
429デフォルトの名無しさん:2010/09/30(木) 19:02:33
-mno-cygwin
簡単に言うとcygwin.dllに依存しない実行ファイルが出来るってだけ
430デフォルトの名無しさん:2010/09/30(木) 19:06:00
cygwinとかmsys使えば、gccのコンパイルは出来るよ。
最近は、linuxとかでクロスビルドしてる人が増えてるみたいだけど
431デフォルトの名無しさん:2010/09/30(木) 19:09:33
mingw32-gcc -O3 -ftree-vectorize -msse2 -o grs2 grs.c
これを実行するとstdio.hがないとかエラーが出る。
432デフォルトの名無しさん:2010/09/30(木) 19:13:01
-mno-cygwin
削除されたからMINGWを使えって出た。
433デフォルトの名無しさん:2010/09/30(木) 19:13:43
>>431
またお前か
434デフォルトの名無しさん:2010/09/30(木) 19:15:56
msysってどこで手に入るの?
435デフォルトの名無しさん:2010/09/30(木) 19:33:48
(´;ω;)バイナリ配布先書いてあるんだから少しはてんぷら読んでやれよ
かわいそうだろ
436デフォルトの名無しさん:2010/09/30(木) 19:43:36
インストーラのバグのせいでダウンロードできない
437デフォルトの名無しさん:2010/09/30(木) 19:54:53
>>423
>>406でクロスコンパイル
438デフォルトの名無しさん:2010/09/30(木) 20:00:22
本体はどこでダウンロードできるの?
439デフォルトの名無しさん:2010/09/30(木) 20:00:55
-O3を-O2にすると
grs.c:595: note: LOOP VECTORIZED.
grs.c:552: note: vectorized 2 loops in function.
って、なるね。
440デフォルトの名無しさん:2010/09/30(木) 20:04:07
本当だ!すごい!
441デフォルトの名無しさん:2010/09/30(木) 20:05:01
>>438
cygwinのsetup.exeで。
442デフォルトの名無しさん:2010/09/30(木) 20:06:31
ベクトル化出来たけどマルチポストの人でしょ。
部分的に人に教えてもらったようなSIMDが書いてあって、それより簡単なコードがSIMD化されてない。
ていうかみんな静的に用意された固定長の配列なのにアr(ry

それに明らかに不要な計算が混じっていたりして、とてもやる気があるとは思えない。
443デフォルトの名無しさん:2010/09/30(木) 20:11:12
そういうひとだったら、解決した時点でもういないんだろうね。
444デフォルトの名無しさん:2010/09/30(木) 20:13:55
不要な計算ってどこのこと?
445デフォルトの名無しさん:2010/09/30(木) 20:15:56
あ、まだいたのか。
整数演算なんだから、ビットマスクしようがしまいが結果の下位ビットは変わらないよね。
446デフォルトの名無しさん:2010/09/30(木) 20:23:25
配列の添え字を計算するのにランダムな15以下の数を抽出します。
暗号鍵の配列はG[16][16][2]なのでky
447デフォルトの名無しさん:2010/09/30(木) 20:25:30
下位4ビットの値を指定して暗号に使う列を決めます。データは128ビット
の共用体なので型変換なしでいろいろなデータサイズで論理演算を施す
事ができます。いろいろ考えてるんです。
448デフォルトの名無しさん:2010/09/30(木) 20:27:33
最適化はまだ完全じゃないと思います。これから直していくつもりです。
ビットマスクをとることで暗号文から15以下の数を計算してるのです。
449デフォルトの名無しさん:2010/09/30(木) 20:28:17
馬鹿の考え休むに似たりって言葉もあってだな・・・
450デフォルトの名無しさん:2010/09/30(木) 20:32:56
だったら新型を開発しろ
451デフォルトの名無しさん:2010/09/30(木) 20:39:00
4ビット…だと
マスクがいらないって言っているんじゃなくて、下位ビットは変わらないよねっていう話なんだが、4ビットとか言っている時点で最適化以前にそもそもテストしてねーんじゃねーのかって気がしてきた。
中間結果とか確認してるんだろうか。
452デフォルトの名無しさん:2010/09/30(木) 20:43:49
何のためにs5関数があると思っているのだ。
短い周期がない事と、出力の統計が一様分布だということは確認済み。
453デフォルトの名無しさん:2010/09/30(木) 21:06:02
自分でやる気ないのに、何いってんだか
454デフォルトの名無しさん:2010/09/30(木) 21:16:37
ファイルまわりのエラー処理とか不完全なもんを公開するんかね
455デフォルトの名無しさん:2010/09/30(木) 21:23:07
巣に帰れ
456デフォルトの名無しさん:2010/09/30(木) 21:29:01
実装ってより、スクランブルパターンの設計をしただけでしょ
457デフォルトの名無しさん:2010/09/30(木) 21:29:43
まだいたのか・・・。
458デフォルトの名無しさん:2010/09/30(木) 21:58:59
0~255に絞れば、乱数で元データのパターン作れそうだな
459デフォルトの名無しさん:2010/09/30(木) 22:32:45
バイト毎にxorとってるだけだから、解析されるのも速そう
460デフォルトの名無しさん:2010/10/01(金) 00:26:48
あらさがしも歓迎するから解読方法が見つかったら公開してくれ。
461デフォルトの名無しさん:2010/10/01(金) 00:37:24
固定の鍵がソースにハードコーディングされてりゃ解読もなにも・・・
462デフォルトの名無しさん:2010/10/01(金) 03:19:10
16バイト毎に順番入れ替えるとかすると、速度が出なくて没になったとか?
463デフォルトの名無しさん:2010/10/01(金) 03:49:19
PN符号の方が実装は楽だ
464デフォルトの名無しさん:2010/10/01(金) 09:27:21
Cygwin環境でGCCのビルドに失敗します。原因はよくわかりません。
失敗のメッセージはどこに書かれているのでしょうか?
465デフォルトの名無しさん:2010/10/01(金) 09:34:19
パッケージを使わないことが原因ですね。
466デフォルトの名無しさん:2010/10/01(金) 09:36:20
パッケージって何ですか。tar.gzだけではビルド出来ないのですか。
Cygwinは一応全部入ってます。
467デフォルトの名無しさん:2010/10/01(金) 09:40:55
アセンブラメッセージERROR unknown pseudo-op .symver
libstdc++v3/src
ここでエラーが出ます。
468デフォルトの名無しさん:2010/10/01(金) 10:24:02
全部入れるってのも基地外字見てるが、expパッケージまでは入れておるまい。
469デフォルトの名無しさん:2010/10/01(金) 10:33:00
もしかしたらpatchセットがあるのかもしれないということを
疑ってみることさえしないなんて、ある意味尊敬するわ。
470デフォルトの名無しさん:2010/10/01(金) 10:37:47
exp入れればコンパイル出来ますか。パッチセットって何ですか。
471デフォルトの名無しさん:2010/10/01(金) 11:19:37
なんやこいつ
472デフォルトの名無しさん:2010/10/01(金) 11:25:29
xor暗号くんでしょ
473デフォルトの名無しさん:2010/10/01(金) 11:31:02
cygwinのgcc -v
でみれるconfigureでやってみな。オプションが解読できればの話だが
474デフォルトの名無しさん:2010/10/01(金) 11:32:58
クロスコンパイルしようとしてるのなら、target用のbinutilsが入ってないだけでしょ
475デフォルトの名無しさん:2010/10/01(金) 11:33:58
cygwinのmingwクロスビルド用ツールチェーンのパッケージ入れて使えばいいだけなのに
大して意味も無いGCCのビルドをやってるってことか。荒らしって本当にアホだな。
476デフォルトの名無しさん:2010/10/01(金) 13:51:57
minGWつかえよwww
477デフォルトの名無しさん:2010/10/01(金) 14:07:10
TDMで
 Bundle Installer (The easiest install)
  tdm-gcc-4.5.1exe
 20.6 MB
ここ数ヶ月放置してたらかなり進歩したのが出てた。
うれしいな。
478デフォルトの名無しさん:2010/10/02(土) 03:23:06
mingw-w64-1.0-bin_i686-mingw って32bitで64bitターゲットのクロスコンパイラと
64bitのdllが同じ場所に入ってるのか…
64bitと32bitのdllが同じ名前だとローダーも区別できないと思うんだが…
479デフォルトの名無しさん:2010/10/02(土) 03:26:10
え、バイナリの中身見てで64bitと32bitを見分けてるんじゃないの?
480デフォルトの名無しさん:2010/10/02(土) 09:25:17
64bit にも対応してる dll って話だと思うんだけど
481デフォルトの名無しさん:2010/10/02(土) 09:29:08
はあ?
482デフォルトの名無しさん:2010/10/02(土) 09:40:00
w64 の使った事無いから根拠無くイッテミタダケ・・・すまなんだorz
一方は shared でもう一方は static じゃねの?根拠無いけど・・・

今試しに DL してみたけどディレクトリ構成酷いな・・・
もっとスッキリまとめろよと言いたい
483デフォルトの名無しさん:2010/10/02(土) 14:20:31
staticなら.dllじゃなくて.aでしょ
484478:2010/10/02(土) 15:24:20
x86_64-w64-mingw32-objdump.exe -f
で調べると、binutilsやコンパイラは32bitでlibstdc++-6.dll等は64bitとなっていた。

dllのサーチ順の関係で、exeと同じフォルダやSystem32にインストールされるようなdll以外は
64bitと32bitを区別するのが難しいから競合する可能性があるよ。
64bitと32bitを分けて、自家ビルドのプログラムを別の場所にしている場合は
そっちにもdllをコピーしといたほうが安全だと思うな。

>>482
MinGWも以前はlibiconvやlibintlを動的リンクしてたと思ったけど、新しいのは
静的リンクになってるみたいだね。dependencywalkerで見てもkernel32やmsvcrtとか
標準的なdllだけになっていた。

x86_64-w64-mingw32とmingwのフォルダは合計サイズが同じだから
単にコピーしてフォルダの名前をmingwにしただけみたいだ。
485デフォルトの名無しさん:2010/10/02(土) 15:30:42
32ビット,64ビット両対応のgccをビルドインストールすると
ベースが64ビット実行環境なら
bin
bin/32
みたいに32ビットなdllとかは、32のdirに詰め込んでくれるよ、たぶん
486デフォルトの名無しさん:2010/10/03(日) 22:47:52
cygwinダウンロード失敗して何回も何回もアンインストールして
もう一回したらselect Packagesのとこが No packagese foundになってます。
どうしたらいいですか?
487デフォルトの名無しさん:2010/10/04(月) 01:17:39
package path を適当なものに
488デフォルトの名無しさん:2010/10/04(月) 10:22:25
mpc-0.8.2をminGWでビルドしようとするとconfigure --with-mpfr-lib=/libと
やってもlibmpfr not found となり失敗します。mpfrのビルドには成功して
make installしてあります。どうす
489デフォルトの名無しさん:2010/10/04(月) 10:25:49
490デフォルトの名無しさん:2010/10/04(月) 10:27:52
どうすればいいですか
491デフォルトの名無しさん:2010/10/04(月) 11:58:30
libだけじゃなくて、headerとかも指定せんといかんのじゃ
/usr/lib?
492デフォルトの名無しさん:2010/10/04(月) 12:11:09
headerの指定方法を教えてください。
/libにも/usr/libにもライブラリはコピーしてあります。
mpfrのmake checkでエラーがでるのですが、気にしなくて
いいのでしょうか?
493デフォルトの名無しさん:2010/10/04(月) 12:17:54
--with-mpfr-include ってなかったっけ
494デフォルトの名無しさん:2010/10/04(月) 14:06:40
GCCでユニコードの文字を使う方法知りませんか?
例えばSJISの文字をユニコードに変換するやつとか
""で囲まれた文字がユニコードにする方法とか
お願いします。
495デフォルトの名無しさん:2010/10/04(月) 14:09:19
--exec-charset=utf-8 とかなんとか指定したらいいんじゃない
496デフォルトの名無しさん:2010/10/04(月) 14:25:30
そうするとどうなるの?
char a[]="あいう";みたいなこと
やるとaの中のコードがユニコードになるの?
497デフォルトの名無しさん:2010/10/04(月) 14:35:39
>>494
何をやりたいのかもう少し詳しく書いてくれないと答えようがないよ。
「ユニコード」と言ってもいろいろあるけど,UTF-8? UTF-16? あるいはもっと別のエンコーディング?

それとやりたいことは,ユニコードで書いたソースコード内の文字列リテラルを正しく認識させたいと
いうことなの?

そもそもユニコードを使う目的は何?
498デフォルトの名無しさん:2010/10/04(月) 14:40:28
WindowsのプログラムでUnicodeって言ったらUTF-16のことだろ
499デフォルトの名無しさん:2010/10/04(月) 14:59:33
L"あいう"ってだけの話じゃね
500デフォルトの名無しさん:2010/10/04(月) 15:09:45
そんなら>>496に従えば,
wchar_t a[] = L"あいう";
だね。
501デフォルトの名無しさん:2010/10/04(月) 16:15:04
SJISでもユニコードでも何でもいいコードで書いたソースコードの
変数の中にユニコードのデータを保存したい。
502デフォルトの名無しさん:2010/10/04(月) 16:33:33
WバージョンのWIN32 API(::MessageBoxW()とか)に渡すの?
それから「SJISでもユニコードでも何でもいいコードで書いた」ってのは、
「ソースコードは何で書くんでも構わないから」という意味なのか、「どんなエンコードで書いても
大丈夫な方法が知りたい」のか、どっちなの?

聞くときはもうすこし意味がわかるように書いてくれ。
503デフォルトの名無しさん:2010/10/04(月) 16:49:10
wcharがユニコードである保証はないので
どんな環境でもユニコードのデータを保持したいのなら数値を直接書く以外ない

C++0xにはユニコードが追加される予定でgcc 4.5で実装されたはず
504デフォルトの名無しさん:2010/10/04(月) 18:13:39
>>492
./configure --help
をやってみませう
それとエラーは端折らないでコピペしませう
505デフォルトの名無しさん:2010/10/04(月) 18:25:27
binutilをmake installしようとすると libiberty.a.n:Malformed archive
とでてインストールに失敗します、なぜですか。
506デフォルトの名無しさん:2010/10/04(月) 18:31:56
msgid "Malformed archive"
msgstr "おかしな書庫です"
507デフォルトの名無しさん:2010/10/04(月) 18:36:38
makeでコンパイルエラーがでるので適当に書き換えました。
ヘッダファイルとCのソースで定義が重なっている所があったので。
それが原因でしょうか?
508デフォルトの名無しさん:2010/10/04(月) 18:37:26
馬鹿なの?死ぬの?
509デフォルトの名無しさん:2010/10/04(月) 18:39:31
> makeでコンパイルエラーがでるので適当に書き換えました。
ここでお前は死んでいる?
510デフォルトの名無しさん:2010/10/04(月) 18:39:54
エスパー募集か?

コンパイルしてるソフト名すらまともに書けてない
gccのバージョンも一切書いてない
どこをどう変えたのかすら書いてない
511デフォルトの名無しさん:2010/10/04(月) 18:47:56
GCC4.5.0
tc-i386.h 397:extern const struct relax_type *md_relax_table;
tc-i386.h 402:extern int flag_16bit_code;
を其々コメントアウトしました。
512デフォルトの名無しさん:2010/10/04(月) 18:51:06
binutilsのバージョンが妖しい
513デフォルトの名無しさん:2010/10/04(月) 18:55:02
わざとbinutilsのバージョン明示的に聞かなかったらやっぱり書かないんだな・・・
514デフォルトの名無しさん:2010/10/04(月) 18:55:53
binutils-2.9
515デフォルトの名無しさん:2010/10/04(月) 18:57:49
諦めろ
516デフォルトの名無しさん:2010/10/04(月) 18:59:40
ageてんのはここのところ棲み付いてるアイツだろ、触ったら負けだよ。
517デフォルトの名無しさん:2010/10/04(月) 19:22:23
UNIX環境想定のC言語によるプログラミングの練習のために
cygwinをDLしなければならないんですが、PCのHDDが壊れてて
DL時間がやたら長いです。項目はAll install でvim groff man
をskipするやり方です。
ダウンロード先で早いところとかないでしょうか?
1%DLするのにだいたい7分〜15分くらいかかります・・・orz
518デフォルトの名無しさん:2010/10/04(月) 19:25:52
それってVM入れてUbuntuでも使ったほうがよくね?
519デフォルトの名無しさん:2010/10/04(月) 19:28:15
ring serverかmirrors.kernelじゃね
520デフォルトの名無しさん:2010/10/04(月) 19:31:49
HDDが壊れてるのにミラーを変えて解決するわけがない。
521デフォルトの名無しさん:2010/10/04(月) 19:42:11
>>519
それ全然違いますか?
jpやmirrorで
は試しましたが・・・
522デフォルトの名無しさん:2010/10/04(月) 19:43:04
HDD壊れてるのに2ちゃんは余裕で書き込めますからねw
計算以外のアナログコンテツなどはほぼ壊滅的です。

>>518
試してみます
523デフォルトの名無しさん:2010/10/04(月) 19:47:29
cygwinってall installじゃ最新のPCでもめちゃくちゃ時間かかるんじゃね?
100%になったかと思うとtotalじゃないしw
最低何をDLしてりゃCの大部分は使えるんだろう。
524デフォルトの名無しさん:2010/10/04(月) 19:47:43
もうこのあほに触るな
525デフォルトの名無しさん:2010/10/04(月) 19:52:14
あほのほあ〜
526デフォルトの名無しさん:2010/10/04(月) 20:04:17
>>521
さあね、gnu直よりましでしょ。gnuはミラー推奨だけど
527デフォルトの名無しさん:2010/10/04(月) 20:37:15
>>517
とりあえずデフォルトインストール+wgetでapt-cyg使うといいよ。
528デフォルトの名無しさん:2010/10/04(月) 20:42:52
>>517
FAQ
Q. Cygwin は UNIX の勉強に使えますか?
A. Cygwin は UNIX に慣れた人間が Windows 上で楽するのには向いていますが、
  UNIX の勉強には向いていません。
529デフォルトの名無しさん:2010/10/04(月) 21:11:12
俺はcygwin->vm(linux)->linuxの流れでやったけど
530デフォルトの名無しさん:2010/10/04(月) 21:53:50
>>527
そんなコマンドなくてワロタww
やっぱcygwinよりポートランドのほうがいいのかなぁ?
531デフォルトの名無しさん:2010/10/04(月) 22:20:51
Linux入れて実際プログラミングやるやつ何ているの?
アプリ作ってるの?
532デフォルトの名無しさん:2010/10/04(月) 22:28:53
アプリっていってもいろいろあるでよ
533デフォルトの名無しさん:2010/10/04(月) 22:33:44
>>530
お前がそれでいいならそれでいいだろ。
534デフォルトの名無しさん:2010/10/04(月) 22:38:50
Cygwinも使えないのにPGIとか
535デフォルトの名無しさん:2010/10/05(火) 00:07:00
unix系のコマンド使う分にはプログラム関係ないでしょ
536デフォルトの名無しさん:2010/10/05(火) 00:25:17
>>531
電気関係のツールとかLinuxが多くて、それらとリンクするために仕事ではLinuxメインでプログラムしてる。
cygwinは便利だけどmakeが遅いから、Windows用のツールもLinuxで作成して、
Windowsに持ってきてる俺。
537デフォルトの名無しさん:2010/10/05(火) 00:29:07
make もそうだが、 configure が Windows では激しく遅いよな。
ファイルシステムかなんかの都合かねぇ。
538デフォルトの名無しさん:2010/10/05(火) 00:32:57
すげー勢いでforkするからエミュレーションのコストがかさみまくってるんだろう。
以前cygwinスレあたりでshにsedを内蔵させてconfigureを高速化したツワモノがいたはず。
539デフォルトの名無しさん:2010/10/05(火) 01:49:39
>>530
笑う前にググればよかったのに。
apt-cygの公式サイトはすぐ見つかるよ。
540デフォルトの名無しさん:2010/10/05(火) 01:52:51
>>517
> 項目はAll install でvim groff man をskipするやり方です。

どこでそんな変な手順を覚えたのやら
541デフォルトの名無しさん:2010/10/05(火) 02:13:16
>>539
これだけおんぶに抱っこで自分では何も努力しない奴だから、
apt-cygが追加ソフトで外部ツールだと思いもしなかったんだろうね。
542デフォルトの名無しさん:2010/10/05(火) 02:25:37
HDDが壊れかけるんじゃなくて、HDDのコヤシになるものいれすぎて、空き容量不足とか
543デフォルトの名無しさん:2010/10/05(火) 08:08:44
minGWでmpfr-3.0.0をビルドするとmakeの時にFile truncatedというエラー
が出て失敗します。なぜですか。
544デフォルトの名無しさん:2010/10/05(火) 08:17:17
cygwinでspoonwepをコンパイルしたいけど
肝心のソースが無い

545デフォルトの名無しさん:2010/10/05(火) 08:57:25
msgid "File truncated"
msgstr "ファイルが途切れています"
古いbinutilsを使ってるからでしょ
546デフォルトの名無しさん:2010/10/05(火) 09:26:50
次は、gmp-5.0.1でビルドに失敗しますかな?
547デフォルトの名無しさん:2010/10/05(火) 09:28:26
最新のmingwで再インストールをしても同じエラーがでます。
新しいbinutilsにするにはどうすればいいですか。
548デフォルトの名無しさん:2010/10/05(火) 09:29:51
GMPは成功してます。
549デフォルトの名無しさん:2010/10/05(火) 09:31:11
Cygwinでやるとウイルスができてmake checkに失敗します。
げんいんh
550デフォルトの名無しさん:2010/10/05(火) 09:39:39
cygwinかと思ったら、msysですか?
msysは更新されてないから、msysが古いのかもね。
比較的、新しいmsysのパッケージを入れてみたら、状況が変わるかも
何がしたいのか、何をしてるのか、わからんからこれ以上は...
HDDが壊れかけてるといってた人なら、パソコン変えたほうがいいと思う。
情報は小出しにしないように
551デフォルトの名無しさん:2010/10/05(火) 09:42:33
msysなつかしす
552デフォルトの名無しさん:2010/10/05(火) 09:45:51
別人です。
msysのソースをコンパイルしてインストールするのですか。
553デフォルトの名無しさん:2010/10/05(火) 09:57:18
dllがほしいのなら、本家mingwにgmpとかビルドしたのがあるから、それ使ったら
何やりたい(やってる)のかは言わないのね
554デフォルトの名無しさん:2010/10/05(火) 10:04:39
GCCのビルドをやってます。
555デフォルトの名無しさん:2010/10/05(火) 10:17:44
ウイルスの人なら、マシン変えたほうがよさような気がするけど
本家mingwだとgmpのheaderとかもdevのついた奴に入ってるみたいだから
gmpとmpfrとmpcはそれ使ったら
x86用のmingwなgccならわざわざビルドせんでも、配布してるところはいっぱいあるのに不思議
556デフォルトの名無しさん:2010/10/05(火) 10:26:02
配布先が一か所しか知りません。
Winで動くクロスコンパイラなら何でもいいですが、自分の環境が
開発に適合しているのかを試しているのです。
557デフォルトの名無しさん:2010/10/05(火) 10:28:19
558デフォルトの名無しさん:2010/10/05(火) 10:31:36
お前の頭が適合してねー
559デフォルトの名無しさん:2010/10/05(火) 10:37:41
解決しました。全部私が悪かったです。バージョンの古いbinutils
をインストールしてwhich arで調べたら/usr/local/binに入ってた
ので/usr/local/binを全部削除したら直りました。
一部文法エラーが出ますが。バージョン変えてやってみます。
560デフォルトの名無しさん:2010/10/05(火) 12:22:54
>>502
>WバージョンのWIN32 API(::MessageBoxW()とか)に渡すの?
渡しません。ユニコードで文字を処理します。
文字は表示しないで記号として使います。
>>503
gcc 4.5で u"あいうえお"みたいな書き方が出来るってインターネットでかいてあったけど
できませんでした。
561デフォルトの名無しさん:2010/10/05(火) 12:28:09
それはCではなくC++の機能のはずだけど、ちゃんとC++としてコンパイルした?
562デフォルトの名無しさん:2010/10/05(火) 12:29:59
質問者の振りをした荒らしが住み着いてるな……
563デフォルトの名無しさん:2010/10/05(火) 12:37:36
たちがわりいな
564デフォルトの名無しさん:2010/10/05(火) 15:05:33
>>561
アンカーついてないけど>>560に対する書き込みか?
そうじゃないならアンカーくらいつけろ。
ちなみに>>560としたらstd=c++0x風のオプションはつけたぞ
565デフォルトの名無しさん:2010/10/05(火) 15:20:46
無視だな無視。
566デフォルトの名無しさん:2010/10/05(火) 15:33:18
↑小学校でみんなに無視されたやつ
567デフォルトの名無しさん:2010/10/05(火) 15:38:12
煽り・荒らしは華麗にスルー!
荒らしを構う人も荒らしです。

568デフォルトの名無しさん:2010/10/05(火) 15:57:29
MINGWでbinutilsとGCCのコンパイルに成功しましたが、make checkをかけると
WINDOWSエラーが出ます。何か対処方法があったら教えてください。
cc1.exeは動作を停止しました。問題が発生したためプログラムが正しく動作
しなくなりました。
569デフォルトの名無しさん:2010/10/05(火) 16:08:32
test-pexcute.exeが何かをしているようです。
570デフォルトの名無しさん:2010/10/05(火) 17:49:59
msys1.0のdllがはいっているのですが、バージョンを上げるには
どうしたらいいですか。
571デフォルトの名無しさん:2010/10/05(火) 23:24:42
ファイル名をmsys12.dllなど、上げてみてください。
572デフォルトの名無しさん:2010/10/06(水) 11:07:40
make checkに失敗してるのはメッセージを見る限り
新しいdllが読み込めなかったからとかじゃないですか?
make checkするときに新しいdllの場所を一時的にPATHに指定してみてはいかがでしょう
573デフォルトの名無しさん:2010/10/06(水) 15:09:49
cygwinでGCCをコンパイルすると、ウイルスができてしまいビルドできません。
Cygwinをクリーンインストールしても変わりません。MINGWでビルドすると
cc1.exeがmsys1.0.dllで暴走しいるのがGDBで分かりました。無理にビルドする
必要はないのですがどちらが開発に適した環境かわかりません。GCCのビルドが
目標ですが何かアドバイスお願いします。
574デフォルトの名無しさん:2010/10/06(水) 15:33:17
お前には無理だからあきらめろ、というのがもっとも親切なアドバイスな気がするが
聞く耳を持ってはくれないんだろうなあ……。
575デフォルトの名無しさん:2010/10/06(水) 15:59:28
GCCのビルドってそんなに難易度高いんですか?
configure+makeで全自動でできるんじゃないんですか?
一応手順通りにやっているのですが、ウイルスができたり暴走したり
して失敗しているのです。ツールが悪いんじゃないんですか。
576デフォルトの名無しさん:2010/10/06(水) 16:08:34
無理にビルドする必要がないのなら無理にビルドしなくていいじゃない
ツールが悪いのでビルドできません終了、ってことでいいじゃない
577デフォルトの名無しさん:2010/10/06(水) 16:18:21
(´・ω・)もれも GCC ビルド中にウイルス認定されて隔離されるファイルがある
が、それは誤診しているだけ
ちなみに使っているアンチソフトは、ESET(゚∀゚)昔使っていた Norton に戻そうかしら・・・
まぁ某ウイルスソフトの誤診&勝手に削除に比べたら何て事無いけどw

取りあえず、Cygwin の所から必要なの DL して PATH 切って使えば良いじゃん
自前ビルドじゃないといけないのか?
578デフォルトの名無しさん:2010/10/06(水) 17:05:51
バカは放っておけよ
579デフォルトの名無しさん:2010/10/06(水) 17:07:13
GCCなんてかなりスキルを要求される相当難しいレベルのものに手を出すわりに
なんとお粗末なレスをしてるのかと呆れるばかりだ。
580デフォルトの名無しさん:2010/10/06(水) 17:09:57
>>575
> configure+makeで全自動でできるんじゃないんですか?

おいおい……
まさかstage1とかstage2とか全部すっ飛ばしてるんじゃないだろうなw
ちょっとは事前に下調べ位しろよ(ヤレヤレ
581デフォルトの名無しさん:2010/10/06(水) 17:25:45
最後に触ったのがGCC2.95のころだったのでそのレベルで考えてました。
ステージ1?何の事だか分らないので調べます。
582デフォルトの名無しさん:2010/10/06(水) 18:25:45
gccは3回コンパイルされて完成。
583デフォルトの名無しさん:2010/10/06(水) 18:27:12
>>575
成功したといったり、出来なくなったといったり
どっちが正解なの?
どういう環境、どういう手順でやってるかがわからないので、(gccのどのverをビルドしてるのかも)
頓珍漢なレスが帰ってくるだけですよ。
584デフォルトの名無しさん:2010/10/06(水) 18:31:18
少し前からログを読むと判るが、それ、質問じゃないから。
585デフォルトの名無しさん:2010/10/06(水) 18:37:16
少なくとも>>356の頃には既に荒らしが棲み付いていたようだ。
>>400過ぎる頃にはもう目も当てられない状況になってるし。
586デフォルトの名無しさん:2010/10/06(水) 18:41:03
GCCのバージョンは4.5.1です。
Cygwinではconfigure+makeするとウイルス誤認とgenautomata.exe Permission denied
というエラーが出て止まります。
minGWでも同じバージョンでconfigure+makeですがcc1.exeが暴走して
WINエラーで止まります。どっちも失敗してます。正しいビルドの方法が
わかりません。クロスコンパイラを作りたいと思ってます。
必ずしも必要なわけではないのですが、作れないと気持ちが悪いのと、
GCCの方がVisualStudioよりもバイナリの性能がいいので環境依存しない
GCCを使おうと思っています。(依存しないというのは正しくないですが)
WINで動くアプリの制作にGCCを使おうと思っています。
587デフォルトの名無しさん:2010/10/06(水) 18:43:59
気持ち悪いと言って時間潰すのは無駄
出来上がったバイナリ使う方がいいよ
588デフォルトの名無しさん:2010/10/06(水) 18:46:48
msysで4.5だとほげほげしないとビルドに失敗する。(動かないgccがでける)
cygwinでのgcc4.5のビルドはやったことないけど、msysと同じ問題を抱えてるのかも
gcc4.4系でやったら
589デフォルトの名無しさん:2010/10/06(水) 19:01:38
難しいんですねやっぱり。4.4でも試してみます。
因みに、MINGWではmake stage1-bubble,make stage2-bubbleは
成功しています。それでも出来なかったら諦めます。
590デフォルトの名無しさん:2010/10/06(水) 19:03:04
ふつうに出来合いのクロスコンパイラ使え
591デフォルトの名無しさん:2010/10/06(水) 19:06:31
そのつかってるmingwのgccはver4.5じゃないの?
592デフォルトの名無しさん:2010/10/06(水) 19:36:00
使ってるMINGWのGCCは4.5.0でCygwinは4.3.4です。
MINGWでmake compareまでできましたが、make checkで失敗します。
このままインストールするとせっかく動いている環境が破壊される
かもしれないので、今日はここまでにします。
593デフォルトの名無しさん:2010/10/06(水) 19:53:26
まさか、gccビルドするとき
./configure ほげほげ
って、やってないよね
594デフォルトの名無しさん:2010/10/06(水) 20:20:03
何もしてません。>./configure
一応通ります。
595デフォルトの名無しさん:2010/10/06(水) 20:23:16
それ、間違い
596デフォルトの名無しさん:2010/10/06(水) 20:27:39
gccでは推奨されないやり方の方があってるかな?
597デフォルトの名無しさん:2010/10/06(水) 20:36:34
知りません。全く解りません。
598デフォルトの名無しさん:2010/10/06(水) 20:38:52
>>592
> Cygwinは4.3.4です。
cygwinのMinGW32クロスビルド用のGCC4.5はなんで無視し続けてるんだ?
599デフォルトの名無しさん:2010/10/06(水) 20:39:45
もれ configure ほげほげ → make でやってるんだけど、何かおかしいのか?
600デフォルトの名無しさん:2010/10/06(水) 20:40:43
mkdirやって、そこにcdしてから
そこでconfigureとmakeを実行
でわかるかな?
601デフォルトの名無しさん:2010/10/06(水) 20:43:09
>>599
昔はそれでgccのビルドに失敗してたんだけど
最近は、成功するのかな?
602デフォルトの名無しさん:2010/10/06(水) 20:46:06
むしろ最近はディレクトリ作ってそこでconfigureしろって文句言われて止まる
603デフォルトの名無しさん:2010/10/06(水) 20:46:37
>>601
なるほろ、そなのか
取りあえず、もれの環境だと問題無く出来るお
604デフォルトの名無しさん:2010/10/06(水) 20:47:17
stage1とかやってないって言ってるくらいだから、sourceディレクトリと別に
buildディレクトリを作ったりはしてないんだろうね。
GCCのビルドやろうって人間としたらちょっと考えられない蛮行。
605デフォルトの名無しさん:2010/10/06(水) 20:49:02
>>603
それだとGCCの初回のビルドは通るかもしれないけど、
それ以降の手順に進めなくないか?
606デフォルトの名無しさん:2010/10/06(水) 20:52:59
Cygwinの方はエラーが出るので諦めました。
マニュアルの方にはディレクトリ作ってどうのとかいがありますが
作らなくてもできそうなのでやってません。
そのせいでできないのかもしれません。
607デフォルトの名無しさん:2010/10/06(水) 20:53:00
592は途中で止まるっていってるね
608デフォルトの名無しさん:2010/10/06(水) 20:53:58
なんのマニュアル見てるんだか、いまさら
609デフォルトの名無しさん:2010/10/06(水) 20:57:17
gmpとかもmsysほげ.dllに依存したものつくったのかも
610デフォルトの名無しさん:2010/10/06(水) 21:00:06
このスレは教え方が悪い。教える気あるのか。
あれがだめこれがダメ言う前に正しいコマンドでも教えてみろ
611デフォルトの名無しさん:2010/10/06(水) 21:01:19
>>610
センスのない人間は止めたほうがいいんじゃない?
612デフォルトの名無しさん:2010/10/06(水) 21:03:36
613デフォルトの名無しさん:2010/10/06(水) 21:03:54
小出し君は出来ないと怒るのかな
614デフォルトの名無しさん:2010/10/06(水) 21:05:24
make LANGUAGE=c
で出来たよ。余計なものはいらない。
615デフォルトの名無しさん:2010/10/06(水) 21:07:30
はいはい、よかったね
616デフォルトの名無しさん:2010/10/06(水) 21:08:21
configure に --disable-bootstrap やってるから 3-stage は無視してるお(゚∀゚)
617デフォルトの名無しさん:2010/10/06(水) 22:19:44
マニュアルも無視する、検討できる実際の手順やログも出さない、そりゃ釣りとしても低レベル過ぎだわww
618デフォルトの名無しさん:2010/10/06(水) 22:32:06
>>616
libjava作るときにこけるね
619デフォルトの名無しさん:2010/10/06(水) 23:17:04
mingwなgccでgccのmake checkやってるいってたけど
msys用のdejagnuはなかったような?
自力でいれたんかね?
探せばあるみたいだけど...
620デフォルトの名無しさん:2010/10/06(水) 23:32:19
cygwinのパッケージの中に
mingw64-i686-gcc
mingw64-x86_64-gcc
ってのがあるじゃないか
621デフォルトの名無しさん:2010/10/06(水) 23:38:02
>>620
そうそう。もう何回も出てるのにね、その話は。
622デフォルトの名無しさん:2010/10/06(水) 23:46:08
悪いが見落としてた。
いつ頃、入ったの?
623デフォルトの名無しさん:2010/10/06(水) 23:50:56
調べた。
先月の中頃だった。
624デフォルトの名無しさん:2010/10/07(木) 00:41:49
MinGWとEclipse-CDTを組み合わせて使う事は出来ますか?
625デフォルトの名無しさん:2010/10/07(木) 00:43:39
>>618
(´・ω・)Core と G++ しか使ってないですお
626デフォルトの名無しさん:2010/10/07(木) 00:47:12
>>625
javaはダメってことで
昔は、gcc(2.9の頃かな)本体のbuildでこけてたから、知らないうちに進歩してるんだね。
627デフォルトの名無しさん:2010/10/07(木) 01:26:08
>>622-623
>>406のことか?
628デフォルトの名無しさん:2010/10/07(木) 01:30:06
cygwinのパッケージには見えなかったな、申し訳ない
629デフォルトの名無しさん:2010/10/07(木) 01:32:21
そのあとにも前にもcygwinのパッケージって言ってんのにねwww
630デフォルトの名無しさん:2010/10/07(木) 01:40:44
32bitのmingwなdllはここにあるのか
/usr/i686-w64-mingw32/sys-root/mingw/bin/
631デフォルトの名無しさん:2010/10/07(木) 03:44:17
cygwinの環境でgcc-4.5.1をbuildしてみた。

gccのbuildに必要なパッケージをinstall

$ tar xjf gcc-4.5.1.tar.bz2
$ mkdir cygwin
$ cd cygwin
$ ../gcc-4.5.1/configure --disable-win32-registry --enable-languages=c,c++ CC=gcc-4 CXX=g++-4
$ make

の手順で無事終了

make installでこけるかどうかはやってない。make checkも
632デフォルトの名無しさん:2010/10/07(木) 03:53:26
面白い面白い
MinGW4.5.1+Eclipse Heliosで完璧じゃん
633デフォルトの名無しさん:2010/10/07(木) 20:08:33
MinGWとEclipseについての質問です
コンソール画面にprintf()などで出力した文字列が現れるのは
scanf()で入力した後になって頭が混乱するんですけど、fflush(stdout);
なんかを入れるとデバッガで停止します

何とかいい方法はないでしょうか?
634デフォルトの名無しさん:2010/10/07(木) 20:48:34
一例ですが

printf("x = ");
fflush(stdout);
scanf("%d", &x);
printf("y = ");
fflush(stdout);
scanf("%d", &y);
printf("z = ");
fflush(stdout);
scanf("%d", &z);

こんな感じで書かないとコンソール出力がうまく行きません
コマンドプロンプトに出るような感じではうまく行かないでしょうか?
635デフォルトの名無しさん:2010/10/07(木) 20:54:22
改行しても構わなければ\n追加かputsに
行バッファリングだからさ
636デフォルトの名無しさん:2010/10/07(木) 21:03:31
>>635
ありがとうございます
Eclipseのコンソール出力がコマンドプロンプトと挙動が違うので迷ってました
やってみます
637デフォルトの名無しさん:2010/10/07(木) 21:08:21
うーん\nを付けてもだめですね・・・

1
2
3
x =
y =
z =

いちいちfflush()しないとだめというのも気持ち悪いなあ
638デフォルトの名無しさん:2010/10/07(木) 21:12:18
setvbuf(stdout, NULL, _IONBF, 0);
これでいいんじゃね
639デフォルトの名無しさん:2010/10/07(木) 21:16:03
>>638
うまく行きました
ありがとうございます
C++の場合はstd::endlを最後に付けるようにしているので
フラッシュされますが、Cの場合はバッファリングモードそのものを
OFFにしないといけないみたいですね

Eclipseの開発元にコンソール画面のプロパティで設定出来るように
メニューを付けてもらえないかメールを送っておきます
640デフォルトの名無しさん:2010/10/07(木) 21:24:19
clipse統合M30【Java/C++/Ruby/Python/Perl】
http://hibari.2ch.net/test/read.cgi/tech/1280027133/

こんなスレがあったのでここで聞いてみます
何かいい方法があるかもしれません
タイトルの先頭の'E'が入れてなかったので検索に引っ掛からなかっただけみたいです
641デフォルトの名無しさん:2010/10/07(木) 21:36:05
>>639
いや、最後の2行だが、多分だめじゃないかな
バッファリング戦略はstdioの話、つまりユーザが書いてるプログラムのプロセスに
属する問題なので、Eclipseという外部プロセスからどうこうできる話じゃない

ふつーstdioでは標準出力が端末の場合(isatty()が真を返す場合)にのみ
行バッファリングにする
Unixだと擬似端末という仕組みを使ってttyに出力しているようにみせかけることも
できるが、Eclipseは単にパイプで入出力しているんだろうし
Windowsではいずれにせよptyは使えないんだからダメだろう
642デフォルトの名無しさん:2010/10/07(木) 21:42:12
>>641
そういう事情があるんですね
という事はMinGWのコマンドプロンプトはむしろ異端的な環境みたいだと

本当はEclipseからコマンドプロンプトを呼び出せればいいんですが、それは
無理みたいだしC言語の仕様という事で諦めるしかないですかね
643デフォルトの名無しさん:2010/10/07(木) 22:01:15
>>633
syslogに吐き出せ
644デフォルトの名無しさん:2010/10/07(木) 22:04:29
その点Dev-C++はコマンドプロンプト出力だから良かったよな
開発が停止してしまったのは惜しい

Eclipseの真の強力さはそのデバッガにある
645デフォルトの名無しさん:2010/10/07(木) 22:45:09
windows8からコマンドプロンプト無くなるらしいのに
しかもscanfとか、いや何でも無いけど
646デフォルトの名無しさん:2010/10/07(木) 22:46:26
「らしい」とかそんな不確定要素はいらん
647デフォルトの名無しさん:2010/10/07(木) 22:54:40
>>645
どうやってCの勉強するんだ?
648デフォルトの名無しさん:2010/10/07(木) 22:58:03
何らかのコマンドラインインターフェイスは残すだろ
PowerSehell を推したい意向じゃなかったっけ。
649デフォルトの名無しさん:2010/10/07(木) 23:05:22
XPのコマンドプロンプトも全然DOSとは関係ないしな
650デフォルトの名無しさん:2010/10/07(木) 23:10:53
WSH 涙目
651デフォルトの名無しさん:2010/10/10(日) 01:01:17
cygwin環境でmingwなgccをクロス?ビルドしようと思えば出来るね。
msysの立場が微妙だけど、mingw64でもmsysの配布をやってるんだ。
652デフォルトの名無しさん:2010/10/11(月) 16:20:38
キター Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒(。A。)!!
653デフォルトの名無しさん:2010/10/12(火) 15:01:54
mingw32のシェルで日本語の入力ができません。
これは仕様ですか?Cygwinで入力した文字が正しく認識されません。
GCCのバグのようですが解りません。mingwのコンパイラでは同じプログラムで
正常に動きます。日本語処理に詳しい方教えてください。
654デフォルトの名無しさん:2010/10/12(火) 15:11:58
>>653
問題を整理してくれ。問題を一つずつ主語と目的語を明示して書き直すだけでずっと判り易くなるぞ。
655デフォルトの名無しさん:2010/10/12(火) 15:32:54
うん
656デフォルトの名無しさん:2010/10/12(火) 16:12:06
触るなと。
上の方のログ見ればどんな奴かわかるだろ。
657デフォルトの名無しさん:2010/10/12(火) 16:20:44
Cygwinをいじっているうちにおかしくしてしまったようで、
同じプログラムが同じように動きません。文字コードを入力して
表示するプログラムなのですが日本語の2バイトコードが正しく
表示されません。CygwinのGCCでコンパイルするとおかしくなります。
MINGWのコンパイラだと正常に認識します。
もう一つはmingwのシェルですが日本語を入力しようとしても
文字が消えてしまいプログラムに引数渡しができません。
以前は問題なく動いていたと思うのですが今日突然おかしい事に
気づきました。これは今まで気づかなかっただけで普通の現象なの
でしょうか。日本語がコマンドプロンプトから入力できないことは
ないと思うのですができません。
658654:2010/10/12(火) 16:22:54
>>656
すまん。俺が悪かった。
659デフォルトの名無しさん:2010/10/12(火) 23:58:00
>>657
死ね
660デフォルトの名無しさん:2010/10/13(水) 00:02:13
cmd.exe使えって言われないのが不思議
661デフォルトの名無しさん:2010/10/20(水) 23:54:13
質問です。
普通にmsysをインストールして普通に起動したらDELキーを押したとき「~」が出るわ、
lessコマンドの表示でカーソルキーが使えないわで何か変なんですけど、
どう設定すれば正常になるでしょうか?
662デフォルトの名無しさん:2010/10/21(木) 03:30:42
それが正常
663デフォルトの名無しさん:2010/10/21(木) 04:31:55
>>661
× 何か変
○ 何か普通
664デフォルトの名無しさん:2010/10/21(木) 22:43:00
mingw, msys の GNU make で -jN がデッドロックしない版を呉
665デフォルトの名無しさん:2010/10/21(木) 23:47:11
msysでcmdのインターフェースがすごく使いにくいからrxvt使おうとしたら日本語だめだめだった・・
minttyは便利だな。
設定もパッチもいらずにそのままで使えるぜ。
666デフォルトの名無しさん:2010/10/22(金) 08:18:30
ckw 使おうぜ
667デフォルトの名無しさん:2010/10/25(月) 03:01:14
gcc-4.6 で mingwrt-3.18, w32api-3.15-1 を build した後、生成されたファイルを上書きインスコ
試しに以下のソースを build してみたんだけど、出来上がった実行ファイルは動かなかった(´・ω・`)

#include <stdio.h>

int main(int argc, char *argv[])
{
printf("hello, world\n");
return 0;
}

どっちが原因で動かない実行ファイルが作成されるのか試してみたんだけど、どうやら mingwrt-3.18 らしい
とりあえず w32api-3.15-1 は、問題無いみたい・・・上のソースじゃ確認にもならないかもだけど・・・
ちなみに環境は XPSP3 の自前ビルドです

えらいひと修正してくんないかな・・・(´・ω・`)スキル無いもれは他力本願ですスマン
668デフォルトの名無しさん:2010/10/25(月) 03:07:59
>動かなかった(´・ω・`)
を詳しく書かンと相手にされないよ。ソース晒して、追試してじゃ...
669デフォルトの名無しさん:2010/10/25(月) 08:15:22
> (´・ω・`)

コテ付けろ、あぼーんしづらい
670デフォルトの名無しさん:2010/10/27(水) 22:59:27
Cygwinにg++の4.5入れたいんですが、ソースしかありません
コンパイル法を教えていただけないでしょうか
671デフォルトの名無しさん:2010/10/27(水) 23:04:19
TDMでいいじゃん
672デフォルトの名無しさん:2010/10/27(水) 23:08:47
$ gcc-4 -v
でconfigureが出てくるのでそれを改良してやるんだね。
673デフォルトの名無しさん:2010/10/28(木) 00:41:32
>>670
ビルドされたのあるじゃん(# ゚Д゚)プンスコ!!
674デフォルトの名無しさん:2010/10/28(木) 16:09:34
>>670
>>631に書いてある
675デフォルトの名無しさん:2010/10/28(木) 22:22:11
>>667
lto-pluginで
*** Warning: Trying to link with static lib archive ../libiberty/pic/libiberty.a.
ってのが出て、ビルドがこけるぞ
676デフォルトの名無しさん:2010/10/29(金) 00:33:05
>>667
mingwrt-3.18が駄目なときの回避方法を書いてくれ
特に駄目って事ないみたいだけど...
677デフォルトの名無しさん:2010/10/29(金) 04:23:39
>>675
そう言われても・・・

そいえば、libiberty.(a,h) は、binutils のを使った方が良いってググった時に出てきたのを鵜呑みにしてやってるんだけど
実際の所はどうなんでしょうかね?

binutils-2.20.51(20101026) と gcc-4.6(20101023) にある libiberty.h は同じものだったけど、buuild して出来た libiberty.a は
どちらを使えば良いのだろう・・・

>>676
回避方法というか、単に gcc-4.6 で build 仕直した mingwrt-3.18 が NG だったので、gcc-4.5.x で build した時のを使用して
対応しているというだけのことです。

ググっていたら blog に gcc-4.6 の build についてカキコしている方が居たので、参考になるかどうかわかりませんが
ttp://ra1ndog.wordpress.com/2010/10/22/compiling-gcc-4-6-nightlies-on-windows-with-mingw-and-msys/
678デフォルトの名無しさん:2010/10/29(金) 04:36:54
とりあえず、linuxな環境で作ったmingwなgcc4.6でコンパイルしたruntimeだと
問題ないけどね、hello world
君の環境で動かない時にwindows君はなんか文句は言わんのかね?
なにを基準に動かないと言ってるのかいまいち不明
679デフォルトの名無しさん:2010/10/29(金) 04:44:36
>>667
うちは大丈夫
680デフォルトの名無しさん:2010/10/29(金) 04:53:28
677のサイトのやり方だと出来損ないのgccができそうだけど
動かんgccのconfigureのオプションを晒してくれ
681デフォルトの名無しさん:2010/10/29(金) 05:30:01
>>680

binutils-2.20.51
../binutils-2.20.51/configure --prefix=/mingw_new --with-sysroot=/mingw_new --with-build-sysroot=/mingw_new
--build=i686-pc-mingw32 --target=i686-pc-mingw32 --infodir=/mingw_new/share/info --mandir=/mingw_new/share/man
--libdir=/mingw_new/i686-pc-mingw32/lib --includedir=/mingw_new/i686-pc-mingw32/include --enable-64-bit-bfd
--enable-targets=i686-pc-mingw32,x86_64-pc-mingw64 --disable-bootstrap --disable-werror --disable-nls --enable-static
--disable-shared --enable-threads=yes --disable-multilib --disable-libada --enable-libssp --disable-rpath --with-host-libstdcxx=-lstdc++
--with-ppl=/mingw_new/sup --with-cloog=/mingw_new/sup --with-gmp=/mingw_new/sup --with-mpfr=/mingw_new/sup
--with-mpc=/mingw_new/sup --with-libelf=/mingw_new/sup --enable-lto --with-pic --with-zlib --enable-plugins

gcc-4.6
../gcc-4.6-20101023/configure --prefix=/mingw_new --with-sysroot=/mingw_new --with-build-sysroot=/mingw_new
--build=i686-pc-mingw32 --target=i686-pc-mingw32 --infodir=/mingw_new/share/info --mandir=/mingw_new/share/man
--includedir=/mingw_new/i686-pc-mingw32/include --enable-languages=c,c++ --enable-version-specific-runtime-libs --disable-bootstrap
--enable-sjlj-exceptions --disable-win32-registry --disable-werror --disable-nls --enable-static --disable-shared --disable-decimal-float
--enable-threads=win32 --disable-multilib --disable-libmudflap --disable-libada --enable-libssp --disable-libgomp --disable-rpath
--disable-debug --disable-libstdcxx-pch --with-host-libstdcxx='-lstdc++ -lsupc++' --with-ppl=/mingw_new/sup --with-cloog=/mingw_new/sup
--with-gmp=/mingw_new/sup --with-mpfr=/mingw_new/sup --with-mpc=/mingw_new/sup --with-libelf=/mingw_new/sup --enable-lto
--with-system-zlib --enable-fully-dynamic-string --with-pic
682デフォルトの名無しさん:2010/10/29(金) 05:31:07
>>681続き

w32api-3.15-1
../w32api/configure --prefix=/mingw_new --build=i686-pc-mingw32 --target=i686-pc-mingw32 --libdir=/mingw_new/i686-pc-mingw32/lib
--includedir=/mingw_new/i686-pc-mingw32/include

mingwrt-3.18
../mingwrt/configure --prefix=/mingw_new --build=i686-pc-mingw32 --target=i686-pc-mingw32 --libdir=/mingw_new/i686-pc-mingw32/lib
--includedir=/mingw_new/i686-pc-mingw32/include
683デフォルトの名無しさん:2010/10/29(金) 05:41:37
>>678
作成された a.exe を実行すると windows がエラーダイアログを表示
a.exe 単体のエラーで ntdll.dll とか他のを巻き込んでのでは無かったです
ちょと今すぐには確認出来ないので、また後でエラー表示内容をアップしたいと思います
684デフォルトの名無しさん:2010/10/29(金) 05:47:53
> --enable-static --disable-shared
にしてるから、mingwrtにもいるんじゃないだろうか?
685デフォルトの名無しさん:2010/10/29(金) 05:51:15
>>681補足

cloog-ppl-0.15.10
gmp-5.0.1
libelf-0.8.13
mpc-0.8.2
mpfr-3.0.0-p7
polylib-5.22.5
ppl-0.11
zlib-1.2.5
----------
bzip2-1.0.6
dlfcn-win32-r19
libiconv-1.13.1
pthreads-w32-2.9.0
686デフォルトの名無しさん:2010/10/29(金) 05:55:48
よう詰め込んだもんだ
dllとstaticが混在して、環境破壊してるような?
687デフォルトの名無しさん:2010/10/29(金) 06:01:49
mingwrt の configure に static.shared の項目無かったから省いているんだけど
後で試して見ます

すいません、眠くなってきたので取りあえず此処までで・・・
レスありがとうございました(´-ω-`)オヤスミナサイZzzz
688デフォルトの名無しさん:2010/10/29(金) 16:41:23
おはようございます。
これから仕事なので手短に

>>684
mingwrt-3.18
configure: WARNING: unrecognized options: --enable-static, --disable-shared

やっぱり、駄目ですね
689デフォルトの名無しさん:2010/10/29(金) 16:51:41
>>683
windows が表示したエラーダイアログ内容

----------
エラー署名
AppName: a.exe AppVer: 0.0.0.0 ModName: a.exe
ModVer: 0.0.0.0 Offset: 00007fff
----------
690デフォルトの名無しさん:2010/10/29(金) 16:54:03
>>689追記
hello, world も表示されないまま、エラーで落ちます
691デフォルトの名無しさん:2010/10/30(土) 23:10:32
--enable-static --disable-shared
でgcc4.6作って、
692デフォルトの名無しさん:2010/10/30(土) 23:13:21
上の続き
runtimeをBUILDして、hello worldをコンパイルしてみたけど
特に問題はでなかったな。
動くものと動かないものをバイナリーで比較してみるぐらいしか...
693デフォルトの名無しさん:2010/10/31(日) 02:11:21
>>692
そちらは問題無かったですか・・・
多分、もれの環境が原因なのかもですね

一応、動くものと動かないもの(※1)のバイナリ比較はしてみましたが、GCC-4.6 で生成された実行ファイルのサイズは同じものの
中身は違うものでしたね・・・動かないんだから当たり前か・・・orz

もう少し、色々と試してみようと思います

※1
動くもの:GCC-4.5.2 環境で build した mingwrt-3.18 使用時
動かないもの:GCC-4.6 環境で build した mingwrt-3.18 使用時
694デフォルトの名無しさん:2010/10/31(日) 03:10:02
crt2.oがくさそうだから
objdumpで逆汗とかして比べてみたら
695デフォルトの名無しさん:2010/10/31(日) 22:31:34
汗くさそう…
696デフォルトの名無しさん:2010/11/01(月) 21:46:08
MinGWを使用して、
リンカスクリプトというものを勉強しています。
1.勉強に使っているソース Test1.c
  #include <stdio.h>
  int main(void) {
   printf("hoge\n");
   return 0;
  }
2.gcc Test1.cでコンパイル・リンクし出来上がった a.exe をobjdumpで調べたところ、
  > objdump -h a.exe
  a.exe: file format pei-i386
  Sections:
  Idx Name Size VMA LMA File off Algn
   0 .text 000009b4 00401000 00401000 00000400 2**4
   1 .data 00000050 00402000 00402000 00000e00 2**4
   2 .rdata 000000d0 00403000 00403000 00001000 2**4
   3 .bss 000000e0 00404000 00404000 00000000 2**4
   4 .idata 00000294 00405000 00405000 00001200 2**2
 となっていました。また、a.exeは正常に動作します。
697696:2010/11/01(月) 21:47:35
3.最も単純なリンカスクリプトを作りたくて下記をScript1.xの名前で作成しました。
  SECTIONS
  {
   . = 0x00401000;
   .text : { *(.text) }
   . = 0x00402000;
   .data : { *(.data) }
   . = 0x00403000;
   .rdata : { *(.rdata) }
   . = 0x00404000;
   .bss : { *(.bss) }
   . = 0x00405000;
   .idata : { *(.idata) }
  }
4.gcc -T Script1.x Test1.cでコンパイル・リンクしたところ下記のエラーが出ます。
..\mingw32\bin\ld.exe: warning: dot moved backwards before `.rdata'
..\mingw32\bin\ld.exe: section .idata.1 [00403000 -> 00403013] overlaps section .rdata [00403000 -> 004030cf]
..\mingw32\bin\ld.exe: section .bss [00404000 -> 004040df] overlaps section .idata.2 [00404000 -> 00404003]
collect2: ld returned 1 exit status

最低限のリンカスクリプトはどう書けば良いのでしょうか?
参考になるサイト等あれば教えて頂けると助かります。
(/MinGW/mingw32/lib/ldscripts/i386pe.xは見ましたが、
ゴチャゴチャしていて私には理解できませんでした。)
698デフォルトの名無しさん:2010/11/01(月) 21:56:49
エラーメッセージからすると .idata.1 と .idata.2 というセクションがあってそれが指定されてないからアドレスが上手く割り当たってないように見える
*(.idata.*) にしてみたら
699デフォルトの名無しさん:2010/11/01(月) 22:41:43
このへん見てみたら
ttp://www.sra.co.jp/wingnut/ld/ld-ja_3.html
700デフォルトの名無しさん:2010/11/01(月) 22:52:39
>>698
とりあえず
*(.idata$*)
にしたらコンパイルリンクは通りました。
出来上がった a.exe を実行するとまともに実行できず、戻り値が127になったので、
i386pe.xを削る方向でやってみたところ下記で正常動作しました。
SECTIONS
{
  . = 0x00401000; .text : { *(.text) *(.ctors); }
  . = 0x00402000; .data : { *(.data) }
  . = 0x00403000; .rdata : { *(.rdata) ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .; }
  . = 0x00404000; .bss : { *(.bss) }
  . = 0x00405000; .idata :
  {
    SORT(*)(.idata$2)
    SORT(*)(.idata$3)
    LONG (0); LONG (0); LONG (0);
    SORT(*)(.idata$4)
    SORT(*)(.idata$5)
    SORT(*)(.idata$6)
    SORT(*)(.idata$7)
  }
}
↑の何故これだと上手く動くのか私には分かってません。

>>699
見てみます。
701デフォルトの名無しさん:2010/11/02(火) 06:50:03
     ○
    /ヽノ
    ̄ ̄ ̄
702デフォルトの名無しさん:2010/11/03(水) 01:56:07
Dev-c++ 4.9.9.2 に TDM MinGW gcc4.5.1を入れてみたんだけど
「Dev-c++ was unable to find GNU Make with current settings
however there's GNU Make in Dev-c++'s bin directory.」
というエラーメッセージが消えなくて困ってます。
何か追加設定が必要なんでしょうか?
(コンパイル自体は成功している)

4.4.1の時は、Compiler Option の Program タブの
make の所を make.exe になってたのを
mingw32-make.exeに修正すれば、エラーも出ず動いたのに。


ちなみにDirectoriesタブの設定は
Binaries
 C:\MinGW32\bin
Libraries
 C:\MinGW32\lib
C Includes
 C:\MinGW32\include
 C:\MinGW32\lib\gcc\mingw32\4.5.1\include
C++ Includes
 C:\MinGW32\lib\gcc\mingw32\4.5.1\include
 C:\MinGW32\lib\gcc\mingw32\4.5.1\include\c++
 C:\MinGW32\include
にしてあります。
703デフォルトの名無しさん:2010/11/03(水) 02:12:49
>>693
わかったよ、動かない理由が。
runtimeが最適化されてると駄目みたい。
回避策としては、
CFLAGS=-g
とかで、runtimeをビルドする。
どの最適化オプションが影響してるかはわからない
704デフォルトの名無しさん:2010/11/03(水) 03:35:28
>>702
tdmにはmakeは入ってないのでは?
705デフォルトの名無しさん:2010/11/03(水) 04:30:34
>>703
追加情報
gcc/PR44997で報告されてる。
回避方法
runtimeのtlssup.cの
for (pfunc = &__xd_a + 1; pfunc != &__xd_z; --pfunc)

for (pfunc = &__xd_a + 1; pfunc < &__xd_z; --pfunc)
706デフォルトの名無しさん:2010/11/03(水) 11:26:24
>>703>>705
ありがとうヽ(´ー`)ノ
707デフォルトの名無しさん:2010/11/03(水) 11:51:49
上書き後の動作も確認しました
ありがとうございました

本家は、何で fix しないんだろう・・・
708デフォルトの名無しさん:2010/11/03(水) 13:33:48
Invalid.
で止まってるね。なんでだろ?
709デフォルトの名無しさん:2010/11/03(水) 15:12:26
>>705
一応、確認なのですが

runtimeのtlssup.cの
for (pfunc = &__xd_a + 1; pfunc != &__xd_z; ++pfunc)

for (pfunc = &__xd_a + 1; pfunc < &__xd_z; ++pfunc)


ですよね?
710デフォルトの名無しさん:2010/11/03(水) 19:50:25
>>709
そう
もう、4.6の環境消したからあとは自力で
ほかで引っかかる可能性は否定できない...
711デフォルトの名無しさん:2010/11/03(水) 22:03:01
乙でした
712デフォルトの名無しさん:2010/11/04(木) 11:46:40
これやれば、--disable-sharedをやらなくてすむよ
lto-pluginのdllをつくるためのpatch
--- gcc-4.6-20101023/ltmain.sh
+++ gcc-4.6-20101023/ltmain.sh
@@ -5438,7 +5438,7 @@ func_mode_link ()
case " $dlpreconveniencelibs " in
*" $deplib "*) ;;
*)
- valid_a_lib=no
+ valid_a_lib=yes
case $deplibs_check_method in
match_pattern*)
set dummy $deplibs_check_method; shift
713デフォルトの名無しさん:2010/11/04(木) 20:49:38
>>705
mingw64の兄ちゃんはこんな風に修正してる。
ttp://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64/trunk/mingw-w64-crt/crt/tlssup.c?r1=2961&r2=2979

gccの中の人は
ポインタの比較なんかすんじゃね
比較するなら、uintptr_tでやりな
と言ってる。

へえ〜、bugじゃないと思ってるんだって、感じ
714デフォルトの名無しさん:2010/11/05(金) 02:20:27
mingw系特有の現象みたいだ。(他の環境だと再現しないようだ)
-ftree-ccp
が悪さしてるところまでは突き止めた。(-O1以上とペアで有効になる)
715デフォルトの名無しさん:2010/11/05(金) 04:25:01
mingw(特有) の fix は後回しなのかな・・・(´Д⊂グスン
716デフォルトの名無しさん:2010/11/05(金) 05:12:09
tar玉が20100626までは大丈夫みたい。
おかしくなるのは最適化で分岐が消えてるからなんだけどね。

自力で治すか、
出来ないなら、しっかりしたレポートを書いてお願いするしかないでしょう

experimentalに特攻するのもどうかと思うけど...
717デフォルトの名無しさん:2010/11/09(火) 19:03:05
mingwrt に修正入るかな?

mingw crashes with experimental GCC 4.6.0 - ID: 3105314
ttp://sourceforge.net/tracker/index.php?func=detail&aid=3105314&group_id=2435&atid=302435
718デフォルトの名無しさん:2010/11/09(火) 22:19:15
おかしくないか?
719デフォルトの名無しさん:2010/11/13(土) 13:48:02
UTF-8, UTF-16, UTF-32の三つのUnicode符号化形式サポートはまだですか?
720デフォルトの名無しさん:2010/11/13(土) 15:01:56
何のことだ?
721デフォルトの名無しさん:2010/11/15(月) 10:25:48
gcc4.6を気軽にさくっと試せるのは一体いつになるんだ・・・
722デフォルトの名無しさん:2010/11/15(月) 23:21:32
来年の春ぐらいかな?
723デフォルトの名無しさん:2010/11/16(火) 13:19:39
TDMさんの気まぐれ更新を待とう
724デフォルトの名無しさん:2010/11/20(土) 19:39:45
http://sourceforge.jp/projects/mingw-jp/
MinGW日本版

これって使えるの?
私は今入院していて試せるような環境に無いから、誰か感想をお願いします

試せたとしても環境はXP-HOMEだけど
725デフォルトの名無しさん:2010/11/20(土) 20:15:17
動くことは動くだろうが、最終更新日が2004年2月のmingwとか使いたがるやついるのか?
726デフォルトの名無しさん:2010/11/20(土) 20:41:57
日本語化しようとしたけど、gccに文字コード指定が追加されたので放置されたみたい
727デフォルトの名無しさん:2010/11/21(日) 10:17:46
-ja じゃなくて -jp だから日本語化じゃなくて日本化プロジェクトだなw
名前からして先の運命が見えていたようにしか思えないww
728デフォルトの名無しさん:2010/11/21(日) 12:41:18
>>725>>726
がっかり、検索してかなり上に出てたので、中もよく見ずに期待したのに
729デフォルトの名無しさん:2010/11/21(日) 22:31:11
TDM MinGWにしとけ
Eclipseと組み合わせて使ってるけど今の所不都合無し
730デフォルトの名無しさん:2010/11/22(月) 03:06:03
TDMはホント便利。
でもいつアップデートされるのかとかが不安なのがねw
731デフォルトの名無しさん:2010/11/22(月) 13:16:30
TDM 4.6早くビルドして欲しいよな
しかしC++0xでmoveとcopyの論争が起きているので様子見なのか
732デフォルトの名無しさん:2010/11/22(月) 14:49:34
TDMって正式リリースされたもの以外も出すのか?
733デフォルトの名無しさん:2010/11/23(火) 16:27:04
現状のTDM MinGWのgccのversionはいくつなんでしょう
私が1年ほど前試した時は、4.4.1-2 (記録違いだったらすまん)でした
これだと本家の3.4.2(これだと日本語が使えた。現状インストールできるかどうかわからん)
とあるプログラム速度の違いを調べたとき本家の方が2割ぐらい早かったんです。
プログラムの書き方の相性もあるでしょうが、
現状TDMは、どの程度進歩してるのでしょうか?
734デフォルトの名無しさん:2010/11/23(火) 18:41:42
なんで自分でTDMのサイトにいかんのだ?
735デフォルトの名無しさん:2010/11/23(火) 19:30:42
versionは、4.5.1 のようですね。
すいません。前にも言った様に入院しているもので
ネットはのぞくだけで、ダウンロードしてテストができないもので
私の技量が低いもので、
前のものはインストールしないとverがよく分からなかったものですから
736デフォルトの名無しさん:2010/11/23(火) 19:32:11
「前にも言ったように」ってお前が誰かなんて知らんよ。
過去発言を前提にするなら数字コテくらい付けろ。
737735:2010/11/23(火) 19:42:21
>>736
すいません。それぐらいはするべきでした。
自分ではここのところの話の流れからして >>724 から連続して
質問しているつもりでした。
738デフォルトの名無しさん:2010/11/23(火) 20:11:37
お前が退院するころには4.5.2なり4.6.0なりがでとるかもしれんだろ
暇もてあましてるなぁ、コンパイラの心配よりもコードのこと考えろよ
739735:2010/11/24(水) 13:06:38
>>738
コードのことについては、今扱わなければならないコードの簡単な方について
精読しているところです。
ついでに理論やアルゴリズムも調べているところです
あつかわなければいけないコードの複雑なほうはソースだけでも
病院に持ち込めない量があるので、それを解説した資料を見ているだけです
簡単な方を改造して複雑なほう並みの性能をだそうと思っているのですが、
うまくいくかどうかは分かりません
740デフォルトの名無しさん:2010/11/26(金) 00:03:28
「前にも言ったように」ww
2chは便利屋じゃないんですぞ。
741デフォルトの名無しさん:2010/11/27(土) 09:07:22
MinGWとLinux(Redhat)のgccで、動作を切り替えたいのですがどのようにすればよいでしょう?
イメージ
 #ifdef デフォルトでMinGWのみにdefineされている文字列
742デフォルトの名無しさん:2010/11/27(土) 14:28:52
gcc -xc -E -dM /dev/null
を実行して、それっぽいものを探す
743デフォルトの名無しさん:2010/11/27(土) 15:41:52
>>742
ありがとう。linuxのほうに
__linux__
とかあったんでそれを使うことにしました。
744デフォルトの名無しさん:2010/11/29(月) 01:34:42
mingw-get-inst-20101030.exe を利用してインストールすると
gcc.exe、g++.exe、gfortran.exe等は4.5.0のものが入りましたが、gcj.exeは無いようです。

4.4.0にはgcc-javaもあるようですが、gcjを使うには4.4.0のgccパッケージを一つ一つ手動インストールするか
gcjを有効にしたものを自力でビルドする必要があるのでしょうか?
745デフォルトの名無しさん:2010/11/29(月) 01:48:35
> 自力でビルドする必要があるのでしょうか?
自力でpatchを当ててビルドしないとlibjavaのビルド中にこけます。
746デフォルトの名無しさん:2010/11/29(月) 02:18:15
ありがとうございます。
今の私には少しハードルが高そうですし、今すぐ必要というわけでもないので
暇が出来たときに少しずつ勉強しようかと思います。
747デフォルトの名無しさん:2010/12/01(水) 12:48:44
MinGW(特にTDMとか)は、window7 とか Vista 上で動くんでしょうか?
64-bit 版があるので動きそうな気もするんですが。
新しい高速なマシンを買おうかどうか迷っているものですから。
748デフォルトの名無しさん:2010/12/01(水) 13:04:51
動く
749デフォルトの名無しさん:2010/12/01(水) 15:58:02
9xで動くかどうかならともかくVista/7で動くかどうかって・・・
64bit関係ないし・・・
750デフォルトの名無しさん:2010/12/01(水) 16:49:20
TDMに64bit buildがあるんだよ
751デフォルトの名無しさん:2010/12/01(水) 17:18:52
64bitターゲットじゃなくて?
752デフォルトの名無しさん:2010/12/01(水) 18:42:03
mingw-w64のgcc.exeやg++.exeは32bitバイナリなのを知らない人なんだろう
753デフォルトの名無しさん:2010/12/02(木) 19:10:17
XPモードで動かせばいいじゃん
754デフォルトの名無しさん:2010/12/06(月) 19:07:22
XPモードで動かせばいいですね
755デフォルトの名無しさん:2010/12/06(月) 19:26:32
XPモードで動かせばいいのかよ
756デフォルトの名無しさん:2010/12/06(月) 21:38:40
>>752
i686,x86_64の両方とも32bitバイナリなの?
757デフォルトの名無しさん:2010/12/06(月) 21:42:02
cygwinのは32bitバイナリでしょ。
758デフォルトの名無しさん:2010/12/06(月) 22:06:07
そなのか、ありがとう
759デフォルトの名無しさん:2010/12/14(火) 11:02:56
TDM のMinGW を入れてテストし始めてるんだけど
make は、どうするの
昔のものはmsysを入れてたんだけど
今はどうするのが普通なの? MinGWに付いてるmake?
msysを入れるとしたら1.0.10?1.0.11?
760デフォルトの名無しさん:2010/12/14(火) 11:59:45
>>759
俺は面倒臭いんでeclipseを入れている
これなら自動的にmakefileを作ってくれるし
761759:2010/12/14(火) 19:04:05
Java など、あまり使ってみたことが、なかったので(gcjしか)
見よう見まねでEclipse CDT を入れてみたら、中にMinGWとmsysが入っていて
どうもそれを認識しているみたいだ
MinGWの場所の設定の仕方を検索してみたら、
1.eclipse 2.ランゲージパック 3.MinGW 4.msys 5.gdb 6.CDT の順番にインストール
するページぐらいしか引っかからない
みているページが古いのか?
762デフォルトの名無しさん:2010/12/14(火) 19:06:06
古いのですかね
763デフォルトの名無しさん:2010/12/15(水) 00:17:25
>>761
>>759のmake は、どうするの
これは、コンパイラ/ライブラリはTDMのを使い、IDE(Eclipse)を使って
クリック一発でmake(プログラム作成)する方法を教えてってことだろ?
いまのゆとり時代にプログラム開発でIDEを使わない、自分でmakefileを作成する
なんてことは信じられないよな。
で、Eclipseのインストール・設定でトラブっているのか?
764デフォルトの名無しさん:2010/12/15(水) 00:23:00
MinGWとかコマンドプロンプト直書きかバッチで十分だろ。
それで足りないなら統合環境でって感じで。
バッチに"gcc *.c"とでもかいておk・・・ あっ・・・・
765759:2010/12/15(水) 07:22:58
ターゲットが二つ有り、それぞれによって、コンパイル時に定義するマクロを変えたり
したいんですが、makeだとそれなりに分かるんですが、
IDE とかででそういうことができるようになるにはどれぐらいかかるんでしょう
実際、インストール・設定のレベルで出来ていません
766デフォルトの名無しさん:2010/12/15(水) 10:47:35
>>765
eclipseなら左のプロジェクト名を右クリック→Makeターゲットで新規ターゲットを作成し、
再度左のプロジェクト名を右クリック→プロパティ→C/C++一般→パス及びシンボルの
シンボルタブにマクロを定義できる
767デフォルトの名無しさん:2010/12/15(水) 11:00:48
TDM MINGWにGDB付いてますか?
付いてないならどうしたらいいですか?
768デフォルトの名無しさん:2010/12/15(水) 11:07:34
>>767
付いてるよ
769デフォルトの名無しさん:2010/12/15(水) 11:17:10
ついてるなら安心だな。
これでやっと疑問から解決されて
晴れ晴れしい気分で明日を迎えることが出来るよ。
770デフォルトの名無しさん:2010/12/15(水) 11:31:58
eclipse CDTの方が遙かに高機能なデバッガが付いてるんだけどな
これはスレ違いか
771デフォルトの名無しさん:2010/12/15(水) 11:35:50
それはデフォで入ってんの?
それなら俺のコンピューターに知らず知らずのうちに
高機能なデバッガがインストールされていたと言うことが確定されるな。
772デフォルトの名無しさん:2010/12/15(水) 11:48:16
なんか話が食い違ってない?
eclipse CDTのグラフィカルなデバッグ環境はgdbを利用してるんでしょ?

ttp://www.ibm.com/developerworks/jp/opensource/library/os-eclipse-cdt-debug2/index.html

Code::BlocksやQt Creatorも同じだと思うが。
773デフォルトの名無しさん:2010/12/15(水) 13:54:06
変なのに捕まったね
774デフォルトの名無しさん:2010/12/16(木) 00:53:13
すいません。
ひとつ聞きたいことがあります。
学校でプログラミングをコンパイルするときは
***.cのファイルをテキストエディタでつくり、
コマンドプロンプトで
gcc-4 ***.c -o ***.exe

というふうにやっています。
しかし家ではそのようにすると

「'gcc-4' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません」

とでます。家のパソコンにGccはないということでしょうか。

出来る限り学校のやり方に忠実に再現したいので、どうすればよいのか教えていただければありがたいです。
775デフォルトの名無しさん:2010/12/16(木) 01:16:01
>>774
>出来る限り学校のやり方に忠実に再現
なら、学校の人(先生)に家のPC持ってくるから学校と同じようにGCCを使えるようにして
と頼んでね
776デフォルトの名無しさん:2010/12/16(木) 01:22:12
>>775
なんのための相談板?
頭悪いの?
777デフォルトの名無しさん:2010/12/16(木) 01:29:32
マルチポストするような奴にはそれなりの対応しかしないってことだよ
778デフォルトの名無しさん:2010/12/16(木) 02:41:54
>>775
ここには頭の良い奴なんて居ないから学校の頭の良い奴に相談しろ
779デフォルトの名無しさん:2010/12/16(木) 04:35:14
>>774
要するに情報不足。
同じOSでもディストリビューションやリビジョンの細かい差もある。
それ以前に機械のアーキテクチャが違うなら同じの買わないとな。
GCCだけ同じバージョンでもそれは「学校のやり方に忠実」とは言えない。
まぁ、実際にはそこまで忠実でなくてもよいとは思うし、
初心者レベルならとりあえず適当にGCCを入れれば済む話だとは思うけど、
それの判断を第三者に求められても困る。
どの程度忠実であればいいのかを判断できるのは我々ではない。

とりあえず質問に答えるなら、自分がGCCをインストールしていないのであればGCCは無いんだろうということと、
インストール手順は >>1-2 参照ということ。
780デフォルトの名無しさん:2010/12/16(木) 11:29:27
>>774
とりあえずMinGW入れとけ。
それでダメならCygwinな。
781デフォルトの名無しさん:2010/12/16(木) 16:35:39
cygwinのインストールからやりませう。
ttp://discypus.jp/wiki/?Cygwin/%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB

コンパイラはデフォで入らないので、gcc-4をいれませう。
(gccは複数あるので、注意)
782デフォルトの名無しさん:2010/12/16(木) 19:36:28
ばかなの?
783デフォルトの名無しさん:2010/12/16(木) 20:18:22
>「'gcc-4' は、内部コマンドまたは外部コマンド、
>操作可能なプログラムまたはバッチ ファイルとして認識されていません」
環境変数が設定されてないのかgccがインストールされてないかのどちらかじゃないの?

lsコマンドあたりを打ってみてそれも表示されないなら
Cygwinのインストールディレクトリ下のbin(C:\cygwin\binとか)を
環境変数pathに追加すればいい
784デフォルトの名無しさん:2010/12/16(木) 22:25:35
>>774
ばかなの?
785デフォルトの名無しさん:2010/12/17(金) 01:03:12
Linux環境ごっそりもってくるのではなく
bash、make、その他基本的なコマンド少々だけがほしいんですけど
そういう場合はCygwinではなくMinGWを選択するのが正解なんですか?
786デフォルトの名無しさん:2010/12/17(金) 01:07:28
何したいかによるから、正解は自分で見極めないと
787デフォルトの名無しさん:2010/12/17(金) 01:11:57
>>785
「基本的なコマンド」とか言われてもわからないよ。すくなくともMinGWにはbash含まれてないだろ。
とりあえずCygwinだと大げさすぎるっていうんならMSYS使えばいいんじゃね。
788デフォルトの名無しさん:2010/12/17(金) 05:09:19
>>774
これうけるしネタとして面白い

何故かって>>774の質問を「Cygwin + MinGW + GCC 相談室 Part 5」なんてスレッドに投稿してて、
それがすでに答えになってるからね。

つまりはマルチポストなんだろう、ということはわかるが、そうじゃないとしたら面白い
789デフォルトの名無しさん:2010/12/17(金) 09:51:30
>>785
欲しいものだけ入れたいならUNIX-like toolsのような個々のコマンドの移植版を
必要に応じて入れるってのが普通なんじゃないの?
790デフォルトの名無しさん:2010/12/17(金) 09:54:37
791デフォルトの名無しさん:2010/12/17(金) 10:06:27
そもそも現時点で Cygwin の gcc-4 をインスコするのは、
とくに >>774 にとっては地獄のような難易度だろうな。

せんせーが持ってる Cygwin のインストールキット一式をコピーさせてもらえ!




legacyすなわち1.5を見つけるのが一苦労。setup-legacyにて出てくる
エイゴのコワイ文言にひるむ。あげくのはてはこのスレじゃなかった板に再び爆撃。
792785:2010/12/17(金) 18:47:12
レスどうもです
MinGW+MSYSというのがちょうどいい感じだったので導入しました
793デフォルトの名無しさん:2010/12/18(土) 14:31:52
UNIXコマンドのいくつかを利用し始めると、だんだん別のが使いたくなって、
結局、Cygwin入れといたほうがいいということもある
794デフォルトの名無しさん:2010/12/18(土) 16:07:18
Cygwinは見た目がダサい
795デフォルトの名無しさん:2010/12/18(土) 16:35:53
折角なら andLinux 入れちゃえば?
796デフォルトの名無しさん:2010/12/18(土) 19:08:27
ナイスで素敵な林檎にしなさい
797デフォルトの名無しさん:2010/12/18(土) 21:30:57
ナイスで素敵な林檎にしなさいですね
798デフォルトの名無しさん:2010/12/19(日) 13:08:22
gcc-4.5.2
799デフォルトの名無しさん:2010/12/19(日) 14:30:17
cygwinでいらない機能だけアンインストールするのはどうすればいいですか?
800デフォルトの名無しさん:2010/12/19(日) 14:32:25
setup.exeから指定
801デフォルトの名無しさん:2010/12/19(日) 14:39:25
>>800
ありがとうございます
802デフォルトの名無しさん:2010/12/19(日) 16:00:02
>>801
いえいえ
803759:2010/12/22(水) 22:36:46
私はeclipse 向いていないかもしれない
取りあえず、msys 1.0.10 を入れてTDMが早いのを確認したので
そのまま、試行錯誤の末、Europaにpleiades-all-in-one-cpp-jre_20080303.zipを上書きして
何とか実行可能が動くところまではいったんだが
-finput-charset=cp932 -fexec-charset=cp932
を設定しないと動かないプログラムを抱えていて、設定の仕方も分からないのでついでだから
makefile プロジェクトを試すと
org.eclipse.cdt.internal.core.index.IWritableIndex.getPrimaryWritableFragment()Lorg/eclipse/cdt/internal/core/index/IWritableIndexFragment;
という内部エラーが出てなかなかそれ以上前に進めない。
eclipseの設定自体誤っているのでしょうか?
夜の1、2時間しかなかなか時間が取れないものでなかなか色々試せない
804デフォルトの名無しさん:2010/12/24(金) 09:30:31
cygwinにはTDM GCCがないから古い環境でしか
できないんですか?
805デフォルトの名無しさん:2010/12/24(金) 10:11:13
806デフォルトの名無しさん:2010/12/25(土) 20:57:30
低レベルな質問で申し訳ないんだが、CDTで
実行可能のプロジェクトで-finput-charset=cp932 -fexec-charset=CP932 などの
コンパイルオプションは、どこで設定できるのでしょうか
シンボルの設定箇所しか見当たらない。探し方が悪いのでしょうか?
807デフォルトの名無しさん:2010/12/27(月) 13:09:25
探せばある。
808デフォルトの名無しさん:2010/12/27(月) 15:07:21
MSYS+MINGW=CYGWIN
ですか?
809デフォルトの名無しさん:2010/12/27(月) 15:16:02
いいえ違います
810デフォルトの名無しさん:2010/12/27(月) 15:17:21
えっ・・・・
811デフォルトの名無しさん:2010/12/27(月) 15:40:32
POSIX 互換レイヤを用意してその上に Unix 由来のソフトウェア群 (コンパイラ等の開発ツールも含む) を載せたものが Cygwin 。
互換レイヤを指して Cygwin と云うこともある。
Unix と Windows の差は互換レイヤで吸収するので移植は簡単だが、
互換レイヤを経由するので若干パフォーマンスが低下する。
特に I/O 関連は性能の低下が著しい。

Mingw は GCC を Windows で動かせるようにしたもの。
GCC を使うにあたって最低限のツール類も含んでいる。
Msys は Mingw に加えて Unix Like なツールを移植したものとかのパッケージ。
Mingw や msys は互換レイヤを使わないので移植の際は面倒な部分が多いかも。
812デフォルトの名無しさん:2010/12/27(月) 15:55:23
msysはcygwinからのforkだろ
813デフォルトの名無しさん:2010/12/27(月) 16:02:21
msys+mingwはAutotools(configure, make, etc...)を使うための最低限の環境。
Cygwinだと大げさすぎるとかPOSIXレイヤに依存しないとかいう時に便利。
あと、Cygwinの互換レイヤのライブラリがGPLなんだよね。
814デフォルトの名無しさん:2010/12/27(月) 20:03:57
pathの扱いがどれもこれも違いすぎて
815デフォルトの名無しさん:2010/12/27(月) 20:34:37
インストーラで普通にインストールしたらサーチパスにカレントディレクトリが入ってて
某言語処理系のビルドのときにハマった。
いらんことするなと小一時間問い詰めたい。
816デフォルトの名無しさん:2010/12/29(水) 10:17:00
msysがダウンロードできる場所がわかりません。
一杯ファイルがありすぎてどれかわかりません。
817デフォルトの名無しさん:2011/01/02(日) 09:48:22
MinGWのgrepで、UTF-8でエンコードされているテキストファイル(日本語を含む)をgrepすることは、今可能でしょうか。MinGW-shellでやってみたのですが、うまくいきませんでした。
818デフォルトの名無しさん:2011/01/03(月) 09:36:38
CCとかって定義されていないとおもうんですけど
linuxとかだとできるんですか?
全然分かりません教えてください。
819デフォルトの名無しさん:2011/01/05(水) 22:43:49
>>793
お前は俺だな
820デフォルトの名無しさん:2011/01/05(水) 22:45:41
>>817
mingwはUTF-8対応していないのか?cygwinの1.7以降なら特に問題ないが
821デフォルトの名無しさん:2011/01/06(木) 00:46:31
>>820
そんなわけないじゃん
822デフォルトの名無しさん:2011/01/06(木) 00:49:13
>>816
MSYS-1.0.11.exeとか
823デフォルトの名無しさん:2011/01/06(木) 08:00:19
mingw-get-inst-ほげほげでmsysがいれられない?
824デフォルトの名無しさん:2011/01/06(木) 08:17:46
cygwinて標準installだと当たり前のごとく使うコマンドがぼろぼろ抜けちゃうよね。
んで、面倒なんで全部にすると入れるのに時間が掛かる。
標準と全部の間にもう少し選択肢を入れてもらえないかと思う。
825デフォルトの名無しさん:2011/01/06(木) 12:54:17
まるで標準と全部以外に入れられないかのような言い草だなw
826デフォルトの名無しさん:2011/01/07(金) 11:56:32
>>822
MSYSの公式ホームページによると
msys1.0.0.11をいんすとーるしてから
msys coreとかをコピーするみたいなことかいてあるんだけど
全然意味わかりません。
最新のバージョンだとmingw getみたいなプログラムつかうんでしょ。
もっと詳しく教えてください!!
827デフォルトの名無しさん:2011/01/07(金) 13:46:59
msysのbinフォルダーは環境変数に入れて
ドスプロンプトから使えるようにしてもいいんですか?
828デフォルトの名無しさん:2011/01/08(土) 01:49:30
それが普通の使い方
そして最終的にCygwinに落ち着く
829デフォルトの名無しさん:2011/01/08(土) 22:37:21
スレ違いならスルーして下さい。
MinGwを使っておりますが
http://keicode.com/winprimer/wp12.php
のプログラム(106行あります)を
gcc -o sample.exe sample.cpp -mwindows
とコンパイルすると

  simple2.cpp: In function 'int WinMain(HINSTANCE__*, HINSTANCE__*, CHAR*, int)':
  simple2.cpp:22:14: warning: converting to non-pointer type 'UINT' from NULL
  simple2.cpp:47:7: warning: passing NULL to non-pointer argument 1 of 'HWND__* Cr
  eateWindowExA(DWORD, const CHAR*, const CHAR*, DWORD, int, int, int, int, HWND__
  *, HMENU__*, HINSTANCE__*, void*)'

ってwarningが出ます。実行はできます。
VC++では正常にビルドできます。
mingwの設定に何か問題あるのでしょうか。
はじめてwinmain関数…というかwindowsプログラミングをします。
830デフォルトの名無しさん:2011/01/08(土) 22:56:08
あ〜 ものすごい長い間悩んでいたのに何か私の使い方が
間違えてるっぽいことがわかりました。

何がいけないのかまだはっきりわかりませんがもう少し悩んでみます。
スレ汚しすいません。
831デフォルトの名無しさん:2011/01/09(日) 01:58:04
>>826
mingw-get-inst-ほげほげ.exeを起動して
select componentで
MSYS Basic System
を選択すればいいのでは?
832デフォルトの名無しさん:2011/01/09(日) 14:03:02
巷に売ってるLinuxネットワークプログラムの類の本は、Cygwin+GCCでいけますか?
833デフォルトの名無しさん:2011/01/09(日) 16:05:24
いけてます
834デフォルトの名無しさん:2011/01/10(月) 09:32:51
cygwinフルダウンロードで2ギガ近くあるな。
835デフォルトの名無しさん:2011/01/10(月) 14:47:59
HDDを換装したのでEclipse-CDTを再インストールした

http://mergedoc.sourceforge.jp/

ここのHeliosに限るな

おっとTDM-MinGWは別途先にインストールしておく事をお勧めする
本家CDTは英語版なのでEUCテキストの日本語が化けたり使い勝手が悪い
836デフォルトの名無しさん:2011/01/10(月) 19:55:05
>>832
いけてるよ
837デフォルトの名無しさん:2011/01/11(火) 13:03:05
>>834
そもそもフルダウンロードするような類のものじゃないからいいんじゃね?
838デフォルトの名無しさん:2011/01/11(火) 15:46:10
わからないひとはだまっててください
839デフォルトの名無しさん:2011/01/11(火) 22:34:13
>>837
お願いですから、だまっててください
840デフォルトの名無しさん:2011/01/12(水) 03:40:49
その話もう終わってるから
841デフォルトの名無しさん:2011/01/12(水) 17:26:17
cygwinをフルインストールするやつは相当アホウ。
842デフォルトの名無しさん:2011/01/13(木) 09:52:19
>>835
それには、本家MINGWが入っているのですが、どうやってそれを外すのですか?
843842:2011/01/13(木) 11:25:25
すいません。自己解決しました。
削ったら動きました
844デフォルトの名無しさん:2011/01/15(土) 08:21:50
cygwinについて調べてみた。違うところあったらおしえて。
cygwinはlinuxのアプリケーションを実行することは出来ない。
cygwinにあるautoconfigとautomakeをwindowsで使えば
linux用のソースコードをwindowsの実行ファイルとしてコンパイルできる。
ただしcygwinのダイナミックライブラリーが無いと実行できない。
Msysを使えばダイナミックライブラリーがなくても実行できるが
コンパイルできないソースコードがある。
845デフォルトの名無しさん:2011/01/15(土) 10:12:03
× autoconfig Msys
○ autoconf MinGW
846デフォルトの名無しさん:2011/01/15(土) 10:45:31
x ダイナミックライブラリー
847デフォルトの名無しさん:2011/01/15(土) 10:51:57
cygwinについて調べてみた。違うところあったらおしえて。
cygwinはlinuxのアプリケーションを実行することは出来ない。
cygwinにあるautoconfとautomakeをwindowsで使えば
linux用のソースコードをwindowsの実行ファイルとしてコンパイルできる。
ただしcygwinのダイナミックリングライブラリーが無いと実行できない。
Msys+MinGWを使えばダイナミックリンクライブラリーがなくても実行できるが
コンパイルできないソースコードがある。
posixを使わなければ絶対コンパイルできる。
848デフォルトの名無しさん:2011/01/15(土) 10:54:55
×ダイナミックリングライブラリー
×posixを使わなければ絶対コンパイルできる。
849デフォルトの名無しさん:2011/01/15(土) 11:07:35
cygwinのgccの標準ライブラリーはposixを使っているので
cygwinでコンパイルしたソフトはどんなソフトでもダイナミックリンクライブラリーが必要である。
よってcygwinではGPLのソフトウェアしかつくることができない。
MinGW+M-SYSならGPL以外のソフトウェアを作ることが出来る。
850デフォルトの名無しさん:2011/01/15(土) 11:21:30
windowsなバイナリを作りたい時はmingw系を使う
unixなバイナリがほしい時はcygwinを使う
でしょ
851デフォルトの名無しさん:2011/01/15(土) 14:30:55
標準ライブラリーでもダイナミックリンクライブラリー必要?
852デフォルトの名無しさん:2011/01/15(土) 14:52:31
必要
cygwin-gcc使った場合は、HelloWorldですらcygwin1.dllとcyggcc_s-1.dllを要求される
853デフォルトの名無しさん:2011/01/15(土) 15:15:51
単なる標準入出力でさえ Windows と POSIX の実行モデルは違う。
そもそもプロセスの生成からエミュレートが必要なので、 Hello World どころか何もしないバイナリでも必要だよ。
854デフォルトの名無しさん:2011/01/15(土) 16:01:42
実行時の初期化部分がcygwin1.dllにあるんだから、依存するのはしょうがないでしょ
windowsはmsvcrt.dll
855デフォルトの名無しさん:2011/01/15(土) 16:13:49
code::blocks
856デフォルトの名無しさん:2011/01/15(土) 17:02:32
×windowsは
857デフォルトの名無しさん:2011/01/15(土) 17:10:53
昔あった-mno-cygwinて無いのかな
858デフォルトの名無しさん:2011/01/15(土) 19:51:42
普通にあるよ
859デフォルトの名無しさん:2011/01/16(日) 23:56:36
>849
×よってcygwinではGPLのソフトウェアしかつくることができない。
cyggcc_s-1.dll (gcc ランタイム) も cygwin1.dll (Cygwin ランタイム) も例外条項がついてる。
cygwin が OSI 認定オープンソースライセンスであることを要求するのでオープンソースライセンスで
ある必要はあるけど GPL である必要はない。

>857 >858
gcc-3 にはあるけど gcc-4 にはないので代わりに MinGW クロスコンパイラを使う。
860デフォルトの名無しさん:2011/01/17(月) 11:29:30
DLL依存はGCCだけ関係するんだから
M-sys+minGWじゃなくてcygwinのGCC以外のツール+minGWが最強なんじゃないのか?
861デフォルトの名無しさん:2011/01/17(月) 13:41:20
cygwinでconfigureとか走らせると死ぬほど遅いし
どうせmingwターゲットでクロスコンパイルするならLinux上でやったほうがいいんじゃね
Windows機なら、VirtualBoxでもいい
cygwinよりはマシだと思う
862デフォルトの名無しさん:2011/01/17(月) 13:43:39
それ言い出したらLinuxでMinGWを使うのが最強ってことになり実際そうである
863デフォルトの名無しさん:2011/01/17(月) 14:23:33
>>862
そうだよね

GNU系のツールセット使うんなら、ファイルシステムやshell系のツール等が
Unix-likeでないと色々不便

cygwinでは擬似的にそれを達成できるけど、forkやファイルアクセスが非常に遅いので
プロセスを大量に生成しコンパイルするmakeのような作業に不向き

ということで、早々にLinuxでクロスコンパイルがベストという結論になったよ
864デフォルトの名無しさん:2011/01/17(月) 19:00:01
colinux
865デフォルトの名無しさん:2011/01/20(木) 06:38:25
ディストリによってはmingw系のパッケージが充実してるし
866デフォルトの名無しさん:2011/01/20(木) 14:46:02
colinuxってx86のみじゃなかったっけ?
cygwinもだけど、cygwinはただのユーザモードアプリだからAMD64でも動くわな

いまだとVirtualBoxのほうがいいんじゃない
867デフォルトの名無しさん:2011/01/20(木) 17:03:18
andlinux

BOW
868デフォルトの名無しさん:2011/02/01(火) 00:41:41
ふう
869デフォルトの名無しさん:2011/02/03(木) 23:32:14
Cygwinコマンドのcatというコマンドボタンを
cygwin画面で使いたいんです。
cat (option)[file name]が形式何ですか、file name=ten.txtとします。

cat option ten.txt

としたんですが、エラーが出ました。
optionって何ですか?optionコマンドってあるんでしょうか?
870デフォルトの名無しさん:2011/02/03(木) 23:37:22
すいません、質問取り下げます。
871デフォルトの名無しさん:2011/02/04(金) 03:57:44
cygwinでsshd立てたんですが、接続してきた人がcygwinの外に出られないようにすることって可能ですか?
872デフォルトの名無しさん:2011/02/04(金) 10:26:51
よく知らないけどファイルの所有権を
sshdを立てるユーザだけ除外すればいいんじゃないの
873デフォルトの名無しさん:2011/02/04(金) 10:31:11
というかunix板のスレで聞いたほうがいい
http://hibari.2ch.net/test/read.cgi/unix/1268282846/

ム板にあるこのスレは大雑把に言うとcygwin/mingwで作るスレで
そっちは使うスレという分類になる
874デフォルトの名無しさん:2011/02/04(金) 11:20:49
プログラミング無関係
875デフォルトの名無しさん:2011/02/15(火) 11:09:12
どうしてもcygwinでしかコンパイル出来ないライブラリ(DLL)をVC(VS2008)から使いたいんだけどアクセス保護エラーが出て使えないんだけど誰か使ってる人いる?

http://bbs.preboss.org/forum.php?mod=viewthread&tid=52472
の一番下にあるコードで自作のtest.dllは動いたんだけどmainに
char buf[2048]
とか入れるだけで動かなくなる。

静的リンクの方法もあるみたいなんだけど良く解らんorz
http://www.cygwin.com/faq/faq.programming.html#faq.programming.msvs-mingw
876デフォルトの名無しさん:2011/02/16(水) 03:19:55
__stdcall __cdecl じゃなくて?
877デフォルトの名無しさん:2011/02/16(水) 20:14:49
#define reserved_stack_size 8000h
よ〜わからんけど、ここをいじるんじゃないの?
878デフォルトの名無しさん:2011/02/16(水) 21:09:50
TDM版MinGW4.5.1、なんか重いなぁ・・・。
879デフォルトの名無しさん:2011/02/16(水) 22:25:19
mingw-get-inst-20110211.exe で、MinGWとMSysインストールしたら、
Aviraでウィルスが検出された。

C:\MinGW\libexec\mingw-get\gui.exe
[検出] TR/Spy.9216.58 トロイの木馬です
880デフォルトの名無しさん:2011/02/16(水) 22:49:54
ひとり脱落。
881デフォルトの名無しさん:2011/02/16(水) 23:48:35
>>875
「VCから使う」ってのがよく分からんけど、別プロセスにして呼び出すんじゃダメなの?
882デフォルトの名無しさん:2011/02/17(木) 00:27:52
難しいことをやろうとしてる自覚がない人には何言っても...
883デフォルトの名無しさん:2011/02/17(木) 14:53:08
cygwin入れてgccのバージョンは3.44です。
std::tr1::shared_ptr使いたいんですが、何をincludeすればいいんですか?
'std::tr1'has not been declared でエラーなります。

g++ test.cpp -o test
って感じでコンパイルしてます。
884デフォルトの名無しさん:2011/02/17(木) 20:36:55
3にtr1は入ってない
885デフォルトの名無しさん:2011/02/17(木) 21:14:56
>>875
自己解決しました
886デフォルトの名無しさん:2011/02/18(金) 05:10:01
>>879
http://forum.avira.com/wbb/index.php?page=Thread&postID=1053445
同じ報告がされてるな
今んとこまだ何も進展してないようだけど
887デフォルトの名無しさん:2011/02/18(金) 10:41:20
>>884
cygwinをupdateしてgcc更新したらできました。
失礼しました。
888デフォルトの名無しさん:2011/02/18(金) 13:15:22
インターネットに繋がってないパソコンでcygwinをアップデート
すんにはどうしたらよいですか?
889デフォルトの名無しさん:2011/02/18(金) 15:29:13
繋がってるPCでDownload Withoutで必要なもの全部落とせ
繋がってないPCに何とかして持って行ってfrom Local
890デフォルトの名無しさん:2011/02/18(金) 18:20:49
インターネットに繋がってないパソコンでMinGWをインストール
すんにはどうしたらよいですか?
891デフォルトの名無しさん:2011/02/18(金) 18:32:09
まるちんこ
892デフォルトの名無しさん:2011/02/18(金) 19:16:14
いいえ初めてです><
893890:2011/02/18(金) 19:47:36
get-instのオフライン用的なものが欲しいです
894デフォルトの名無しさん:2011/02/18(金) 21:57:43
ないなら、自分でつくるとか?
Installerのソース見れるでしょ
895デフォルトの名無しさん:2011/02/18(金) 22:42:02
(´・ω・`)はあ
896デフォルトの名無しさん:2011/02/18(金) 23:06:28
>>895 君、だれ?
897890:2011/02/19(土) 00:12:33
申し遅れました><
ネカフェからダウンロードして持ち帰りたいんです
898デフォルトの名無しさん:2011/02/19(土) 00:16:54
ネット環境を使わせてくれる友達探したほうが...
899デフォルトの名無しさん:2011/02/19(土) 00:35:32
(´・ω・`)はあ
900デフォルトの名無しさん:2011/02/19(土) 00:40:27
携帯で接続したら
901デフォルトの名無しさん:2011/02/19(土) 00:50:20
(´・ω・`)テザリングするお金無いです
902デフォルトの名無しさん:2011/02/19(土) 00:58:46
net環境ないのにプログラムやるのは辛いかもね
903デフォルトの名無しさん:2011/02/19(土) 02:46:41
(´・ω・`)そろそろ教えて下さい
904デフォルトの名無しさん:2011/02/19(土) 09:25:13
mingwなgccが使いたいなら、tdmを落とせば、としか...
905デフォルトの名無しさん:2011/02/19(土) 10:38:36
tdm最強 俺大好き
906デフォルトの名無しさん:2011/02/19(土) 10:46:10
guile 2.0 が出たので mingw でビルドしようとしました。
すると libunistring が無いのでインスールするようにとメッセージが出ました。

configure: error: GNU libunistring is required, please install it.

config.log を見るとこういうコマンドでチェックしようとしたようです。

configure:12953: gcc -std=gnu99 -o conftest.exe -g -O2 conftest.c -liconv -lunistring >&5

Mingw の gcc の場合、この -liconv と -lunistring の順番が逆でないと依存関係が解決できないのですが、
コマンドライン引数の順序を制御することは出来るでしょうか?
ちなみに libiconv も libunistring も静的ライブラリとして用意しています。
907デフォルトの名無しさん:2011/02/19(土) 11:21:39
自己解決。 こうやったらなんとかなりました。

LIBS="-lunistring -liconv" ./configure --prefix=/c/guile --disable-shared

ちょっとダサい方法ですが、なんとかなったのでまあいいやという感じで。
908デフォルトの名無しさん:2011/02/19(土) 12:19:35
と、思ったけど guile 2.0 はまだ Mingw 対応は充分じゃないみたいだね。
どうにかちょっとした修正でなんとかしようと mmap をのりきったと思ったら今度はネット関連が…
そんなこんなで結局ビルドはあきらめたのでした。
909デフォルトの名無しさん:2011/02/19(土) 22:01:52.90
>>904
あり^^
910デフォルトの名無しさん:2011/02/22(火) 19:48:19.81
初心者です
MinGWを使えばWindows上でLinuxで動くプログラムを作れますか?
911デフォルトの名無しさん:2011/02/22(火) 20:01:53.69
質問の意味がわかりません
912910:2011/02/22(火) 20:04:32.35
Windows上でMinGWを用いてコンパイルしたプログラムはLinux上で動きますか?
913910:2011/02/22(火) 20:07:40.36
すみません、訂正します
Windows上でMinGWを用いてコンパイルして動作したプログラムのソースコードはそのままLinux上に持って行ってもコンパイル可能ですか?
914デフォルトの名無しさん:2011/02/22(火) 20:14:14.60
MinGWで動作しLinuxでコンパイルできないプログラムも存在しえます
例えばMinGWではWindowsAPIを呼ぶことができますがLinuxではWindowsAPIを呼べません
915910:2011/02/22(火) 20:31:41.83
WindowsでLinux向けのC/C++のコードを書いていく上で、
Linuxでもコンパイル可能なソースコードだ、という保証を得るには何ができていればいいんでしょうか?

例えばCygwinのgccをEclipseから利用して、
それでコンパイルできていればLinux上でもコンパイル出来ますか?
916デフォルトの名無しさん:2011/02/22(火) 20:40:28.15
>>915
Windows上でLinux動かして(colinuxとかvmwareとか)そこでコンパイル&実行するのが手っ取り早いんじゃね

>例えばCygwinのgccをEclipseから利用して、
C/C++の文法チェックならそれで十分だけど、ライブラリの依存関係に関しては全く役に立たない。
WindowsとLinux両方に存在するライブラリ「だけ」を使わないといけないから。
917デフォルトの名無しさん:2011/02/22(火) 21:51:57.53
クロスコンパイル環境を構築するのはたいへん面倒くさい作業なので、
>>916 の言うような仮想マシンを用意する方法に一票。
918デフォルトの名無しさん:2011/02/22(火) 22:01:02.27
>>915
どこから保証を得たいのですか?
Cygwin も gcc も Linux もそれ自体は何も保証しません。
あるがままのものとして提供されるのみです。
(仕様は存在しますが。)
あなたが書くソースコードについてなんらかの保証を与えるのはあなたの責任です。
919デフォルトの名無しさん:2011/02/22(火) 23:46:36.33
POSIXに規定された物しか使用しなければ99%くらいは保証できるんじゃね
まぁLinuxがPOSIXに準拠してるって保証もないが
一応どっかの会社がUNIX認定を取ったことあったよね?
920デフォルトの名無しさん:2011/02/23(水) 00:25:02.26
保証とは関係ない話だけど、逆の発想したほうが上手くいくこと多いような
Linuxで動かすために書いたものをWindowsでも動くようにするためには・・・って感じで
921デフォルトの名無しさん:2011/02/23(水) 00:38:35.11
cygwinはnewlibベースだからね。
こまかい違いをわかってないと苦労するだけでしょ。
922デフォルトの名無しさん:2011/02/23(水) 09:46:22.90
WindowsでMinGWを使って書いたQtのソースは
Linuxでコンパイルしたらそのまま動きました
923デフォルトの名無しさん:2011/02/23(水) 14:16:39.50
>>922
開発環境はどんな感じにしましたか?
924デフォルトの名無しさん:2011/02/23(水) 22:05:43.67
>>913
mingw cross 用の gcc と binutils を持ってくれば問題なくコンパイル可能だよ。

ちなみにウチ(f12)だと
mingw32-runtime
mingw32-gcc-c++
mingw32-cpp
mingw32-filesystem
mingw32-binutils
mingw32-gcc
mingw32-w32ap

生成したバイナリは Win32 上でしか動作確認ができないことは言うまでもない。
あと、ソース中に #include <Windows.h> とかあったら発狂してくれ。
925デフォルトの名無しさん:2011/02/23(水) 23:19:19.50
LinuxネイティブがターゲットならLinuxでやれよって
926デフォルトの名無しさん:2011/02/24(木) 12:33:09.98
linuxっていってもいろいろあるでよ。archの違いもわかってないようだけど...
927デフォルトの名無しさん:2011/02/24(木) 14:04:46.09
linuxが何かわかってない奴が多いな。
linux=コア。
コレくらい分かるよな。
cygwinのコア=linux。
これ常識。
928デフォルトの名無しさん:2011/02/24(木) 15:33:16.76
面白いと思って書いてるんだろうなぁ
929デフォルトの名無しさん:2011/02/24(木) 15:42:10.79
えっ、まさか面白そうに見えた?
全然そんなつもりで書いてないんだけど。
逆にそういうことを書かせたと言うことは、
心の中では面白いと思ったんだろうな。
それを認めたくないからそのようなレスをしたと・・・
最後に、見透かされてしまって逆上しないでね。
930デフォルトの名無しさん:2011/02/24(木) 16:08:42.43
Cygwinでssh-agentとkeychain使ってcronでssh接続を試みようとしてるのですが
Permission denied (publickey).と出て接続できません。

手動だと接続できるので多分cronでkeychainが使えてないっぽそうなのですがどうすればいいのでしょうか?
ググってみると
source ~./keychain/$HOSTNAME-sh
でcronでもkeychainが有効になると書いてあったのでやってみたのですが接続できませんでした。
ご教授願います。
931デフォルトの名無しさん:2011/02/24(木) 19:58:43.49
>>930
cron で keychain を使うという発想がそもそも間違ってると思われるので
新しくフレーズなしの cron 専用秘密鍵公開鍵ペアを作った上で command= とかで制限付けた authorized_keys のエントリ作るのがいいと思う。
932デフォルトの名無しさん:2011/02/24(木) 20:00:19.93
ってここじゃスレ違いだった、ごめん。
933デフォルトの名無しさん:2011/02/24(木) 21:16:20.23
MinGW全く知らないんだけど
MinGWシェルから何かmake installするときって
export INCLUDE_PATH=/usr/local/include
とかのパスは"C:\MinGW\include"とかになるの?
それとも"C:\MinGW"がルートになって/include
でいいとか?
934933:2011/02/24(木) 21:21:03.77
自己解決しました
935930:2011/02/25(金) 13:15:01.29
>>931
スレ違いでしたか、すいません。
ありがとうございます。フレーズなしでcommand制限掛けるという発想はありませんでした!

ちなみにこういった質問はlinuxの質問系スレのほうがよかったでしょうか?
今後のために出来れば誘導お願いします。
936デフォルトの名無しさん:2011/02/25(金) 13:39:05.02
>>935
UNIX板にCygwinスレあるでよ
URLは今わからんので自力で探してくれ
937デフォルトの名無しさん:2011/02/25(金) 13:40:57.37
Cygwin使っている人いますか? その20
ttp://hibari.2ch.net/test/read.cgi/unix/1268282846/
938デフォルトの名無しさん:2011/02/25(金) 14:03:49.18
Cygwin って Unix 板なのか。
なんか変な気がするなぁ。
939デフォルトの名無しさん:2011/02/25(金) 15:01:39.13
一応Windows板にもあるけど、そっちはほとんど機能してないんでUnix板の方を書いた

Cygwin使っている人いますか? 5
ttp://hibari.2ch.net/test/read.cgi/win/1175419995/
940930:2011/02/25(金) 19:51:14.96
UNIX板だったのですね

みさなんありがとうございます!
941デフォルトの名無しさん:2011/03/02(水) 09:11:18.49
えくりぷすスレで聞いたら誘導されたのでこっちで質問します。
Eclipse3.5.2+CDT+mingwでC++使ってるんですが、メモリリークの検出はどうすればできますか。
具体的にはVisualStudioの_CrtSetDbgFlag()みたいなやりかたってありますか。
942デフォルトの名無しさん:2011/03/02(水) 22:23:31.75
Mudflap や valgrind を使えばいいと思うよ。
943デフォルトの名無しさん:2011/03/03(木) 00:43:13.78
>>942
ありがとう、ググッてみるよ!
944デフォルトの名無しさん:2011/03/03(木) 21:52:04.13
Windowsでvalgrindは無理だろう
945デフォルトの名無しさん:2011/03/04(金) 03:12:01.88
valgrindはWinダメでmudflapはmingwじゃ使えなかった(´・ω・`)
946デフォルトの名無しさん:2011/03/04(金) 03:49:28.64
リーク検出くらいやっつけで作っちゃいなYO
947デフォルトの名無しさん:2011/03/16(水) 15:35:12.79
ダブルクリックでシェルスクリプトを使うようにできませんか?
948デフォルトの名無しさん:2011/03/16(水) 16:33:12.38
できます
949デフォルトの名無しさん:2011/03/16(水) 16:39:49.02
ありがとうございます。
やり方はわかりませんが出来ることがわかってよかったです。
950デフォルトの名無しさん:2011/03/20(日) 14:32:53.67
環境、ターゲットは、win32api / TDM's minGW32 です。

winsock2 / iphlpapi.h

ULONG WINAPI GetAdaptersAddresses(ULONG,ULONG,PVOID,PIP_ADAPTER_ADDRESSES,PULONG);
をリンクしたいのですが、インポートライブラリがみつからないみたいです。

mingw32-gcc -mwindows -o sss.exe sss.o maindialog.o debugout.o wmalloc.o sss.cof
f -lwsock32
maindialog.o:maindialog.c:(.text+0x58): undefined reference to `GetAdaptersAddre
sses@20'
maindialog.o:maindialog.c:(.text+0xda): undefined reference to `GetAdaptersAddre
sses@20'
maindialog.o:maindialog.c:(.text+0x21c): undefined reference to `getnameinfo@28'

どのライブラリにはいっているのでしょうか?
951デフォルトの名無しさん:2011/03/20(日) 14:43:16.33
API名でぐぐれば1つめのサイトに出てるのに何故調べようとしないんだろうか
952デフォルトの名無しさん:2011/03/20(日) 14:57:48.75
>>951
MSDN で OK とは知りませんでした。ありがとうございました。
953デフォルトの名無しさん:2011/03/21(月) 09:00:57.36
wsock32 の立場は・・・
954デフォルトの名無しさん:2011/03/21(月) 23:46:19.37
Cygwin上のgccでプリプロセッサをかけて
下のようなソースコードを見たいんですがどうすればよいですか?

gcc -E -P a.c > a.txt
とか色々試してるけど、ヘッダファイルが展開されてしまいます。
gcc -E とかの出力から自分で加工するしかないでしょうか?

--- a.c
#include <stdio.h>
#define MAX(X,Y) ((X)>(Y)?(X):(Y))

int main()
{
printf("%d\n", MAX(10,20));
return 0;
}

--- ほしい出力
#include <stdio.h>

int main()
{
printf("%d\n", ((10)>(20)?(10):(20)));
return 0;
}
955デフォルトの名無しさん:2011/03/22(火) 07:57:21.32
>>954
sed 's/^#include/include/' a.c | gcc -E - | grep -v '^#' | sed 's/^include/#include/'
956954:2011/03/24(木) 20:47:32.30
>>955
ありがとうございます。
これでやりたいことができます。
957デフォルトの名無しさん:2011/04/02(土) 22:30:28.38
2011-03-27 New releases: 4.5.2-tdm-1 and 4.5.2-tdm64-1
http://tdm-gcc.tdragon.net/download
出てた
958デフォルトの名無しさん:2011/04/04(月) 12:16:32.33
基本的な図形などの描写をプログラムを兼ねて勉強したいので
Xwindowsを利用したいんですが、Windows7上では無理ですか?
cygwinも使ってます。Unixをダウンロードしないとだめでしょうか?
959デフォルトの名無しさん:2011/04/04(月) 12:16:59.83
基本的な図形などの描写をプログラムを兼ねて勉強したいので
Xwindowsを利用したいんですが、Windows7上では無理ですか?
cygwinも使ってます。Unixをダウンロードしないとだめでしょうか?
960デフォルトの名無しさん:2011/04/04(月) 12:32:20.21
>>959

C言語なら俺に聞け(入門編)Part 81
http://hibari.2ch.net/test/read.cgi/tech/1301773320/
>ありがとうございます。スレ移動します。宿題なんで仕方ないです・・

宿題云々もこっちに明記しろ。で、先ず問題になるのは宿題の環境。
宿題の環境がUnix(Linux)でXWindowを使っているなら
cygwinのXでもいいけど、いっそUbuntuでも入れてみるとかした方がいいかもね。
961デフォルトの名無しさん:2011/04/04(月) 15:52:19.41
>>959
Xwindowsはwindows7でよいと思います!!
962デフォルトの名無しさん:2011/04/04(月) 20:44:22.81
最近は Xwindows ってなんですかとか言う人居なくなったの?
963デフォルトの名無しさん:2011/04/04(月) 23:35:28.27
Cygwin使ってます。
Cライブラリのパスを確認するシェルコマンドってどうしたらいいですか?
例えば"stdio.h"とかprintf関数のパスを調べたいです。
964デフォルトの名無しさん:2011/04/04(月) 23:42:06.82
>>963
gcc -print-search-dirs
965デフォルトの名無しさん:2011/04/04(月) 23:46:30.37
>>964
こうなりました・・・orz
gcc-print-search-dirs: Command not found.
何故でしょう。
966デフォルトの名無しさん:2011/04/04(月) 23:49:52.39
空白
967デフォルトの名無しさん:2011/04/04(月) 23:54:31.13
>>966
gcc: print: No such file or directory
gcc: search: No such file or directory
gcc: dirs: No such file or directory
gcc: no input files

となりました・・・
968デフォルトの名無しさん:2011/04/04(月) 23:58:56.47
正確に書き写せよw
gcc と空白と -print-search-dirs だ
969デフォルトの名無しさん:2011/04/05(火) 00:05:04.63
gcc: unrecognized option `-printf-search-dirs'
gcc: no input files

となりました・・・orz

/usr/include/stdio.hなんですよね?

printfとかはどこにあるんですか?関数はstdio.hの中に含まれてるんですか?
970デフォルトの名無しさん:2011/04/05(火) 00:08:23.03
わざとやってるだろお前
971デフォルトの名無しさん:2011/04/05(火) 00:08:51.92
正確に書き写せよ糞
972デフォルトの名無しさん:2011/04/05(火) 00:08:57.05
>>969
ひょっとしてそれはギャグでやってるのか?
-printf-search-dirs じゃない!! -print-search-dirs だっつの。
>>954 をコピペすればいいだけなのになんでそんなアホなやりとりをするのか小一時間問い詰めたい。
973デフォルトの名無しさん:2011/04/05(火) 00:14:25.00
>>972
まじですいません。

やっと出てきました・・・

20行くらい出て来ました・・・何がなんだか。
974デフォルトの名無しさん:2011/04/05(火) 00:14:55.72
Dカップなら許す。
975デフォルトの名無しさん:2011/04/05(火) 01:07:19.93
>>973
その libraries:= 以下に書いてあるのが、Cのライブラリのパスだよ
gcc はそこに書いてあるパスを先頭から順に辿って目的のライブラリを探すよ
printf の場合は libc.a というライブラリに入っていて、パスを辿っていくと /usr/lib に見つかるよ
でもまぁそれはただのインポートライブラリで、実際のコード自体は共有ライブラリの方に入ってるよ
cygwin の場合は /bin/cygwin1.dll っていう共有ライブラリを使うよ
objdump -t /bin/cygwin1.dll ってやればシンボルの一覧が見られるから、その中に printf も入ってるのがわかるよ
objdump -d /bin/cygwin1.dll ってやれば中身を逆アセンブルすることもできるよ
objdump をインストールしてない? setup.exe 実行してパッケージの一覧から binutils を探してチェック付けとくといいよ
いつも #include している <stdio.h> は、察しの通り /usr/include にあるけど、 printf の宣言が書いてあるだけで、中身は無いよ
976デフォルトの名無しさん:2011/04/05(火) 07:34:44.53
>>962にいるじゃないか。
977デフォルトの名無しさん:2011/04/05(火) 08:04:52.03
>>975
ありがとうございます!!
ちなみにCygwin1.dllは入ってません・・・
978デフォルトの名無しさん:2011/04/05(火) 09:52:30.05
じゃあそれはcygwinじゃないな
979デフォルトの名無しさん:2011/04/05(火) 19:00:16.95
>>978
Windows上でCygwinのホームディレクトリから実行ファイル開こうとすると
Cygwin1.dllがないので〜って出てくる。
980デフォルトの名無しさん:2011/04/06(水) 11:25:10.91
パスが通ってないだけだったり
981デフォルトの名無しさん
他に話題がないからってバカに構うなよ