1 名前:デフォルトの名無しさん [2011/05/06(金) 00:25:16.09 ] Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。 過去スレ: 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について part9 pc12.2ch.net/test/read.cgi/tech/1246059290/
516 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 17:59:49.32 ] >>514 そのDLLのインポートセクションを見れば一応わかるはず APIフックなどでは使われる手法だけど、ハックだな
517 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 18:02:10.74 ] msvcrt.dll使ってるとは限らないしなぁ
518 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 18:39:45.66 ] 個別に直してもらえれば一番いいのはそうですけど いろいろあるのと今後もまたあるかもしれないので 相手の対応に依存せず自分側だけで対応できる汎用的な方法も持っておきたいというのがあるんですよね。 FILE*の受け渡しなんかはインターフェースの定義だから多分変えてもらえないので 同じバージョンのfopenが使いたいとかもあるし。 DLLと関数を指定して、それがインポートされているDLL名を取得して>>511 ってのを試そうと思います。
519 名前:デフォルトの名無しさん mailto:sage [2012/02/07(火) 01:56:10.50 ] bugs.ruby-lang.org/issues/3296 これとかまさに>>516 なコードだよな iconvとかどこでも使われてるのに、エラー通知がerrnoなために DLL-safeでないってのが終わってる POSIXだから今更インタフェース変えられるわけもねーし
520 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 00:42:21.69 ] この手の問題ってメモリの処理はどうなってんだろ? 一つのプログラムが二つ以上の標準ライブラリとリンクしてしまった場合ヒープは適切に管理されるのかな
521 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 01:32:29.29 ] 少なくとも今のCRTだとmalloc()は大して自分じゃ仕事してねーというか HeapAlloc()に丸投げなので、CRTのバージョンが違ってもOSの側が 矛盾のないように仕事をしてくれるはず ただし、それぞれがHeapCreate()で自分専用のプールみたいなもんをこしらえて、 そっからHeapAlloc()していく OSの同じAPIに仕事させてる以上、それらは衝突はしないんだけれども プールAから確保したメモリをプールBのものとして開放することはもちろんできない HeapFree()の関数インタフェース見ればわかると思うけど malloc()やfree()という関数インタフェースからはプールが見えないんだけど裏では それぞれ専用のプールが使われるわけで、そこが要注意なわけだ
522 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 01:58:28.91 ] なるほど。低レベルではHeapAllocを使っているならきっと拡張可能で作っていると思うんだが 2つヒープができてしまった場合効率的に使えるのかな?変に制限されるんじゃないかと思ったので
523 名前:デフォルトの名無しさん mailto:sage [2012/02/12(日) 03:45:52.29 ] 標準ライブラリの数だけallocatorがあれば ひとつより効率的ではないだろけど、まあそう気にするほどでもないのでは。 C++でもdeleteやdelete[]があって違うんじゃない。
524 名前:デフォルトの名無しさん mailto:sage [2012/02/14(火) 12:21:53.07 ] mingwのgprofはlinuxのとくらべて制限とかありますか?
525 名前:デフォルトの名無しさん mailto:sage [2012/02/14(火) 12:36:18.05 ] ありがとうございます。 あるとわかってよかったです。
526 名前:デフォルトの名無しさん mailto:sage [2012/02/14(火) 23:42:58.64 ] gprofって、凄いの?
527 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 12:49:16.99 ] gcc -pg で作って実行したらgmon.outができたけどgprof test.exe gmon.outとかやってもヘッダみたいなのしか出ない。なにか間違ってるのか?
528 名前:デフォルトの名無しさん mailto:sage [2012/02/15(水) 13:35:45.56 ] ttp://blog.majide.com/2009/03/usage-of-gprof/ ttp://d.hatena.ne.jp/ousttrue/20091017/1255754733
529 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 15:29:10.20 ] tdm64-gcc-4.6.1をインストールして gcc -o a.exe a.cpp ってやると undefined reference to 'operator new(unsigned long long)' みたいなエラーがでるので解決策教えてください。 ソースは int main(){ new int *a=new a; } です。
530 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 15:48:02.62 ] 訂正 ソースは int main(){ int *a = new int; です。
531 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:00:03.50 ] g++
532 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:06:36.96 ] gccをg++に変えればできるんですか?
533 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:10:54.70 ] すみません、よろしくお願がいします。 これはみんながなる症状なんでしょうか? 本当に困ってます。お願いします。
534 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:46:04.85 ] >>532 何故それを試さん
535 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 16:53:19.78 ] すみません、インストールしたパソコンではないので 今すぐ出来ません。 許してください。
536 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 17:04:55.28 ] じゃあ、試してから結果を報告してください それまでお待ちしています
537 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 17:34:33.60 ] はい、また何日か後くらいにきます。 そのときはよろしくお願いします。
538 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 17:51:57.66 ] いま別のパソコンで試したけど同じ症状でした。 しかしg++にしたらちゃんとコンパイルとリンクできました。 有難うございます。 これは何が原因なんですか? とても気になるのでおしえてください。
539 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 18:43:21.54 ] え、今時の学生は基本的なことも知らないでやるの?
540 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 18:46:25.61 ] もしかしてgccはgnu c コンパイラーの略ってことですか? gnuコンパイラーコレクションの略で好きな言語をコンパイル出来る フロントエンドだと勝手に勘違いしてました。 大事なことをおしえてくれて有難うございます。
541 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 20:19:11.22 ] >>540 コンパイルは出来るよ。 言語ごとのライブラリを勝手にリンクしないだけ
542 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 20:33:57.27 ] -v 見ると楽しいよな
543 名前:デフォルトの名無しさん mailto:sage [2012/02/17(金) 01:38:57.98 ] なんでもはコンパイルできないわよ。知ってる言語だけ。
544 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 16:22:39.59 ] じゃあ539の勘違いということでFAですね。
545 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 16:53:58.45 ] エラー: ‘new’ が宣言されていません (この関数内での最初の使用)
546 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 13:25:24.33 ] mingw-get-instはインターネット回線に繋がってないパソコンではつかえないですよね?
547 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 14:07:28.95 ] つかえないです
548 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 08:48:41.26 ] ありがとうございます。 msysを手動でインストールする方法とか知ってますか? 知らないなら自分で考えます。
549 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 10:14:42.41 ] インストール出来る環境でインストールしたら、それを全部アーカイブしてよそへ持ってく。 例えばC:\MinGWにインストールしたらそのディレクトリごと。 コンソールへのショートカットはC:\MinGW\msys\1.0\msys.batを自前で作ればオッケー だと思う。 時分の使い方の場合は問題でなかった。 あ、双方の環境でログイン名が違う場合は、ホームディレクトリをリネームするか 必要な設定ファイル群をコピーしてね。
550 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 11:14:27.76 ] ありがとうございます。 参考にします。
551 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 11:22:15.80 ] >>548 xhmikosr.1f0.de/index.php?folder=dG9vbHM= ここのMSYS_MinGW_GCC_462_x86-x64_Full.7zを解凍するだけ mingwは他のを使いたければ、中のmingwフォルダを差し替えればいい
552 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 19:50:04.64 ] >>548 ttp://d.hatena.ne.jp/naga_sawa/20111112/1321108907 自分は、こことかを参考にして手動インストールしてる。
553 名前:片山博文MZ ◆0lBZNi.Q7evd [2012/02/27(月) 14:15:19.34 ] 次のようなWDM filter driverをMinGWでビルドできないの? ttp://www.reactos.org/paste/index.php/10164/
554 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 13:13:02.42 ] >>553 やりたいことは要するにコレなんでしょ? どうやるのかは知らんが A filter driver that swaps "Left Ctrl" and "Caps Lock" keys
555 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 19:46:33.96 ] すみません初歩のことなのですが、先程C言語の本を買ってきて 本の通り(多分・・・)にmingw-get-inst-20111118.exeをインストールして 環境設定のPathを選択して編集→変数値の最後に「;C:\MinGW\bin」を 入力してから、コマンドプロンプトで「C:\Users\パソコン名>gcc」と 入力しても本に記載している「gcc:no input files」と表示されません。 代わりに gcc:致命的なエラー:入力ファイルがありません RpC~オワオスB と表示されます。 ただ日本語に翻訳されてる感じですが・・・ご教授ください>< OSはWindows7Ultimateです。
556 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 19:51:29.11 ] ただ日本語に翻訳されてるだけでしょう
557 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 19:59:27.99 ] >>556 ありがとうございます
558 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 20:04:35.93 ] >>555 さすがにもうちょっとググったほうがいい・・・
559 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 20:09:30.90 ] gcc:致命的なエラー:入力ファイルがありません RpC~オワオスB でググってきます><
560 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 20:53:25.96 ] >>559 MinGW msys 環境構築 でググれ 「RpC~オワオスB」みたいなアホなワードでは何も出ない
561 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:15:05.12 ] 追試してみた。 手元の mingw-get-inst-20110316.exe (Windows 7 Pro 64bit) では、エラーメッセージは英語だったよ。 gcc: fatal error: no input files compilation terminated. mingw-get-inst-20111118.exe に入れ替えたら、同じように文字化けした。 C:> which gcc C:\MinGW\bin\gcc.EXE C:> gcc --version gcc (GCC) 4.6.1 ...(略) C:> gcc gcc: 致命的エラー: 入力ファイルがありません RpC~オワオスB でも、いったんファイルに保存してtypeで表示したら文字化けしない。ふしぎ。 C:> gcc >error.log 2>&1 C:> type error.log gcc: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。 あと、LANGを切り替えたら、こちらも文字化けしなかった。 C:> set LANG=C C:> gcc gcc: fatal error: no input files compilation terminated.
562 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:18:09.30 ] >>559 釣られてみる。 > gcc [リターン] じゃないよね...
563 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:30:47.65 ] Shift_JISで「コンパイルを停止しました。」は 83528393 83708343 838B82F0 92E28E7E 82B582DC 82B582BD 8142 他の文字コードで解釈できるのは RpC~ B だけ、あと半角カタカナ そんだけ
564 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:40:37.56 ] >>562 やめてくれー>< ぼくをイジメないでくれ>< 初心者なんだ>< >>561 僕の脳みそでは、まだよくわからないけど set LANG=C 打ち込んだらなおりました!ありがとぉ!
565 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 21:48:18.93 ] Cはまだ早い まずAからだ
566 名前:561 mailto:sage [2012/02/28(火) 21:58:15.78 ] すまんが、備忘録として、もう一回だけ書かせてくれ。 [case B] cmd.exe + bash でも、文字化けする。 C:> which bash C:\MinGW\msys\1.0\bin\bash.EXE C:> bash bash-3.1$ gcc gcc.exe: 致命的エラー: 入力ファイルがありません RpC~オワオスB bash-3.1$ LANG=C gcc gcc.exe: fatal error: no input files compilation terminated. [case C] mintty (code.google.com/p/mintty/ の mintty-1.0.3-msys.zip) + cmd.exe だと、文字化けしなかった。 C:> mintty -c c:\mingw\mintty.cfg cmd.exe (以下、mintty の window の方で) C:> gcc gcc gcc: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。 [case D] mintty + bash.exe も文字化けしなかった。 C:> mintty -c c:\mingw\mintty.cfg bash.exe (以下、mintty の window の方で) bash.exe-3.1$ gcc gcc.exe: 致命的エラー: 入力ファイルがありません コンパイルを停止しました。 bash.exe-3.1$
567 名前:548 mailto:sage [2012/02/29(水) 10:16:21.56 ] 手動インストールできました。 色々ファイルを入れてpi.batが動くようにしたら出来ました。
568 名前:デフォルトの名無しさん mailto:sage [2012/02/29(水) 12:16:19.41 ] 一応、最新版にしたら4ギガ以上のファイルのサイズも表示されますね。 よかったです。
569 名前:デフォルトの名無しさん [2012/02/29(水) 17:22:10.28 ] よかったよかった
570 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 10:03:50.14 ] 調べてみたらまだスレッド機能使えないらしいな。
571 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 15:16:06.43 ] まじで…
572 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 00:50:26.85 ] すみません 昨日、MinGWを入れてみて下のコードを >gcc test.c -o test でコンパイルしたら PCのアンチウィルスソフトに検知されました。 誤検知かと思ってDrWebのオンラインスキャンにかけても感染してると診断されました。 同様の症状の出る人いませんか? #include<stdio.h> int main(){ printf("Hello,World!!"); return 0; }
573 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:08:55.65 ] 検知されたのは、生成されたtest.exe 診断はトロイ g++でコンパイルしたときはなんともありませんでした
574 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:18:55.97 ] たびたび失礼 g++でコンパイルしたexeもオンラインスキャンにひっかかる
575 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:27:37.21 ] とりあえずここにそのバイナリあげてみ https://www.virustotal.com/
576 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:52:34.65 ] Detection ratio: 16 / 43 AVG Generic26.BUPR BitDefender Trojan.Generic.KDV.493557 CAT-QuickHeal (Suspicious) - DNAScan DrWeb Trojan.Siggen3.46647 Emsisoft Trojan.Win32.Menti!IK F-Secure Trojan.Generic.KDV.493557 GData Trojan.Generic.KDV.493557 Ikarus Trojan.Win32.Menti Jiangmin Trojan/Menti.osy K7AntiVirus Riskware McAfee-GW-Edition Heuristic.BehavesLike.Win32.Suspicious.H nProtect Trojan.Generic.KDV.493557 SUPERAntiSpyware Trojan.Agent/Gen-Small TheHacker Trojan/Menti.jswz VBA32 Trojan.Menti.jvgg VirusBuster Trojan.Offend!HUI9cixAnWU いくつか引っかかってますが、マカフィー、カスペルスキー、NOD32がスルーしてますね 上の危険度を示す?矢印の表示は真ん中を指してます
577 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 02:06:55.48 ] Avast、Microsoft、Symantecもスルーしてるところをみると どうも誤検知のようです・・・ たいへんお騒がせしました
578 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 00:30:42.04 ] 自作プログラムがウィルス扱いとかたまらんたまらん
579 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 01:13:08.52 ] MinGWの4.6.3落とせるとこもうある?
580 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 02:26:57.71 ] >>579 www.xvidvideo.ru/component/docman/cat_view/28-cross-mingwgcc-x86x64/183-cross-mingw-with-gcc-46-x86x64/193-stable.html
581 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 04:30:37.73 ] thx!
582 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 18:18:08.45 ] cygwinのgccで作ったexeが動かなくなって、今日一日悩んで ここで質問しようと思い、-print-search-dirsやらメモしつつ 何の気なしにavast止めたら動いた。 このやるせなさは・・
583 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 19:20:34.26 ] ユーザに何も知らせずに止めるの? avastって
584 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 13:27:42.54 ] avast誤爆多すぎるからやめたら
585 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 00:30:00.48 ] >>583 止めるとか馬鹿にするな 勝手に設定も変更するよ
586 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 12:48:26.70 ] Avast の 自動サンドボックスとやらが致命的だな バッチ処理中に一つでも未承認のツールがあれば即アウト 「インストール中はウイルスソフトを停止しておいてください」みたいなのを 無視できなくなった
587 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 13:09:36.47 ] avastこそ最強ウィルス。
588 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 13:21:06.29 ] aviraはconftestとかをウィルス判定しまくることに嫌気がさしてMSEに乗り換えたんだが、直ったのかな
589 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 15:27:01.54 ] Aviraは承認を記憶させることすらできなかったからな コンパイラがファイルを吐くたびに 同じファイルでも毎回承認させるとかあってアホすぎた
590 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 15:39:23.51 ] 完全に同一のファイルを吐かないんだから当たり前だろ
591 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 19:15:05.08 ] まあすれ違いを延々引っ張られても困るわけだが
592 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 09:46:04.66 ] そうだったなすまん
593 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 22:42:06.66 ] MSEでも結構誤爆あるのがなぁ
594 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 23:33:08.04 ] 適当に専用ディレクトリ掘って、そこだけ監視対象から外しとけ
595 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 20:57:23.46 ] mingw/nuwen gcc4.6.3 キタコレ ろしあも4.7.0 stable キタワ
596 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 15:30:41.13 ] GCC 4.7.0 released [2012-03-22]
597 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 23:32:43.13 ] ロシアあるのか 日本産はないのか?
598 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 00:29:08.96 ] なんか4.7.0はlibavをミスコンパイルするらしいからとりあえず見送り
599 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 00:50:31.93 ] おまえらって、新しいGCC出たら自前でビルドしてんの?
600 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 03:28:22.91 ] 少しでもスレ眺めりゃ野良ビルド使ってる奴が大半ってことぐらい分かるだろ 俺は自前でやってるが
601 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 04:36:42.24 ] 自前でやってるってことはFTPコマンドとかもポート(?)してるの? mingwってFTPコマンドは別ウィンドウ開いちゃうんでちょーウザいんだけど対処方法ある?
602 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 23:15:17.52 ] >>600 ゆとり日本には珍しい奴だな 4.7出た記念に自前GCCビルドでもしてみるかな。とは言ってもめんどくさいな Boost1.49ですらめんどくさがってまだビルドしてないし
603 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 08:51:20.77 ] UCS32で標準入力して標準出力したいです。 始めにeclipseはソースコードの文字コードはシフトジフコードなので UCS32を使うにはソースコードの文字コードを変えなければいけませんが 出来ないのでシフトジフコード上でエスケープシーケンスを使ってUCS32を 使わなければいけませんよね? GCCに教えるソースコードの文字コードは標準でいいでしょう。 GCC実行時に使う文字コードはUCS32のやつにしたらいいのですね。 coutでUCS32の文字列は出力できません。 コマンドプロンプトで入力に使うのやそれに表示される文字コードは変えられませんよね。 ではやることの一部分だけじゃなくて全体的にどうしたらいいですか? 調べても分からないので教えてください。
604 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 09:06:58.34 ] Boost.Iostreamsのcode_converter経由でiconvを呼ぶかな(適当)
605 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 13:14:23.46 ] お年を召している質問者に違いない 70歳くらい?
606 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 14:25:02.32 ] すみませんジスでした。
607 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 22:41:56.48 ] JISなの?
608 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 22:46:04.44 ] 最終的に画面に表示できる文字コードに変換しないと
609 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 22:47:55.08 ] なぜUTF32で出力したいのか教えろよ
610 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 00:19:44.68 ] >>603 CP932 の場合は、こんな感じで出来たと思う。 gcc --input-charset=CP932 --exec-charset=CP932 ... で、少なくとも cygwin gcc は libiconv を使ってるので (cygcheck `which gcc` すれば判る) UTF系のcharsetは、 strings /usr/bin/cygiconv-2.dll | grep UTF すれば判る。 なお、mingw + msys なら iconv -l で調べられる。 いずれも、UTF-32 系はUTF-32,UTF-32BE,UTF-32LEの3つ よって、「UTF-32」なら、次のようにすれば出来るかも知れない(未確認) gcc --input-charset=UTF-32 --exec-charset=UTF-32 ... なお、>>603 では CygwinとMinGWのどちらを使っているのか、 それぞれのバージョンはどれか、とか、より詳しく回答するのに 必要な情報を何も書かれていないので、 自分はこれ以上答えるつもりはない。
611 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 01:05:06.17 ] >>603 なんだかツッコミどころが多いし何をしたいのかも分からないな 単にUnicodeを使って多国語対応したソフトを書きたいというだけなら 方針が致命的に間違っているとだけ言っておく あと、Eclipseはソースコードを含むテキストファイルのの文字エンコーディングの 設定を変更できるぞ
612 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 15:08:17.39 ] 全部読むと、何らかのunicode文字列を、画面に表示させたい事は分かる。 標準入出力とあるから、unicodeはファイルか何かだろう。 あるいはunicodeの並びで、文字列処理をさせたいのか。 iconvと適当なwrapperを落として、文字コードの変換処理を書く。 で、まにあうと予想
613 名前:603 mailto:sage [2012/04/14(土) 14:44:57.10 ] 今から具体性を持って書きます。 GCCはTDM-GCCを使用しています。 字句解析器でユニコードを正規表現に使えるようにしたいです。 ついでにその字句をエクリプスの出力の窓に出したいです。 入力もソースコードに書いた日本語の文字かららファイルからしたいです。 エクリプスのソースの文字コードの設定の中にユニコードの奴はありませんでした。
614 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:01:29.91 ] 内部はwchar_tと出力はUTF8で十分じゃね?
615 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:06:54.48 ] unicodeで正規表現とutf-32がどうつながるんだ
616 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 15:17:52.29 ] ユニコードとはutf-32のことです。 型はchar32_tで 文字列はchar32_t * ですよろしくお願いします。 utfには他の種類にも対応したいので教えてください。