OpenWatcom C++
■ このスレッドは過去ログ倉庫に格納されています
IDE やプロファイラまでついてくるフリー最強の C++ コンパイラ Watcom C++ について語りませう。 一応、こちらから入手できます。 難点はちょっと大きい事(45MB)です。 http://www.openwatcom.org/ >>1 VC買っちゃったYO!! 先に言ってくれよ... >>1 ついに出たか・・・って、もうずいぶん前の話だよ。 ここはなぜかクソスレになってるな >>19 >>10 の返答として >>11 を書いたのだが。 >>20 俺は Visual C++ のつもりで書いたけど。 VC じゃなくて、VC++ だろっていうなら、そう訂正しておくよ。 >>21 あっそ。 >>21 は >>10 の書き込みでなく、>>11 の書き込みであります。 >>21 じゃなくて、>>23 じゃん。 死のう。 Watcom C++とOpen Watcomはどう違うんだ?? 新スレ立ったから OpenWatcom になんか動きあるのかと思ったよ。 VC++ってサイアクコンパイラでしょう。 ANSI C++もできてないし、 標準ライブラリのMFC、ATL/WTLは出来が悪いし、大きいし、MSからは中核から外された扱いだし。 template が使えないんですが何故ですか? 標準ヘッダに .h がついてるのしかないのですが何故ですか? だからこれでVCできるのか誰か教えろよヽ(`Д´)ノウワァァン ヤフオクでVC++6.0Pro北米版新品未開封が1万以下で買えた。ウマー。 さらにサブスクリプション1年無料券(Libraryだけど)付いててさらにウマー。 1日土方バイトすりゃ買えるぞ>>42 素朴な疑問なんだが海外版のVC++ってちゃんと日本語処理してくれんの? 漏れも心配だったが、日本語処理に関しては全然問題ナッシングだよ。 英語読めんときついかも試練が。(当然MSDNも英語版のみだし) OpenWatcomのftpサイトにバイナリーらしきもの(0.8.5)が・・・ >>50 http://www.openwatcom.org/ 漏れもファイル落としてインストールしてみたけど、 パスの設定とかが分からなくて結局戻したという未熟さ…(TдT) win32apiのヘッダファイルとか、思いっきりエラーだし…もうだめぽ… いや、ここはもう一度頑張るべきか…よし、やってやる!! え〜と、>>51 の部分で、ヘッダがどうのこうのとか言ってましたが、 わたしの勘違いでした、正しく動作しています、誤報スマソ。 ちょっと使ってみようかと思ったのですが、インストールや使用法が載ってる ページが検索に引っかからない… >>54 ビルドできるようです。 >>55 私がインストールした手順です、 ttp://www.openwatcom.org/ftp/openwatcom/bin_0.8.5/ にあるアーカイブをすべて取得してきます、 次に、アーカイブを、インストールしたいディレクトリにディレクトリ構造を保ったまま解凍し、 最後に、環境変数をセットしました。 環境変数は、下のファイルにかいてあるのをそのまんま写しました ttp://www.openwatcom.org/ftp/c_readme.txt 漏れのPCいまだにWin98SEなので、"AUTOEXEC.BAT"に以下を記述しました。 REM Open Watcom C/C++ Compiler SET WATCOM=C:\WATCOM SET PATH="%PATH%;C:\Watcom\BINNT;C:\Watcom\BINW" SET EDPATH=C:\Watcom\EDDAT SET INCLUDE=C:\Watcom\H;C:\Watcom\MFC\INCLUDE;C:\Watcom\H\NT REM SET LIB= また、ttp://www.openwatcom.org/ftp/docs/ にあるPDFファイルなども入手しておくと役に立つと思います。 肝心のコンパイラとリンカの方ですが、 wcc、wcc386がCコンパイラ、 wpp、wpp386がC++コンパイラ、 link、link386がリンカ、 wcl、wcl386がコンパイラユーティリティです。 それぞれ、名前に386とつくものが32ビットのバージョンで、 Windowsアプリケーションもそちらの方で作成するようです、 デバッガは、wdとwdeの2つがあり、それぞれ、コマンドライン、Win32GUIバージョンのようです。 コンパイル方法は、コンパイラユーティリティを使わない方法だと、 wcc、wcc386などで、"*.obj"ファイルを作成したあと、 link、link386で、"*.obj"ファイルをリンクします、Winアプリを作成する場合は、 オプションに"-subsystem:windows"を指定すると、実行時にコマンドラインが表示されません、 また、実行ファイル名を指定する場合は、"-out:template.exe"のように指定します、 かなり適当な説明でしたが、参考になればいいと思います、 う、ミスがありました、>>57 でデバッガをwdとwdeとかいてますが、 正しいものはwdとwdwでした、間違いスマソ(´・ω・`) wdeはダイアログエディタでした、 VC++等についてくるリソースエディタっぽいものです。 >>51 さん 細かい手順示していただいてありがとうございます。 早速DLしてきます。 *.resが更新されて行き、*.rcファイルは作れないようですね。 >>61 なかなか使いやすいです、日本語も大丈夫なようです。 >>62 *.rcファイルも作れるようです[メニュー->File->SaveAs]で保存する場合に、 "List Files of type"の部分を変更すれば保存できます。 >>63 本当? ファイルの種類のリストには、「*.rc」はなかったような気がしますが、見落としかな・・・ リソースの種類ごとに個別に*.DLG,*.MNU(だったかな?)等のファイルに保存できた覚えはあります。 >>64 "*.dlg"、"*.rc"、"*.res"が生成できるようです。 ためしに、プッシュボタンをひとつだけ貼り付けたリソーススクリプトを生成してみました。 DIALOG_1 DIALOG DISCARDABLE 107, 32, 145, 47 STYLE DS_MODALFRAME | WS_OVERLAPPED | WS_CAPTION | WS_VISIBLE | WS_SYSMENU CAPTION "Dialog" FONT 10, "MS 明朝" BEGIN CONTROL "Push", 100, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 50, 14, 40, 14 END どうやら、デフォルトのフォントは明朝のようですね。 >>65 ダイアログエディタ(wde.exe)では、"*.rc"が選べますが、 リソースエディタ(wre.exe)では、"*.rc"はOpen,Saveとも 選べないようです。 ダイアログボックス以外にメニューやストリングテーブルなどを 含んだ*.rcファイルは作れないのかな? >>66 すみません、勘違いしていたようです、 私が言ってるのはダイアログエディタのほうでしたね。 まだ試してないけどリソースエディタ(wre.exe)から直接DLLが作れるっぽい 作ったDLLの使い方がわかればかなり便利かも (,,゚д゚)…cool.dllみたいな感じかな… いろいろ試してみた結果どうやらDLLから読み込んだりソースでないとDLLで保存できないみたいです・・・ 回線切って首吊ってきます・・・鬱 お前等、OpenWatcomでなに作る気ですか!? >>77 あなたの言っているVCとは何のことでしょう? そこらへんをはっきりと、厨房でも分かるように説明してください。 >>77 はい、あなたは何を使っても VC できないので諦めて下さい。 >>78 バリコンのことじゃない? ゲルマ・ラジオでも作るのかのお。 無料C++コンパイラといったら某陸になってしまったな。 OpenWatcom も日本語版があればもう少し使われるのかも。 DigitalMarsC++は日本語のエラーメッセージも表示できるのに… 某はCマガで初心者にばらまいたのが効いたのか? もう10年くらい前にオープンになる前のWatcom C++で仕事したよ。 Windows 3.1で32bitリニアで動くGUIプログラムが書けた。 最適化も当時最高クラスだったしね。評判もよかったよ。 でもVCのバージョンいくつだったかが出た時、突然Watcomそっくりのコードを吐く様になってたんだよ。 俺的には7不思議の一つだね。 でWatcom沈没... ちょっと懐かしくてレスしちゃったよ。 >>88 よくあることだ。 MSCもLatticeから買って来たのがベースになってるはず。 >>87 外部に日本語用のメッセージファイルがあると、それを表示します。 Ver11.0JにVer11.0cを突っ込むと中途半端に日本語が…。 なので、後はメッセージファイルを作るだけ。OpenWatcomがこの辺りの仕様も文書化してくれれば日本語化の道が開けるかも。 中はちょっとしたヘッダとShift_JISでメッセージが羅列しているものなので、英語版のメッセージと書式が解ればなんとかなりそう。 そりゃ残念。bccやDigitalMarsとの互換性は あるのかな? ナローな為落とすの辛いからレポートキボン。 >>93 リンカはCOFFもOMFも読めるので、Borland C++とかSymantec C++(DigitalMars)の.OBJをリンクさせることは可能。 使ってみようかと思うんだが、 今時ARM準拠ってことはないよな? >>94 リンクできるのはいいけど、ちゃんと動くのか ? (要は、引数の渡し方に互換性はあるの ?) >>99 stdcall使えばいいんでは? さすがにこれが使えなかったら、Windows用じゃ無いだろう。 というかIDEは旧Watcomでコンパイルされてるんやないの? >>99 そりゃリンカではなくてコンパイラの話。94ではリンカの話しか書かなかったから。 引き数についてはなんでもあり。 全部スタックに積みたければ #pragma aux 関数名 parm []; EAX EDX ECX EBXを使いたければ #pragma aux 関数名 parm [EAX EDX ECX EBX]; 特に指定しなければ引き数は右から積む。左からにしたければ #pragma aux 関数名 parm reverse; スタックのクリアは #pragma aux 関数名 parm caller; /* 呼び出し側がクリア */ #pragma aux 関数名 parm routine; /* 関数側がクリア */ >>102 あれ? cdecl, stdcall, pascal, syscall あたりって pragma で細かく指定しなくても良くなかったっけ? OpenWatcom日本語化プロジェクトとかって存在しないのかな、 IP記録実験 http://qb.2ch.net/test/read.cgi/accuse/1042013605/ 1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:??? そんなわけで、qbサーバでIPの記録実験をはじめましたー。 27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc SETTING.TXT管轄でないということは全鯖導入を視野に、か? 38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l >>27 鋭いです。 73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l >ところで、IPが抜かれて何か今までと変わることってあるのでしょうか? ・今までより、サーバが重くなる。 ・裁判所や警察からの照会があった場合にはIPを提出することがある。 ======2==C==H====================================================== 2ちゃんねるのお勧めな話題と ネットでの面白い出来事を配送したいと思ってます。。。 ===============================読者数: 138720人 発行日:2003/1/9 年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。 そんなわけで、年末に予告したIP記録ですが実験を開始しています。 「2ちゃんねる20030107」 こんな感じで各掲示板の最下部に日付が入ってるんですが、 20030107以降になってるところはログ記録実験中ですー。 んじゃ! ────────────────────────Age2ch─ ■この書き込みは、Age2chを使って配信されています。 ──────────────────────────── Keep your thread alive ! http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ──────────────────────────── >>738 チクリ板の一部の企業のスレのかきこみネタのように見えて事実がほとんどだからね。 そうそう、しかし保護は無理だろ、責任追及されたら誰かが責任とらないといけないんだし。 >>87 裁判所の判断ってところに、引用とも原告の主張とも書かずに、 上のような文が書いてあるっすよ。 別にここにあげたのは原告の主張の引用ではなく、 ひろゆきの主張に対する裁判所の判断っす。 >>87 裁判所の判断ってところに、引用とも原告の主張とも書かずに、 上のような文が書いてあるっすよ。 別にここにあげたのは原告の主張の引用ではなく、 ひろゆきの主張に対する裁判所の判断っす。 スレ違いかもしれないけど、 ┌────┐ __ たぶん → C==| |llllll| |←キャップ ここから飲む └────┘  ̄ ̄ (中に炭酸の素?が入ってて ↑ 閉めると炭酸が出てくる) 本体 よい事ではないですか。遅すぎたくらい。 いつも暴れてるキチガイが今日おとなしかったことw なにやらaa鯖があぼーんした模様で・・・ http://qb.2ch.net/test/read.cgi/accuse/1040795172/319 過去ログは残っているという話ですので以前のようにログの提供などを行う必要はなさそうですが、 モナー板の生き残りの40のスレ以外は建て直しになりそうでございます。 そうそう、残念ながらZchは消滅してしまいました・・・まさしく”イキロ ひ(略!”(汗 あー腹痛てー。 飯食い過ぎた。 しかしジサクジエンもにろゆきにばれてしまうのかね。 ちょっと恥ずかしいじゃないの。 誰か IDにIPを出すことを要求します ってスレ立てておながい 噂話ではなく実際にソースがある話もものによっては問題視されそうで嫌だなぁ つーかすでに他サイトからは問題視されてるが。 たとえば韓国の話とかね ======2==C==H====================================================== 2ちゃんねるのお勧めな話題と ネットでの面白い出来事を配送したいと思ってます。。。 ===============================読者数: 139038人 発行日:2003/1/10 なにやら、連日メルマガだしてるひろゆきです。 そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、 全部のサーバに入れてみました。 重くなって落ちたりしてもご愛嬌ってことで。。。 んじゃ! ────────────────────────Age2ch─ ■この書き込みは、Age2chを使って配信されています。 ──────────────────────────── Keep your thread alive ! http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ──────────────────────────── ぶっちゃけ隠れフシアナサンになったんだろ?? 初めてのfusianasan 217 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:49 ID:rLfxQ17l 一定期間でログは消しますです。 249 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:52 ID:rLfxQ17l >荒らしとか犯罪のためなの? そす。 246 名前:心得をよく読みましょう[] 投稿日:03/01/08 17:52 ID:BH998yxV >ひろゆき 俺のお気に入りのスレとか荒されてるんだがそういうのにも有効? 257 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:53 ID:rLfxQ17l いずれは。 312 :ひろゆき ◆3SHRUNYAXA :03/01/10 19:59 ID:jWxHxvti 全部にいれてみた。 匿名性に絡む問題なので反対 27% 381 票 サイトのためになるから賛成 54% 744 票 利用しないから関係ない 9% 132 票 2ちゃんねるってなに? 4% 64 票 アクセスログってなに? 3% 53 票 フリーなC++コンパイラ(Digital Mars C++, Watcom C++)の規格適合テスト結果 http://cmeerw.org/prog/freecpp/ らっきょらっきょ、へーごっごっごつ… ヌヒ等よ、大変だぞ!! へぽくっ俺はふと思って2ちゃんねるのあっちこちの板を見て回ったのよ。 格闘技板とかアナウンサー板とかプログラマー板とかをな。 そうしたらな、どこのスレ開いても最近ひろゆきの話題が出てる板はプログラム技術板だけだったぞ!! ヌヒ等よ、ここは2ちゃんねるいっちゃん恥ずかしい板だぞ!! >>134 ライセンスちゃんと読んでないから知らんけど 11.0c って free だったっけ? > This binary patch is available free of charge to existing Watcom C/C++ and > Fortran customers and includes all updates and bug fixes developed by Sybase > since the last commercial update of the product (11.0b). 11.0cは製品版のユーザーなら無料で利用可能 フリー(Open Watcom Public License)になるのは Open Watcom から ということか。 Open Watcom 1.0beta入れてみたけど 'ied.cfg' が無いといわれてIDEが使えない…。 コマンドライン・コンパイラでcharacter-modeの実行形式はコンパイルできた。 -zk0 オプションを付ければ日本語(Shift-JIS)も通るみたい。 なにげにリンカが日本語メッセージ出してるし、結構いけそう。 ここで3人くらいが「大丈夫だよ」と言ったら、それを信用して そういう書き込みを続けるんですか? まあご自由にとしか言いようがありませんね。 どうせなら「授業料」を支払うことになる限界がどこにあるか見つけてください。 170 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:42 ID:rLfxQ17l 負荷が高そうなサーバにも入れて見ます。 ココカナ? >>140 リンカが日本語メッセージ! 誰かが日本語メッセージをcommitしたんだろーか? >>145 ご指摘の通り、PATHを追加したら動きました。 普段はコンパイラ毎にPATH切り替えて使ってたから忘れてました。 IDEの方でも環境変数を見てるんですね…。 GAっていつのまに2ちゃんねるアニメランキング1位になったんだ?(w そういえば托イ発祥のスレだったな 他板でもはやってんの? 民事訴訟法改正になって憲法問題とかよっぽど重要な争点がないかぎり 最高裁への上告は認められなくなったから、これで事実上判決確定だよ。 逆転も何もないって。 勢いで上告なんかしても一発で上告却下(門前払い)だよ。 二審も一審を支持。これに対して上告しようにも、 刑事訴訟と同様、自由に上告できるってもんでもないのです。 民事訴訟法312条 (上告の理由) 1項 「上告は、判決に憲法の解釈の誤りがあること その他憲法の違反があることを理由とするときに、することができる。」 http://www.m-net.ne.jp/ ~doba/goto/hon.htm ようするに上告しても今の制度では100%無駄。 これで完全終了ってことか。 名前売りたい奴とか金儲けしたいやつとか鯖を貸したい業者なんて今が 絶好のチャンスだと思うけどな 1.しばらく待つ 2.2ちゃんブラウザを使う 好きな方を選べ 432 名前:心得をよく読みましょう 投稿日:02/12/31 11:23 ID:ADTGAx9x オレも記念カキコ! 警察! オレが味方だ。 射殺許可!!!! いいよ、こんなクズ。この世からいなくなっても! 小さい子の命のほうが億倍たいせつだよ。 >>144 前から日本語だったような気が。 それ以外にも、Watcom はどことなく日本の影響が ある風味。pc98.h とか。 言われてみれば OpenWatcom 1.0 beta にも bios98.h とか graph98.h とか入ってる。 jctype.h jstring.h jtime.h なんてのもあって日本語でコメント書いてあるし。 これってXPでも使えますか? XP用のプログラムも作成できますか? >>159 ナローバンドでないなら落として自分でやってみろ。 >>160 159でない上ナローバンドなのだが、watcomは試してみたいので どのファイル落とせば何ができるか、知ってる分だけで良いから 教えてくれると嬉しい。 Open Watcom 1.0 RELEASE CANDIDATE 1 キタ━━━━━━(゚∀゚)━━━━━━!!!! >>163 「Download individual zip files」から個別に落とすなら ・Cコンパイラのみ (IDEなし、Win32用) c_nt, clib_w32, cm_clib_a32, cm_clib_hdr, cm_clib_w32, cm_core_all, cm_core_nt, core_all, core_nt, w32api (全てZIPファイル) 計 5.09MB (5,345,213 バイト) ・C++コンパイラを使うなら、さらに cm_plib_a32, cm_plib_w32, cpp_nt, plib_a32, plib_hdr, plib_w32 計 2.42MB (合計 6.70MB) ・以上の ZIPファイルを同じディレクトリに解凍(デフォルトはC:\watcom) ・binnt, binw ディレクトリを path に追加 ・環境変数 WATCOM にインストールしたディレクトリ(C:\WATCOM)をセット ・環境変数 INCLUDE に C:\watcom\H;C:\watcom\H\NT をセット これでとりあえずWin32用のプログラムがコンパイル出来る。 後はZIPファイルの内容が _layout.txt に書いてあるので 必要な物を随時追加していけばよいと思う。 ちなみにインストーラ付きのOpenWatcom 1.0 RC1 のサイズは 61.5MB # なんかでかくなったと思ったら、FORTRANも一緒になってるのね。 OpenWatcom をソースからコンパイルしたツワモノはいる? devguide の make にも失敗する有様… 辛うじて devguide は作れますた… whpcvt ってのを先に作っておかなきゃいけなかった模様… newsgroup みてたら 1.0.1(1.0のRC2)が ftp サイトにアップされたそーです。 OpenWatcomのサイトにも up されるって書いてあるけど、そっちはまだみたい。 変更点は主にFortranのファイルが無かった事とかOS/2のバグフィクスだそーです。 まだ残ってるバグがあるならとっとと出してくださいませ、だそーです。 1.0の正式リリースは来週早いうちに、らしい。 >>168 情報サンクスです。 だいたいライセンス周りの問題は片付いたから、1.0のリリース後から 機能向上、ってな感じになるのかなぁ? 今のままだと時代遅れな点が見られるし。 何気に期待。 これってOS/2のPMアプリ作れますか? DLしてみようと思ったものの、ヘッダなどが無いように見えたもので・・・。 >>171 最低限のヘッダはあるそうだよ。 不安だったらリポジトリ覗いて確認してみ。 ttp://perforce.openwatcom.org/depotTreeBrowser.cgi?FSPC=//depot/openwatcom/bld/os2api&HIDEDEL=NO >>172 ちゃんとヘッダありますね。リポジトリは全然見ていませんでした。 ありがとうございました。暇を見つけてPMアプリを組んでみたいと思います。 祝 Open Watcom 1.0 正式リリース age newsgroup より転載 > After careful consideraion we have decided to go gold with the Open > Watcom 1.0 RC2 release. Hence we have simply renamed the RC2 binaries as > 1.0, and will be putting out the press release and emailing people on > the mailing list shortly (thankfully we managed to recover about 4,000 > names on the list!). If you already have RC2, there is no point > downloading the final release binary as it is identical. 1.0はRC2と同じものなので、RC2をDLした人は改めて1.0をDLする必要はない と言うことですな。 >>176 Σ(゚∀゚ )RC2入れてあったのにDLしちゃったYo![w すみません、ちょっと教えて頂きたいのですが、 現在VC++(仕事) & gcc(割と趣味)を使っているのですが、 この OpenWatcom を使うメリットってあるでしょうか? VisualC/C++ ・・・女のコンパイラ gcc ・・・餓鬼のコンパイラ Watcom ・・・漢のコンパイラ >>179 なるほどありがとう!俺も漢になってきまつ!! ・・・ってヲィヲィ・・・ 気が早い事で Open Watcom 2.0 の新機能(予定)が newsgroup に流れてますた。 1. Completing port to Linux 2. Fix the compiler and get STLPort fully integrated 3. Port the compiler to FreeBSD 2番目以外はどうでもいい。 個人的に空白の入ったパスに対応して欲しい。 >>181 どうでもいいが、IDEが時代遅れ。 何とかしてほしいと思うのは俺だけか。 >>182 下手に VisualStudio並の IDE を作ろうとして 巨大で、遅くて、不安定で、中途半端でってなるより余程マシだと思われ。 VS並のIDEを求めるならeclipseベースでいったほうが。とは思うがな。 Host Platform にWin3.1やOS/2も入ってるから GUIを今風の物にするのは難しいかも。 やはりそれよりも早く言語仕様を最新のANSI規格に合わせてほしい。 プロジェクトに自分で作成したヘッダーファイルを追加するには、どうしたら良いですか? と言うか、ヘッダーの読み込みの設定は何処なのか、どなたか教えて下さいませんでしょうか? >>187 適当にいじくってればわかると思うので もう解決してるかもしれませんが、 IDE の Options の C++ Compiler Switches もしくは C Compiler Switches の 1. File Option Switches の Include directories (ディレクトリで指定) もしくは Include files (ファイル単位で指定) >>187 あ、あとヘッダファイルをプロジェクトに追加するだけなら C/C++ のソースを追加する手順と殆ど同じ手順で出来ます。 >>188-189 さんレスどうもです。(m--m) がしがしやっていたら出来ますた。 関係ない話ですが... 大昔に、しぃマガジンかなんかでコンパイラ特集していた時、Intel,Watocomの 評価成績がかなり(・∀・)イイ!だったのを思い出しますたよ。 現在、女のコンパイラ>>179 とIntelを使ってますが、今後を期待して漢のコンパイラ>>179 も 使ってみようかなと思う所存であります。(`・ω・´)シャキーン なんか>>179 の呼び方が素敵だと思うのは俺だけだろーか。 そらもう、VC は仕様に寛容だし、Watcom は厳格だし。 >>179 の基準で行くとBorlandやDigital Marsは何のコンパイラになるんだろう。 Borland・・・学生のコンパイラ DigitalMars・・・マゾのコンパイラ OpenWatcomサーバー落ちてない? せっかく半分落としたのに全部パーや。 OpenWatcomの中からMFC関連ファイルが削除されているのだけれども、 これって別途入手する方法ってあります? >>196 DigitalMarsで配ってるやつを使うとか、手持ちのコンパイラについてるMFCを 流用するとか。 ftp://ftp.digitalmars.com/Digital_Mars_C++/MS/ >>197 さんレスどうもです。 何となく流用して使うのに抵抗があったもので...というのもあるのですが、 本当は、VC7のMFC格納場所がよくわからんかったので、投げてしまいますた。 後で、ヘルプとにらめっこしていたらしっかり書いてありました。 スマソです。(m--m) でも、旧版のMFCの在処がわかったので助かりますた。(・∀・)サンクス!! そういえば質問。 Watcom で Win32 DLL を作ってるんですけど、エクスポート 定義ファイル(.def)が Watcom じゃ認識しないみたいなんだけど、 どうやって認識させればいいのでしょうか? EXPORTS Function@1 例えばこんなやつ。 >>199 事故レス とりあえず本家newsgroupの方に投げてみることにする。 前出の例をリンクするためには、ダイナミックリンクライブラリの属性と エントリポイントを記述するリンカ疑似命令ファイルを作成しなければなりません。 以下のリンカ疑似命令ファイルはDLLSAMP.LNKという名前で、ダイナミックリンク ライブラリの作成に使用できます。 system nt_dll initinstance terminstance export dll_entry_1_ export dll_entry_2_ file dllsamp 注意: 1."SYSTEM"疑似命令は、Windows NTダイナミックリンクライブラリの作成を指定します。 2.ダイナミックリンクライブラリがWatcom C/C++ランタイムライブラリを使用すると、 新しいプロセスがダイナミックリンクライブラリにアクセスするたびにオートマティック データセグメントが作成されます。この理由から、プロセスが最初にダイナミックリンク ライブラリにアクセスするときには、初期化コードを実行する必要があります。このため には、"SYSTEM"疑似命令に"INITINSTANCE"を指定しなければなりません。同様に、 "TERMINSTANCE"を指定して、プロセスがダイナミックリンクライブラリへのアクセスを 完了したときに、終了コードを実行できるようにする必要があります。Watcom C/C++ ランタイムライブラリを使用しなければ、これらのオプションは必要ありません。 3."EXPORT"疑似命令は、ダイナミックリンクライブラリのエントリポイントを指定します。 "EXPORT"疑似命令で指定する名前にアンダースコアを追加することに注意して下さい。 これは、レジスタ引数渡しの場合にコンパイラによって成されるデフォルトの命名規則です。 スタック引数渡しの場合には、アンダースコアはつきません。 ここで、以下のコマンドを実行して、ダイナミックリンクライブラリを作成できます。 C:\>wlink @dllsamp DLLSAMP.DLLと呼ばれるファイルが作成されます。 >>201 ありがd。 結局 Watcom は独自仕様みたいだねぇ。 でも export に指定する関数に、任意の序数付けることできるかなぁ? dll_entry_1_@1 とか。 >>202 OpenWatcom って link(Microsoftのリンカ)のクローンとかって無くなってるん? あるんだったら -def オプションで出来そうだけど… >>203 やべぇ、あったし・・・ (;・∀・) んー、 IDE 使わず nmake すべきかなぁ。 最適化すごいね。 単純なプログラムでもわかるくらい速くなる。 既に Linux 版の開発してるみたい。 ftp://ftp.openwatcom.com/watcom/devel/wcclnx.zip いまさらだがCマガ4月号にWin用バイナリとソースが入ってるね。 記事に載ってなかったから、今まで気づかなかったよ。 あがったついでに。 近々 1.0.1 が出るそーです。 ・packaging (?) ・サンプルコード ・Win386サポートの強化 ・16-bit の mathlib のfix その他多数のbugfix Duke Nukem 3DのソースコードがGPLでリリース http://slashdot.jp/articles/03/04/03/0018237.shtml >コードはWatcom C用(OpenWatcomでもコンパイル可)であり、アセンブラを >含むのでx86専用だが、いずれ他の環境にportする勇者が現れるだろう。" Open Watcom 1.1 Beta キタ━━━━(゚∀゚)━━━━!! Open Watcom 1.1 Beta 更新シタ━━━━(゚∀゚)━━━━!! 1.1には、Win16のヘッダファイルが追加されてるみたい。 あとの変更点は確認中。 パッケージ版にはついてきた日本語ヘルプはいずこへ… >>219 VCのコンパイラ代替(cl(386).exe)があるぞよ。 VCからmakefileをエクスポートして、OWでコンパイル可能鴨。 ただ、MFCは使えない罠。 >>220 誰かが作らないと。 しまった C:\直下にbinntやらbinwをインストールしてしまった まあいいか ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉 >>230 もともと商用のコンパイラだったけど Watcomを買収したPowerSoftを買い取ったSybaseが 「ウチはもうコンパイラ売らね」 と言い出したので、オープンソースで開発を続けることになりました。 >>230 >>1 >>234 このコンパイラ、準拠してる規格が古いので注意するべし。 >>235 えー、まじっすか? じゃあ、gccにしようかな・・・。 ・・・と思ったら、gccってSJISが一部通らないみたいですね。 うーん、じゃあやっぱりWatcomかなぁ。 >>236 既出だけどWacctom C++の準拠度 ttp://cmeerw.org/prog/freecpp/ バージョンが 11.0c になってるけど OpenWatcom 1.0 もほぼ同じ。 >>238 あ、見落としてました。どうも。 Watcom無惨ですね・・・。 無残も何も、会社自体終わってるし、 引き継ぎ先で捨てられた製品じゃん それを言ったらDigitalmars (Symantec)だって・・・ DMCとか16bitコード吐けるから良い。 フリーのbccは出来ないから。 設計の古さがアドバンテージっていうのも… 他のコンパイラを牽引してくようなバリバリのモダーンコンパイラになって欲しいな >>245 Direct X6 とかの頃は使ってた。 今は知らない。 X6が使えるんなら今でも使えるだろ・・・ヘッダ情報さえあわせれば? Boarlandはヴァージョン7からBCC用のライブラリが無くなって、 そのままじゃ使えなくなったぞ。 >>248 OpenWatcom C++の時代到来か。 勉強するなら gcc か bcc で手ごたえを見て、 本格的にやれそうなら、vc勝っとけ。 winアプリならそれが一番近道。 じゃあ わしはDigitalMarsをお勧めするぞ >>179 > gcc ・・・餓鬼のコンパイラ > Watcom ・・・漢のコンパイラ gccの方が漢のコンパイラっぽいのではないか。 OpwnWatcom は主導者がいない時点で駄目かと。 >>259 オープンソースだから大化けする可能性も。 >>259 Michal Nescasek氏とかじゃ不足なん? DigitalMarsからWalter Brightを引っこ抜いてくるとか __∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄ みなさんのOpenWatcomライフはどうですか? viwも日本語対応にしてくれれば、IDEが使いやすくなるんだが・・・。 一つテーマが決まった 《viwを取ってきて日本語対応にする》 viwだけとってきたかったが、一つの大きなzipだけがあったのでそれをダウンロードした。 viwのあるフォルダは見つけたけどまだコードは見ていない (⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン いぇーい!!ついに俺の時代がきたぜ!!! WATCOMなら任せろやゴルァ!! なに?日本語版ヘルプ欲しいって?やらねーよだ(プ なに?最適化のオプションが難解?自分で調べろ(プ なに?MFC使いたい?それぐらいWin32APIで自分で作れ(プ なに?エラーメッセージを日本語化してほしい?あんな簡単な英語ぐらい解読しろ(プ なに?DirectX9.0は使えるのか?当たり前だろ。お前馬鹿すぎ(プ なに?IEDがダサイ?コマンドラインからコンパイルしろ(プ なに?デバッガの使い方が分からない?使って覚えるもんだ(プ なに?漢のコンパイラ?高価なVC使ってろ(プ なに?リソースエディタでハングした?VCのrcファイルを流用できるだろが糞厨よ(プ なに?VCの最適化とどっちが速いだ?VCに決まってるだろ(プ なに?XPで動くアプリ作れるのかだ?きまってんだろ(プ なに?PC-9801?対応してるって書いてあるだろ(プ なに?OS/2?あんなんどこで使われてるんだよ(プ なに? >>276 IEDってなんすか? 初心者なんでよく分かりません 教えてください それってIDEのことでは?IEDってなんだろう。。。 最適化がVCに負けるようになって価値が半減 したなー watcomer何とか汁! そういえば、OWの日本語ヘルプだけど、Powersoft Power++ 2.0のヘルプで 代用可能ですよ。オーナー限定だけど。 つか、アシストよ。Power++ 2.0 starterkit / developerのパッチ消すなよ…。 Watcom統合開発環境 フトウェア開発では、各プロジェクトごとにソースファイル、インクルードファイル、ライブラリなど 何種類ものファイルを管理しながら作業を進めます。 また、コンパイラ、リンカ、プリプロセッサ、デバッガ、エディタなどのプログラミング用ツールも使用します。 これらのソフトウェア開発において従来から行われてきた方法に、今回新たにWatcom統合開発環境(IDE)が加わりました。 このWatcom統合開発環境は、プロジェクトのファイルや言語ツールを管理するソフトウェア開発ツールです。 これはツールですが、その中身からすると一般的に開発環境として定義され、またそう呼ぶのがふさわしいと思われます。 Watcom統合開発環境を使用すると、プロジェクトに関係する各ファイル、そしてアプリケーションの作成に必要なあらゆる言語ツールに直接にアクセスできるようになります。 なに?最適化をなんとかしろだ? WATCOMは前は5万8千円だぞ。CD一枚で。 それで、VCのが最適化が優れてるなら、VCを選べばいいだろが。アフォけ? タダになったのは、それだけの理由があんだろが。 VC++(≒Intel C++ Compiler)は、M$とIntelの馴れ合いによって生まれたような物なんだから、 x86環境に於いては、それを超えるコンパイラは生まれようがないわけで… それで、他のC++コンパイラでは商売にならなくなったということだな。 M$がWatcomのコンパイラをパクったにきまってんじゃん 昔からREだけは得意なメーカーだし。 プロジェクトを開くには、次の操作を行います。 1.[File]メニューから[New Project]を選びます。 作成しているプロジェクトに付けたい名前を入力する、[Enter Project Filename]ダイアログが表示されます。 2.File Nameフイールドに名前を入力し、次にディレクトリを選択します。 すべてのプロジェクトに、拡張子.wpjを付ける必要があります。 図10[Enter Project Filename]ダイアログを使用して、新規プロジェクトを作成 3.操作を終えると、[OK]ボタンをクリックします。 [Enter Project Filename]ダイアログが閉じて、新規プロジェクトの名前が[WATCOM IDE]プロジェクトウィンドウのタイトルバーに表示されます。[New Target]ダイアログが開きます。そこに、新規プロジェクトに追加するターゲットを入力してください。 既存のプロジェクトを開くには、次の操作を行います。 1.[File]メニューから、[Open Project]を選びます。 開きたいプロジェクトを選択するための、[Open]ダイアログが表示されます。 図11[Open]ダイアログを使用して、既存のプロジェクトを開く 2.開きたいプロジェクトを選択します。 すべてのプロジェクトには、拡張子.wpjが付いています。 3.選択したプロジェクトが[Filename]フィールドに表示されたら、[OK]ボタンをクリックします。 [Open]ダイアログが閉じて、選択したプロジェクトの名前が[WATCOM IDE]プロジェクトウィンドウのタイトルバーに表示されます。選択したプロジェクトにターゲットが存在する場合には、ターゲットを表すウィンドウがメインウィンドウに表示されます。 ってあるんだけど、関連付けでオープンしようとするとエラーになる これって何か作ろうとすると結局CD買うかMSDN購読しないとだめなんだよね >289 んなことねーよ。MFCなんて使わなきゃいいじゃん。 DXと、Win32APIが使えるyo!! >DXと、Win32APIが使えるyo!! でも、Win32APIも、古いまま? Win32APIはMinGWのw32apiが入ってる。 MS製のPSDKはフリー配布不可なんでCD版にしか入ってない。 >>292 > んなことねーよ。MFCなんて使わなきゃいいじゃん。 ププッ PGの規模や構造によってはMFCは邪魔でしか無い場合もあるな。 そういう自分は小物ユーティリティばかりなんで、APIオンリーで Cランタイムルーチンも使っちゃいないが…。 >>296 つまり小物以外のものを作るにはこれだけではちとつらいかもしれんと いうことですね。 べつにケチつけてるわけでなくて、実際に使おうとするときに ぶちあたる問題の一つなんかなと思うだけです。 Open Watcom C/C++ and Fortran 1.1 rc1 -> 正式版age てか>>300 だけどさ、もまいらMFC以外のライブラリをしらんのか? wxWindowとかいろいろあるじゃん。 ぽ! インストしたぞ。 どうすすりゃバカが金貢いでくれるソフトができるんだ? 実行したら 逝って佳って力いっぱい表示するウィンドが出て、マウスでクリックしたら窓消して終了するプログラムのソースクレ >308 GUIでのプログラミング経験がないんだよ。 なんか取っ掛かりがないとどっから入ればいいのか判らないんだよ。 頼むよ。 >>307 ほれ↓ #! /usr/bin/wish button .b -text {逝って佳} -font {{MS ゴシック} 64} -relief flat -command exit pack .b -fill both -expand yes C言語版 #include <stdio.h> #include "tcl.h" #include "tk.h" int main(int argc, char* argv[]){ Tcl_Interp* interp; char buf[256]; interp = Tcl_CreateInterp(); Tcl_FindExecutable(argv[0]); if(Tcl_Init(interp) != TCL_OK) return 1; if(Tk_Init(interp) != TCL_OK) return 1; strcpy(buf, "button .b -text {逝って佳} -font {{MS ゴシック} 128} -relief flat -command exit\n\ pack .b -fill both -expand yes\n"); Tcl_Eval(interp, buf); Tk_MainLoop(); return 0; } >313 ありがとうございます。 でもわー人gん3個、エラー9個でました.... 文字列を複数行に分けるときは一度"で閉じるべきだよ。 それで、CでWIん32叩いて窓開けるソースどなたかください >>317 http://www.kumei.ne.jp/c_lang/ OpenWatcom って Win32 API 使えるんだっけか? >>318 使えます。MinGWのw32apiが付いてきますが当然M$のWindowsSDKも使えるはずです (つうかCD版にはWindows SDKも入っているはず。) ウインテル用アプリをどうするかというスタスタだよ。 自己完結タピならGccで頑張るのがいいよ。 でもウインテルでの、かえいkあおちkj%きwし はぁ、悩ましいね Watcomもフリーになったのか。知らなかった。 大昔、NetWareのNLMを作るのに使った覚えが。 >328 みれない Welcome to SDK Update The Microsoft® Platform SDK site requires Microsoft Internet Explorer version 5.0 or later. You can download the latest Internet Explorer for free. In addition, Microsoft ActiveX® controls are used to install components on your computer. If you are not running Microsoft Windows® or an operating system that is compatible with ActiveX controls, you cannot install the SDK using SDK Update. >>329 Internet Explorer 5.0 以降使え >Internet Explorer 5.0 以降使え いやれつ >>331 >>330 は >>329 を要約&和訳したもの。 いやなら Microsoft にでもメールしろ。 ttp://qmedia.e-storefront.com/product.asp?productid=26 それかCD買いなされ。 かねありません。 プロバイダも未払いなので18日でとまりまつ >>334 C++やりたきゃ、EclipseにC++プラグイン入れて作っちまえよ。 Eclipseはオープンソースなのでただでできるぞ。 >>337 正直なところ、gccしか利用できない環境でしか gccは使いたくないかも・・・ 昔はgccも 「メーカー純正コンパイラより質のいいコードを吐く」 とか言われてて、俺もDOS上でDJGPPとWatcom (+dos4gw)使ってたけど 今は両者の最適化具合はどんなもんなんだろう? Intel > VC++ > DigitalMars > OpenWatcom > GCC > Borland こんな感じかな? >>340 ゴメンね。 GCCスレは今なんかアレな状態だし、 オサーンは昔のPC板にでも逝ってくるわ。 ・・・っと思ったら、なんかbubble鯖が落ちてるし。 _| ̄|○ おい、OpenWATCOMのCD-ROM自体はピーコ禁止?譲渡禁止? >>345 CDにはMS製SDKの他に商用のツールも含まれているので禁止。 >>346 OpenWatcom の CD 持ってるん? 内容物リストキボンヌ >>348 んだと Windows-SDK とか MFC とか OS/2 Toolkit とかのライセンスとかによるんじゃないか? とりあえず、OpenWatcom の CD をコピーして販売するのは完全にダメだと思ったけど、 社内で複数のコンピュータにインストールするのとかはどーなんだろね? 譲渡に関しては自分のコンピュータから OpenWatcom 全部アンインストール、 自分の持つ OpenWatcom の CD のコピーも全部放棄した後ってんであれば譲渡できそうだけど。 borland C++も無料のコンパイラらしいけど あれとなんか違うのかこれ? IDE (いで): 本名 井出和人、1951年12月10日生まれ、福島県出身 >>352 IDE : Integrated Development Environment : 統合開発環境 すくなくとも最適化では、今も昔もWATCOM>>>>>>>>Borland 率直にいってBorlandが最適化で評価された記憶がない 最早BorlandはCコンパイラに力入れてないもんね いまじゃ、コード自体は、 Borland C++ より Java(HotSpot) で実行した方が早い時代です(笑) VC で最適化すれば勝てる。Intel C ならさらに吉! Watcom は Intel が支援しなくなった時点で終了(笑) >>357 > Watcom は Intel が支援しなくなった時点で終了(笑) ソースキボンヌ OpenWatcom 1.1 の案内メールが来たので一部訳してみますた。 What's new in Open Watcom 1.1 ----------------------------- ・ -ol (ループ最適化) オプションを使うと、たまに不正なコードを吐いていた。 ・printf 関数が非常に大きなデータを扱えるようになった。(今までは page fault していた) ・math emulation library が NAN、INF、正規化されていない値を正しく扱えていなかった。 ・アセンブラがコード・セグメントのデータにアクセスする際、 暗黙のセグメントオーバーライド prefix を生成していなかった。 ・OS/2 で TZ 環境変数をセットしている場合、clock() 関数がたまに不正な値を返していた。 ・OpenWatcom のエディタ(vi/viw)のテンポラリファイルを置くフォルダを TMPDIR 環境変数から、TMP 環境変数に変更。 ・パッケージにファイルが入ってなかったのを直した。 > ・パッケージにファイルが入ってなかったのを直した。 ・パッケージにいくつかのファイルが入ってなかったのを直した。 >>355 コンパイル速度>最適化が伝統だから。 な割にはbccそんなに速くないんだよねえ。 >356 ボーランドは製品の個人への販売自体に全く熱心ではない。 昔、輸入品のターボパスカルを買って以来、しばらくは出る製品皆買ってた。 マイクロソフトがソフトウエアの顧客サポートを説明書の代読と定義したあと ボーランドの製品も急速につまらなくなっっていった。 製品パッケージが何をする為のもので、そのパッケージ以外に何が必要なのかが さっぱり明確でなくなった。 悪いのはMSであるが、それに振り回されぱなしで、会社のゴタゴタを含め 堕落したのはボーランドの責任だ。 >>365 Turbo時代はよかったよね。M$もそれなりにがんばってたと思うけど。 WATCOMの話をしてくれ・・・ おれは最適化さえあればIDEはいらない。 というか、コンパイラとIDEは製品として比較すべき もんじゃないと思う。 最適化、最適化いうけどその効果はちゃんと測定してる? いくらコンパイラがかしこかっても君のウデがだめだとだいなしだよ プログラマ(開発環境のエンドユーザー)が作成するファイルは何なのか。 それは何で作成するのか。といった最も基本的なことを明確にして欲しいんだよね。 昨今の開発環境はそんなことは、判りきっているだろって感じで明確になってない。開発環境が勝手に生成、添付したりする場合もあるわけだよ。 プログラム自体のコードと、GUIのためのリソースと、必要となるライブラリと 明確ならないと作ったプログラムを配布できない。 バージョンアップで何が変わったかという話になると更にあいまいもこ。 > 最適化、最適化いうけどその効果はちゃんと測定してる? >いくらコンパイラがかしこかっても君のウデがだめだとだいなしだよ お前理解していないだろ。 駄目プログラマでも秀才プログラマでもバイナリの実行時間が大差ないのが良い最適化コンパイラだよ。 FORTRANの例でいうなら、添え字の順番と入れ子の制御変数との関係なんかを 最適にするわけだ。無意味にループ内に存在する計算をループ外へ出すわけだ。 >>370 > 駄目プログラマでも秀才プログラマでもバイナリの実行時間が大差ないのが良い最適化コンパイラだよ。 駄目プログラマは コンパイラが最適化できるような小手先の手段しか知らないが、 駄目じゃない連中は コンパイラが最適化できないような手段も知ってる。 >>駄目プログラマでも秀才プログラマでもバイナリの実行時間が大差ないのが良い最適化コンパイラだよ。 そんなコンパイラがあったとすれば、ソースと実際の処理が一致しないケースが出てくるだろう。 なぜなら、駄目プログラマが書いたソースと秀才プログラマが書いたソースでは基本的なアルゴリズムから違うのだから。 また、秀才プログラマはデータの性質も考慮して、一般的には遅いと思われるアルゴリズムを採用する事もあるだろう。 それらを同等にそのコンパイラにかければ、駄目プログラマが書いたプログラムは改善されるかもしれないが、秀才プログラマが書いたプログラムは改悪されてしまう事もある。 そして、一番の問題はデバッグ。そのコンパイラが吐き出したプログラムはソースとは全く違う処理が行われてしまう可能性があるため、出力されたプログラムを解析しなおす必要がある。 これでは非常に効率が悪い。 良い最適化コンパイラは、駄目ソースからは少しはまともな性能のコードが、良いソースからはより良い性能のコードが得られるコンパイラだと思うがどうだろうか? >>372 デバッグするときは最適化オプションを外しなさい、 っておばあちゃんに教わらなかったの? >>373 いや、むしろ積極的に最適化オプション付けてデバッグして、 挙動が違ったらバグ報告してくれ。 >>373 デバッグが終わってリリース版として最適化オプションつけた後にもバグが出る事はある。 >>375 そーゆー場合もバグ報告してくれ。 ところで、 > デバッグが終わってリリース版として最適化オプションつけた後にもバグが出る事はある。 って OpenWatcom とか 旧Watcom での話なんすか? >>376 上に挙げたのは>>370 に出てくる良い最適化コンパイラがあったとしての例えの話。 >372 >駄目プログラマが書いたソースと秀才プログラマが書いたソースでは基本的なアルゴリズムから違うのだから。 また、秀才プログラマはデータの性質も考慮して、一般的には遅いと思われるアルゴリズムを採用する事もあるだろう。 アルゴリズムが違うってSEは何やっているんだよ。 プログラマのやることは詳細設計指示書に基づいたコードの作成だ。 システムの根幹を構成するアルゴリズムの毛定!なんて部分にプログラマの出番はない。 大体、今日日アルゴリズムを考える必要性なんかあるかよ。 昔プログラマが悩まされたのはハッシュによるデータ検索なんかだけどさ 今ならそんなものバカサーチで十分実用になっちまうからな。 >>380 しあわせなお方ですな。半径5m以内くらいしか感知できない感じかな。 >>370 > 駄目プログラマでも秀才プログラマでもバイナリの実行時間が大差ないのが良い最適化コンパイラだよ。 はあ、そうなんすか。はじめて聞きますた。 > FORTRANの例でいうなら、添え字の順番と入れ子の制御変数との関係なんかを > 最適にするわけだ。無意味にループ内に存在する計算をループ外へ出すわけだ。 プログラムつくったことないでしょ。そういうローカルな最適化だけではダメプログラマ のプログラムは救えません。 >>370 ちょっと覚えた知識をひけらかしたい性向な方? おれの欲しい最適化はそんな、そんな複雑なもんじゃないんだ もっと「これはひどいよ、WATCOM君クスンクスン」と嗚咽してしまう 単純なものなんだ x = y = z:; とあったら、なにも考えずに mov reg,[z] mov [y],reg mov [x],reg とやってくれよ・・・2回もzをregに入れるんじゃねぇ!!わかったか糞! >>384 速度に関して言ってるんだったら、どっちが速いか計測したんか? サイズの最適化だったら それぐらいやって欲しいけど。 >>384 自力で直してコミットしやが、してください。 x,y,xが数MBになるような構造体でもいいのか? >>387 > x,y,xが数MBになるような構造体でもいいのか? z が抜けてるよ。 デバッグバージョンで正常動作したソフトが、リリースバージョンでは正常に動かないなんて、良くあることだ。 最適化オプションは、すべてが安全なわけじゃない。 どんなソースでも常に安全なオプションもあるが、ソースによっては危険になるオプションもある。 職業プログラマなら、どのオプションがどんな働きをするかくらい、基本知識だろうが。 >>390 最近の職業プログラマ様は凄いんですね。 ところで、 > デバッグバージョンで正常動作したソフトが、リリースバージョンでは正常に動かないなんて、良くあることだ。 ってのは OpenWatcom とか 旧Watcom での話なんすか? 390ではないですが、OpenWatcomはまだつかったことないけれどWatcom11.0Jの時に 2〜3回最適化オプションで変な動作をするようになったことがありました。ディスアセンブル したソースみながら問題ないような記述に変更した記憶があります。 ところで、職業プログラマでなくても、いろいろなCのなかからわざわざWatcomC 使うような人ならどのオプションがどんな働きをするかは知ってそうな気がするので すが、そんなこともないのかな。 >>392 > どのオプションがどんな働きをするかは知ってそうな あぁ、マニュアルに書いてある程度の知識はあるけど、 どのオプション使ったら任意のソースが どんな機械語に変換されるかまでは知らない、って意味です。 >ところで、職業プログラマでなくても、いろいろなCのなかからわざわざWatcomC 使うような人ならどのオプションがどんな働きをするかは知ってそうな気がするので すが、そんなこともないのかな。 時代が変わった >>394 >>392 も >>393 の意味ではオプションを知ってはいないだろう。 (でなければ、>>392 の前半のようなミスを犯すわけが無い) 時代が変わったのでなく、あんたが昔を美化したいだけだ。 まぁ・・・予想通りだが 要するに、そんなちょっとの無駄なレジスタロードなど 気にするなと。そんなのが1万あろうが1億あろうが、 体感できないと。そういうことだな。 そんならさぁ・・・もうコンパイラに最適化必要ねえよな x86ならレジスタ1個でメモリ使いまくりゃいいべ。極論だがな 俺も年をとったということか。詩嚢 >>396 やれやれ。 死ぬ前に >>384 のを直してコミットしてくれ 古き良きプログラマなら そんぐらい出来るんでしょ。 FTP(devel)にいろんなドキュメントが追加されますた。 確認していないので内容はわからないですが...須磨祖。 >>398 elf omf coff pe のファイルフォーマットの資料とか、 3DNow や intel CPU 向けの最適化の資料とか、そーゆーのが置いてあるね。 Watcom が書いたドキュメントってわけではないみたい。 devel/1.2_beta ってのもあるね。 個々のファイルの最終更新日時が 2003/8/30 になってるけど、 これって前からあったっけ? Probably in December. < OW1.2 どうも>>399 さん 1.2_betaのフォルダ以下のファイルは、前から(最終更新日時で)有りました。 ftp://ftp.openwatcom.org/watcom/devel/1.2_beta/ に beta の新しい奴が入った模様。 変更点は以下を参照のこと ftp://ftp.openwatcom.org/watcom/devel/1.2_beta/readme.1st ftp://ftp.openwatcom.org/watcom/devel/1.2_beta/ が更に新しくなった模様。 1.2RC1ができてますね。 ftp://ftp.openwatcom.org/watcom/ ソースからビルドしたら, Cコンパイラのメッセージが日本語になってしまいました。 どうしてそうなるのか不明。 ご存知かもしれませんがviwってCUT&PASTEなら日本語も使えるんですね. ∧_∧ (゚Д゚ ,,) {Borland C++ Compiler。) (uu__)〜 >>407 それがどうした。 オープンソースじゃないものに用は無い。 でも実際にソースを読むやつは少数派だわな。 これって未だに一部日本語メッセージが含まれてるけど この部分のメンテって誰かやってるんでしょうか? もしかして、みんな日本語わからなくて放置状態? > もしかして、みんな日本語わからなくて放置状態? そのとーり 1.2 release でも半角空白入りのパスを正しく扱えないプログラムが残ってるらしい。 今 news group の方で話題になってる。 どうでもいい事なのだが・・・ exeからインストールしたファイルと、zipを展開した ファイルでタイムスタンプが違ってしまうのな。 zipが+9:00になる。 多分wise(インストーラ)がタイムゾーンを考慮してない 為だろうけど、しょうもないなぁ >>414 ソフトによっては、タイムスタンプがバージョンを表している (Ver1.23なら1:23)物もあるので、wiseインストーラはわざと タイムゾーンを無視しているんじゃないでしょうか。 メニューを日本語化したものって需要ありますか? Windows版ですけど(IDE, Debuggerあたりがそこそこに…) こういうのを敢えて使ってる物好きには、特に需要はないと思われ。 watcomを使う人は、IDEを使うタイプの人とは思えない >>421 gcc(Mingw版)とLCC-Win32とBorland C++使ってるよ。 選択肢は多いほうがいい。 さりげなくWinXP for x64に対応したりとかしないのかな ftpの資料置き場にはAMD64の資料もあるみたいだけど。 唐突に対応したら骨董品から一気に成り上がれるよな。 でもnews見てる感じだと、今はそういう動きは無いみたいかな? 無意味にage。 さびれてるのでageついでに。 OpenWatcomのリンカってPlatformSDKやDirectX8以降(?)で使われてる 新しいCOFFフォーマットに対応してるのかな? Webを一通り見たけどのってなかったので誰か教えて。 >426 お!オレの出番だな! Watcomリンカは、オブジェクトファイルとライブラリファイルを入力とし、実行可能ファイルを出力として作成するリンケージエディタ(リンカ)です。Watcomリンカは以下のオブジェクトモジュール フォーマットおよびライブラリ フォーマットをサポートしています。 キ標準Intelオブジェクトモジュール フォーマット(OMF) キIntel標準OMFに対するMicrosoftの拡張 キ80386アプリケーションをリンクするためのPhar LapのEasy OMF-386オブジェクトモジュール フォーマット キCOFFオブジェクトモジュール フォーマット キELFオブジェクトモジュール フォーマット キOMFライブラリ フォーマット キAR(Microsoft互換)オブジェクトライブラリ フォーマット お前らが欲しがってる日本語ヘルプより。 >>427 こんな古いものを・・・>>427 さん、酸素欠乏症にかかって・・・ (俺も持ってるけど) >>426 ttp://cmeerw.org/prog/owtools/ > wlink Features (Compared With DMC's OPTLINK) > ・support for COFF libraries (including Microsoft's new-style COFF import libraries) > ・can link programs with more than 40 MB static data と書いてあるのでたぶん使えると思う。 お、てことはリンカだけ流用すればぶっちゃけBCCでもなんでも PSDKやDirectXが使えるってことか。 thx! そんなことしなくてもCoCreate系使えばリンカ必要ないじゃないか >>431 ん?なんでそれでリンカいらないのかわからん…。 猿以下のミジンコにもわかるように教えて下さい。 >>434 COMの仕組みはまぁ表面的にわかってるんだけど、最終的に実行ファイルやDLLを作り出す ためにリンカはいるんじゃないの? 間違ってる? あってるよ リンカがホントにいらないってことはない OMFベースのリンカだけで逝けるでしょうってこと tlinkってCOFF扱えるようになった? >>437 私が間違っていましたと書けばいいものを、見苦しいいいわけしやがって。 dos用のいいmakeない? wmakeなんかイクナイ できればextender使わないのを・・・贅沢でスマン gnuish gmakeを試したけどマシンがリブートする DOS用なら KI-Make はどうでしょうか? ttp://www.vector.co.jp/vpack/filearea/dos/prog/make/index.html >>443 これ知らなかった。これから試します。 あんがとー >>443 なかなか良い感触です。べりぐっちょさんくす KI-shellの中の人だったのね 連投スマン。誤解ありそうなんで訂正 KI-shellの中の人が作ったmakeだったのね 449 名前:デフォルトの名無しさん[sage] 投稿日:04/03/25(木) 21:55 -3r 386 register calling conventions -3s 386 stack calling conventions どう違うんだ?誰かわかりやすい説明キボンヌ 450 名前:デフォルトの名無しさん[sage] 投稿日:04/03/25(木) 22:28 >>449 書いてある通り。 -{3,4,5,6}r 引数をレジスタで渡す -{3,4,5,6};s 引数をスタックで渡す 短いテスト用のコード書いて C:> type foo.c int foo(int a, int b){ return a + b; } C:>wcc386 -3r foo.c C:>wdis foo.obj とかやってみれ。 VC ToolKit2003だってよ。立場ねーよどうするよ? OpenWatcomのFORTRANでやってるぜ って人はいないんでしょうか ソースファイルを編集しようと思って IDEからファイルをダブルクリックするとメモ帳が立ち上がってしまいます watcomのエディターで立ち上げるにはどこの設定を変えればいいんですか? >>456 設定ファイルを自分で書けば Watcom の IDE から VC のコマンドラインコンパイラを使うのは可能だと思われ。 >>457 ネタに混じれ酢してくれて ネタいっちゃって申し訳なく思い始めた ごめんなさい >>466 探しもしないで、どこ見て言ってるのかねw ftp://ftp.openwatcom.org/watcom/ これのソースを、ビルドできた人いる? ソースをダウンしたんだが、どうすればビルドできるのかが分からん。 gccでビルドするの?UNIXシェルのファイルがあって、UNIX上でビルド? デベロッパーのページみたら、何かユーザー登録があって何だ? OpenWatcomのソースはOpenWatcomでビルドするに決まってるだろ >470 もうすこし詳しく教えて。 wpjファイルが、サンプルプログラムのしかなかった OpenWatcom C++って、関数リファレンスは付いていますか? フリーのC/C++コンパイラで関数リファレンス・ヘルプが充実してるのってないですかね。 C/C++の場合、処理系依存箇所以外にリファレンスなんて見るか? といいつつおれはVisualC++付属のVCCORE.CHM見てるけど。 入門者なので、リファレンスをガンガン見るだろうと思ったので。 >>472 wmake辺りなのでは ソースの各フォルダにmakefikeが転がってることだし >>474 Open Watcom C Library Reference Open Watcom C++ Class Library Reference Watcom標準関数なら付属のヘルプで安心。 それで足りなければ適当に探せばよろし >>479 ありがとうございます。漢になれるようにがんばります。 ソースからmakeしてみたら, Cコンパイラも含めて, メッセージが日本語に なってしまいました(多分, 嬉しいのでしょう). あっ, 環境は WinXP(Win NT)ですけど. 今RedHat使っててプログラミングしてるんですが hp: what had happend? HpCheck(dmat.c, 178) : heap violation[ O] というエラーが出てセグメンテーション違反になってしまうのです ちなみにdmat.cの178行は int i, j; double **aa; aa = (double**)MALLOC(sizeof(double)*n); for(i=0; i<n; i++){ aa[i] = (double*)MALLOC(sizeof(double)*m); memset(aa[i], 0, sizeof(double)*m); } のaa[i]〜って部分です どうやったら回避できるのか教えて下さい よろしくお願いします ちなみにそれを使ってるプログラムがこっちです コンパイルまでは通るんですが実際動かすとエラーになっちゃうんです void klt(double **U, double **Y, int K){ int i, n; double a, **v, **d, **E, T, **y; v = dmat(K+1, K+1); d = dmat(K+1, K+1); E = dmat(K+1, K+1); y = dmat(K+1, K+1); for(i = 1; i<=K; i++){ d[i][0] = 0.0; U[i][0] = 0.0; for(n = 1; n<=K; n++){ y[1][n] = Y[n-1][0]; v[i][n] = U[n-1][i]*y[i][n]; d[i][n] = 0.95 * d[i][n-1] + v[i][n]*v[i][n]; E[i][n] = y[i][n] - U[i][n-1]*v[i][n]; T = klt_T(d,i); a = T*E[i][n]*v[i][n]/d[i][n]; U[i][n] = U[i][n-1] + a; y[i+1][n] = y[i][n] - U[i][n]*v[i][n]; } } dmat_free(y,K); dmat_free(v,K); dmat_free(d,K); dmat_free(E,K); } すいませんなんとかなりました ってか別な所からのセグメンテーションでした 自分の愚かさを呪いながら就寝しますorz 今時メンバテンプレートも対応してないんじゃ誰も使わないよな。 中の人にはがんばって欲しいよ。 MS製プラットフォームSDKのincludeをインクルードパスとして指定したら、 winnt.h辺りでエラーが出るんだけど、何故? >>491 こんな感じ ttp://www.heikogorski.de/Compiler/Watcom/watcom.html >>492 thx! こんなの見つけた。既出? ttp://lily.xrea.jp/hikky/index.php?cmd=search&word=Programming%2FBeginners%2FOpenWatcom-HelloWorld これでコンパイルしたバイナリって、商用利用できるの? 勉強するにはいいコンパイラですね。 GrWinとか使えるしIsing模型のシミュでもしてみる。 >>495 ライセンスを読んでみたが、自前のコードをコンパイルして出来た実行ファイルに対する 商用利用禁止規定がどこに書いてあるのかよくわからん。 ちゃんと書いてあるじゃん。商業利用は駄目と。ライセンスも読めないなら 使うなよ。 ライセンス中に出てくる (商用利用禁止の対象である)"Original Code" って語が、 コンパイラのソースコードだけじゃなくって、それをコンパイルして出来たバイナリ (つまりコンパイラの実行ファイル) も含んでるってことだな。 ttp://mput.dip.jp/mput/?date=20040531 このページによると、商用利用どころかGPLコードのコンパイルもマズいっぽいな。 eComStationのサイトにOpenWatcomのサポートが触れてあるんだけど、 やっぱ商用利用不可なんだろうな。 ライセンス読んでみました。 これはOpenWatcomのコンパイラについての使用許諾であって、それで生成したバイナリについてはなんの制限も課していないと思います。 このライセンスの適用範囲は1.Generalにあるように、オープンソース版のWatcom C/C++, FORTRANコンパイラが対象になっています。 生成物までも含んでいると読み撮れる箇所はどこでしょうか。 Watcom C++ Ver11.0 の質問で申し訳ないのですが、 hwTrTest = CreateWindow(TRACKBAR_CLASS,"", WS_CHILD | WS_VISIBLE | TBS_AUTOTICKS, 18,100,200,32,hwnd,(HMENU)IDC_TR_TEST,hInst,NULL); として生成するとトラックバーの背景が白いのです。 ウインドウのクライアント領域は灰色なので色が合わずに困っています。 試しにVC6で同じコードをビルドするとトラックバーの背景は灰色になりました。 WatcomC++でも灰色にする方法はないでしょうか? >>507 リンカのオプションではないでしょうか。 RU WIN=4.0を付けてみては? >>508 ありがとうございます!! IDEでデフォルトの Native NT だったのでWindows95[RU WIN=4.0]に 変更したらトラックバーの背景色が灰色になりました。 リンカでプログラムの動作が変化すると言うのが不思議なのですが、 これはスタートアップ・プログラムが変更されるオプションなのでしょうか? >>509 実行ファイルに記載されているOSのバージョンに応じてWindows側が 動作を変えるのです。 たとえばWindows 3.1用とマークされている実行ファイルについては ダイアログボックスが白くなったりします。 A new Openwatcom C/C++ 1.4 Beta is available (Possible release candidate?) FTPからsetup.exeをダウンロードして試してみた。 XPだと実行しても何も起こらなかったので互換モード(Win95)で 実行したらインストールできた。 XPで使ってみたけど、日本語のエラーメッセージがでた。 1.3までって英語onlyだったような。 さらにコンパイラが「型が違います」のwarningが出た時に例外で落ちる。 warningを解決したら普通に通った。 やはりβ版。 OpenWatcom 1.4 rc2 が出た。 リソースコンパイラの対象ファイルのパスに半角スペース(0x20)が 入ってると「引数が多すぎます」が発生するバグは直ってない…。 仕様? OpenWatcom 1.4で何が変わったの? 更新履歴はどこかで見れ無いかな。 FTPにOpenWatcom-f77が加わった。 Fortranか… このコンパイラのライセンスがよくわからん。 このスレでも意見が分かれてるみたいだし。 OpenWatcomと旧Watcomをプリプロで区別したいんだけど __WATCOMC__ __WATCOM_CPLUSPLUS__ みたいな定義ってあるの? >>520 あるよ。 > The value of the macro depends on the version number of the compiler. > The value is 100 times the version number (version 10.0 yields 1000, > version 10.5 yields 1050, etc.). > Note that for Open Watcom 1.0, the value of this macro is 1200, > for Open Watcom 1.1 it is 1210 etc. Open Watcom 1.3 では両方とも 1230 >>521 サンクス! char型の符号の扱いがOpenWatcomだと微妙に変わってて 判別する必要があったから助かりました。 OpenWatcom 1.4 が正式版になってる。 Win XPの上でですが1.4のIDE, デバガ, リソースエディタを 日本語風にしたものを作ってみました. ftp://157.118.89.2/pub/windows/IDE/OpenWatcom/WatcomSet.html をご覧ください >>526 なぜ、関係なさそうなファイルまでセットなの? 再配布ライセンスが絡んでるとか? >> 528 buildするとできちゃうんです. パッケージにまとめるのが面倒だったんで... 更新履歴の日本語訳見つけた ttp://bauxite.sakura.ne.jp/wiki/mypad.cgi?p=OpenWatcom%2FChanges_in_1.4 OpenWatcom v4.0 special DOS only version ttp://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/devel/c/owatcom/ IDE接続のHDDにDMAにてセクタを書き換えたいのですがまだ上手くできません・・・。 DOS-32BIT(CauseWay Executable)としてコンパイルしています。 この場合でもmallocしたメモリのアドレスをそのままDMA転送用のアドレスとして I/O レジスタに登録しても大丈夫なのでしょうか? 物理アドレスに変換する必要とかはないでしょうか? mallocにて確保したアドレスは4MBを少し超えたところになります。 I/Oレジスタへ確保したアドレスを登録しても、HDDにはアドレス0以降の内容が 書き込まれてしまいます。 >>534 CauseWayは仮想メモリをサポートしたDOSエクステンダなので mallocで確保したアドレスと物理アドレスは一致していないはず。 >>535 なほど仮想メモリだったんですね。 OpenWatcomで仮想メモリを使用せずに32ビットDOSアプリって作れないのでしょうか? >>536 プロテクトモードを使用している限り、プログラムから直接物理アドレスにアクセスすることは不可能です。 特定の物理アドレスにアクセスしたい場合は、DPMIやDOSエクステンダの機能を使って物理アドレスを リニアアドレスに割り当てたり、リニアアドレスに割り当てられている物理アドレスを調べる必要があります。 WatcomC++(DPMI)で物理アドレスをマッピングする ttp://zzt-kuruma.hp.infoseek.co.jp/kai/vram9821.lzh DOS4GW用だから使えるかわからんが、DPMIなら大丈夫か? >>534 >>538 さんのコードで、ほぼOKっぽいですね。 ちなみに、>>538 さんのコードはDPMIをコールしていますが、Open Watcomを インストールしたら付いてくるオンラインヘルプ 「Open Watcom C/C++ Programmer's Guide」 の、「Interrupt 31H DPMI Funcitions」→「Physical Address Mapping」の項が 参考になると思います。 ところで、DMAって16MB内へのR/Wになるようセッティングされてますかね? 所謂DMAって奴だと、16MB内へのアクセスしかサポートしてなかったと思います。 (最近のチップセットだと、拡張してんのかな?) 後、もう1点。>>534 さんに確認。 使用しているのは、DOSモードですよね? WindowsのDOSプロンプト内で動かしてないですよね? DOSエクステンドを使ってコマンドラインAPを作っているのですが、 Ctrl+Cを押されて中断されたのをハンドリングすることってできるのでしょうか? nVidiaのUltra4 チップセットで、16bitWindows(98/Me)用のチプセトドライバが無いのだが、 それで無理矢理使ってたら、Watcomデバッガで、よくOSのエラーがでて 「DLLが無効なエントリポイント」とかってよくなった。 しかし、16bitWindows(98/Me)用のドライバのある、Ultra3のチプセットで、 同じようにデバッグやったら、OSエラーがでなかった。 Dinput使ってWatcomデバッガ使ってWindows98/Me使ってnVidiaのUltra4チップセットマザー使ってる人は、 参考にしてください Borland C++ Compilerを日本語化するソフトがあったら教えてください。 >>544 まだRC2みたいだな。 1.5からの変更点は? WatcomでDirectXを使う場合、DX7までしかライブラリが公開されてないが DX9とかのVCのライブラリをWatcomで使うにはどうしたらいいですか? 久しぶりにFTPを覗いて見たけどWatcom更新してないな。 次期 Comeau C++ で OpenWatcom に対応するようです… ソースは como.exe(439beta) --help の出力 ↓ --wat Requests use of Open Watcom as the backend C compiler (still in progress) フリーのWindowsアプリ開発環境を探していたら、Open Watcomの存在を知りました。 GUIデバッガやリソースエディタとかもセットになってて、 BCC+TurboDbg+BCCdeveloper+PSDKより使いやすいような気がするんだけど、 知らない人多いですね。英語のマニュアルしかないからかな? IDEとかがあっさり死んでしまうからかな? DOSやOS/2用のプログラムを作るのならともかく Win32用の開発環境としてみると、リソースエディタ以外は VC++ 2005 Express Editionがあるからなぁ… >>563 今一・・・ ttp://cmeerw.org/prog/freecpp/ 情報ありがとうございます。 VC++2からVC++6の頃にWindowsアプリ開発の仕事で給料貰ってましたが、 この数年はシステム提案の仕事で給料貰ってます。 本屋で「猫でもわかる・・・」を読んで「あのころはこういうやり方だったよな」 と懐かしくなり、ちょっとやってみようと思い、VC++Expをdownloadしてみたら でかい、遅い、コンパイルエラー吐きまくり、・・・でガッカリ。 無料で使えて軽い開発環境を探してみたら、Watcomを見つけたという次第です。 評価してから新人研修に使おうかと思いましたが、 利用上の制約があるようで、業務に使えない無駄な研修だった と言われそうなので、どうしようか、という状況です。 > コンパイルエラー吐きまくり 書いたプログラムに問題があるのでは _sの関数に切り替えろってワーニングと混同しているかもね。 あとは標準でunicodeの選択になっている辺りとか。 ttp://www.google.co.jp/ >ワーニング に一致する日本語のページ 約 148,000 件中 1 - 10 件目 (0.05 秒) >ウォーニング に一致する日本語のページ 約 127,000 件中 1 - 10 件目 (0.05 秒) 時のながれがゆっくりなスレだ 5年前俺なにしてただろう いつの間にかバージョンが1.7になっとる。 今更気付いたがこのコンパイラ、Linux用のバイナリも作れるんだな。 HX DOS Extender http://www.japheth.de/HX.html Many development environments which support creating Win32 console applications are compatible with HX, among them are: * Open Watcom C++ * Digital Mars C++ * MinGW (uses GCC) * CygWin (uses GCC) * MS Visual C++, including the free version of MS Visual C++ Toolkit 2003 * Borland C++, including the free version of C++ Builder Command Line Tools * LADSoft CC386 * Pelles C * LCC-Win32 (C compiler) * Borland Delphi * Free Pascal (Win32) * Pascal Pro * Virtual Pascal (Win32) * FreeBasic (Win32) * PowerBasic * MicroFocus Object Cobol * XDS Modula II * MASM, TASM, POASM, WASM, FASM, LZASM, NASM, GOASM, ... 16bitOS2用のコンパイルをしたプログラムが Windows2000でしっかり動いたのにちょっと感動した。 コンパイラオプションに、SSE が無いんだけど、どうやって使うの? ↑eve↑,… (+Φ Φ) //'〆∞y ……‥> ←√//;ミシミシミシッ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >COMプログラマの解説書 >Crispin Goswell >Microsoft Office Product Unit >1995年 春 >1995年9月13日改訂 http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdncomp/htm/com_co.asp >抄録 >この解説書は、 >Microsoft(r) OLE Component Object Model(COM)オブジェクトを作成し、 >効果的に使用する方法を説明しています。 >例文はほとんどCで書かれていますので、実際に何が行われているかが、大変分かりやすく示されています。 >プログラマの中には、オブジェクトを実行するためにC++を好んで使用する人もいるでしょう。 >C++プログラマの観点からCOMの概念および基本的な使用法を論じているのは >Kraig Brockschmidt著のInside OLE (第2版)(MSDN Library(Books))です。 >COMとは何か、またその設計や哲学の後ろにある動機付けをより理解する事に興味がある読者なら、 >Component Object Model Specification(MSDN Library(Specifications))の最初の2章を読んでください。 >第1章には簡単なイントロダクションを、第2章では徹底的に概要を解説してあります。 >この解説書ではInside OLEとCOM Specificationにある情報を、 >COMオブジェクトを実装する良い方法をいくつか示しながら解説するようにしてあります。 Object Windows Library Inprise/Borland http://cc.codegear.com/partners/bcb5/exclusive/object_windows_library/index.html This release of the Object Windows Library is based on the OWL 5.4 release and is denoted as OWL 5.5. It has been ported to Borland C++Builder 5 by Yura Bidus, author of OWLNExt. It includes source code and debug and release libraries of, OWL, BIDS and OCF. >>588 ~ OWLNext project home ~ http://owlnext.sourceforge.net/ ~ About OWLNext ~ http://owlnext.sourceforge.net/about.html Advantages of using OWLNext: * OWLNext is an object-oriented framework, built on top of the Windows API without adding much overhead. * OWLNext is pure C++ library, which does not use any vendor- or compiler- specific extensions. * OWLNext fully supports developing Unicode applications. * OLE, OCX and ActiveX support (server and consumer) * OWLNext can be used with wide range of C++ compilers. Currently it is tested with o CodeGear Developer Studio 2007 and 2009 o Borland Developer Studio 2006 o Borland C++ Builder 6.0 o Borland Free C++ Compiler 5.5 o Borland C++ 5.01/5.02 o Microsoft Visual C++ 2003, 2005, 2008 o Microsoft Visual C++ 6.0 Also in the past it has been working with Borland C++ Builder 1.0-5.0, Microsoft Visual C++ 5.0 and GCC and has been ported to Linux using WINE * OWLNext offers easy upgrade path for porting legacy OWL applications to modern compilers and operating systems. * OWLNext is open-source project, it's based on contributions and directions from it's community これって、 Windows XP SP2でコマンドラインでコンパイルしようとすると ファイルの文字数が8だか12だかその辺の短い基準値を超えると コンパイルエラーにならない? たとえば hoge.cppはコンパイルできたとして、このファイル名を hogehogehogehoge.cpp とするとたちまちコンパイルエラーになる。 で、このような同じ問題が再現するかたはいらっしゃいますか? それとも仕様でしょうか? BINNT配下のバイナリでコンパイルすれば大丈夫のはずだけど。 DOS版のコンパイラを使ってるんじゃないの? >>592 よく理解せずDLしてインストールしたので、もしかしたらそうなのでしょうか。 それともインストールの問題ではなく、コマンドの問題でしょうか? > C:\******************\owsetenv.bat > wcl hogehogehogehoge.cpp ちょっと前にOpenWatcomダウソした。 そのまま捨てた。 そしてbcc->dmc->gccと巡ったあと、また戻ってこようとしている。 なんなんだ、わし。 と、話ぶったぎってついでに保守あげ。 OpenWatcomをバカでも使える解説サイトはないんか! Windows XP SP2でコマンドラインでコンパイルしたいのですが open-watcom-c-win32-1.8.exe (MD5が53A42F8ABF01C57B2FE380F1F54DF61A) これをインストールすれば いいでしょうか? R:\>wcl386 foobarfoobarfoobar.cpp Open Watcom C/C++32 Compile and Link Utility Version 1.8 Portions Copyright (c) 1988-2002 Sybase, Inc. All Rights Reserved. Source code is available under the Sybase Open Watcom Public License. See http://www.openwatcom.org/ for details. Unable to open "foobarfoobarfoobar.cpp" やはり長いとコンパイルエラーになりますね。 とりあえずIDEを使えばどうにかなる事に気がつきました。 失礼しました。 >>598 1.8か・・ owsetenv.bat に誤りがある。 changes.envの修正内容のほうが正しい。 >add the following to the 'PATH' variable > C:\WATCOM\BINNT;C:\WATCOM\BINW とするのが正しいので、 >echo Open Watcom Build Environment >set PATH=C:\WATCOM\BINNT;%PATH% >set PATH=C:\WATCOM\BINW;%PATH% の2行目と3行目を入れ替えればいい。 解説すると C:\WATCOM\BINW\wcl386.exe はDOS用 C:\WATCOM\BINNT\wcl386.exe がNT用 >>600 ありがとうございます。 その方法で解決しました! OpenWatcomの実装の中で <sstream> って空ファイルじゃねーか! せめて代用できるクラスくらいないんか! 無理だったorz <sstream> の代用を作る方法を教えてください Open Watcomの標準のヘッダファイルに exception がなく、 exceptio しかないように思えます。 しかし実際は #include <exceptio> でも #include <exception> でも動作するのですが、 これは何が起きているのでしょうか? つ -ft オプション (C++ only) If the compiler cannot open a header file whose file name is longer than 8 letters or whose file extension is longer than 3 letters, it will truncate the name at 8 letters and the extension at 3 letters and try to open a file with the shortened name. This is the default behaviour for the compiler. >>606-607 ありがとうございます。 コンパイラ(プリプロセッサ)側で判断して適切なヘッダを探してくれるんですね。 Open Watcom C++の仕様(コンパイラ依存な部分)について書かれたマニュアルはどこかで見られますか? 例えばpragma等です。 Watcom であることを示すマクロってないですか? 例えば __GNUC__ __BORLANDC__ のような。 特定のWarningを非表示にすることはできますか? 例えばW123を非表示にするコンパイルオプションを教えてください。 Windows XP にて OpenWatcom ver1.8で ttp://codepad.org/TivB3jGM このコードがコンパイルエラーになります。 エラーメッセージは ttp://codepad.org/p3YPCuj8 です。 どうにかしてこの問題を回避できませんでしょうか? よろしくお願い申し上げます。 追記: なお、このコードは g++, comeau c++, borland c++ で通ることを確認してあります。 watcomだし仕方がない。 オプソに参加して貢献しよう。 >>617 boostに見捨てられているくらいだから仕方ない。 あきらめよう。 上述の テンプレートクラスのテンプレートメンバ関数についてのOpenWatcomのバグ を回避する策は何かしらありませんでしょうか。 どうにか…。 厳しいですかね。。。 DOS-Extenderの雄だからさすがに土台が古すぎる。 OS/2で遊ぶにはもってこいなのだが。 テンプレートクラス中のテンプレートメンバ関数を回避する方針にします。 ありがとうございました。 Digital Mars C/C++ compilerもあるし、このコンパイラもういらね >>624 といいつつこのコンパイラのスレを保守するお前はツンデレか? オマイらがそんなことを言ってる間に1.9 RC1が来たぞ。 つttp://www.openwatcom.org/index.php/Download Japanese Localization of Open Watcom http://sourceforge.net/projects/jow/files/ open-watcom-c-win32-1.8-J001.exe これって前からあったっけ? 2010-3-12[金] ちょっと速度比較 ttp://www.6809.net/tenk/ 1位VC、2位GCCなのは予想通りだけど、 Open Watcom と Digital Mars がデッドヒートしてる >>626 full install しないとiostreamとか必要なファイルが全然インストール されないんだけど仕様かな?1.8だとこういうことなかったのに。 Open Watcom 1.9 Release Candidate 2 >>629 rc2で直ったみたい。フルインストールしなくても ヘッダもインストールされた。 >>630 完成してないけど一応ある。 コンテナはそろってそうだけど algorithm関係が20個前後足りてない。 open-watcom-c-win32-1.9RC3 >>628 > Open Watcom と Digital Mars がデッドヒートしてる デッドヒートてww >>636 RC版って、5とかこんなに重ねるもんだったっけ・・・。 Open Watcom のメリットについて語ろう。 俺は使ったことないからだれか語って。 後方互換性を重視している点、かな? win1632.hというヘッダファイルがあって、これによって Win3.1向けの16ビットWindowsプログラムと32ビットWindowsプログラムを 1本のソースで(ほぼ)書けるようになっているみたいだ。 だから、FILEMAN.EXEみたいなのを再実装しようとすればできる (する人いないだろうけど。16ビットWindowsプログラミング本を買う気がない)。 Win32プログラミングの基本はWin95時代からXPまで、ベーシックな 部分では同じような箇所が多いのだろうか?サンプルソースも 読みやすくていいね。DirectXを用いるソースもあるし。 DOS Extender時代の遺物だからとにかく古すぎる。 ただVMWareなどの仮想化ソフトで古いOSのコレクションをしているならいろいろ遊べる。 試したらGLUTも普通に使えた。 VC用のDLL使えるんなら、冶具つくるにはいいかな。 VC−Express使えてるんで環境ないところ限定で ちなみにOpen Watcomをメインの開発環境になさっているかたって どのくらいいらっしゃるの? OpenWatcom C++ でデフォルトだと obj,exe がプロジェクトと同じフォルダに 生成されますが、これらを指定したフォルダに出力する方法はないでしょうか? コマンドラインからだと-foで出力先を変えれますが IDEからだとやっぱり指定できないんですかね… OpenWatcomでもDOSエクステンダ使用のPC-9821ソフト作れるんだな。 次のバージョンって 2.0 なのかな。それとも 1.10 なのかな。 1.9 の出来 と Version 2 Todo List を比べると 2.0 はすごく遠い気がする... ttp://translate.googleusercontent.com/translate_c?langpair=auto|ja&rurl=translate.google.com&twu=1&u=http://www.openwatcom.org/index.php/Version_2_Todo_List&usg=ALkJrhjskcipPGvO7xwsGSSovcJGb03VHQ Todo 見てたら浮動少数点演算のオプションで >例えば、時代遅れの考えでは、内蔵のFPUがなくCPUから >(とではない- FPI)- fpi87をデフォルトとするべきではなく、 >希少になりつつあります。 てな記述があるけど、FPUを内蔵したCPUが当たり前の今では -fpc,-fpi,-fpi87 のどれを使うべきって言ってるのかね? excite翻訳だと 内蔵のFPUsのないCPUがかなりまれになっているので、例えばwasmは-fpi87(そして、-fpiでない)をデフォルトとするはずです。 ってなった >656 ありがと。 現状は-fpi(FPUエミュレーション)がデフォルトだけど FPUが無いCPUなんて無いから-fpi87(インラインFPUコード)を デフォルトにするべきってことね。納得。 OpenWatcom 2.0 ☆ チン マチクタビレタ〜 マチクタビレタ〜 ☆ チン 〃 ∧_∧ ヽ___\(\・∀・) \_/ ⊂ ⊂_) / ̄ ̄ ̄ ̄ ̄ /| | ̄ ̄ ̄ ̄ ̄ ̄| | | 愛媛みかん |/ Windows環境でDaily buildのビルドの仕方がわからないっす。 >>659 仮想マシンにlinuxいれればいんじゃね? DOS 32bit(DOS4GW)で作ったexeで実行後にDOS4GWが扱える空きメモリを知る方法ってある? Nightly Buildsやってくれてるサイトが403なっとる ttp://owbuilder.malakovi.cz/ -za 拡張機能を禁止します(つまり, ISO/ANSI C++飲み受け付けます) >>665 403 Forbidden You don't have permission to access /snapshot/open-watcom-c-win32-2.0.exe on this server. Forbidden You don't have permission to access /ow-snapshot.7z on this server. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. Apache/2.2.17 (Linux/SUSE) Server at owbuilder.malakovi.cz Port 80 試しに>>665 入れてビルドしたらエラーメッセージが日本語になってて 言語の自動判別してるのかなと思った。 テキストを見るとVer2.0って記述されてるけどいつごろ正式版になるんだろう。 Watcomはオープンソースで地味に更新されてるからいいけど 今のDMCはアレだよな…。 DMCはdman追加されただろ なんに使うんだよアレ・・・ Open Watcomってもっと評価されてもいいよな 嵌ったので俺メモ 誰か英語力ください 32bit windowsプログラム作るときのwlinkのパラメータ wlink N 実行ファイル F オブジェクトファイル L ライブラリ FORM windows nt オブジェクトファイルとライブラリはコンマ区切り、ライブラリのパスはLIBPで与える で、LIBFってなんに使うんだ? >>678 ttp://www.users.pjwstk.edu.pl/~jms/qnx/help/watcom/compiler-tools/wlink.html#LibfileDirective カレントにオブジェクトファイルがなければLIBPで指定したパスから探してくれる Access forbidden! 要求されたディレクトリへのアクセス権限がありません。 インデックスドキュメントが存在しないか、 ディレクトリの読み込みが許可されていません。 サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。 Error 403 owbuilder.malakovi.cz Sun Dec 11 07:28:18 2011 Apache/2.2.17 (Linux/SUSE) \(^o^)/オワタ <html> <head> </head> <body> </body> </html> >>677 ソースの差分見ればわかるけど、そんなに変更が加わってないんだよね。 sedとかcatとかteeとか自前で作るのか 素のwindowsには入ってないしなあ デイリーソースのビルドの仕方が書いてないのでメモ windowsでやった 必要なもの ・ソース ・インストール済みのopen watcom ビルド鯖は1.9だったけど、俺は12/10に落としたデイリー版でやった 1.フォルダ名にスペースが入ってると何が起こるかわからないので C直下にow_dailyとか言う名前でフォルダ構造を維持したまま展開 2.コマンドプロンプト開いて、インストールしてあるopen watcomのパス通して、展開したフォルダに移動してbuild.cmdを実行 3.忘れたころにそれっぽいのができてる >>680 LADsoft? 今はOrange Cに発展したよ DOS、Win32両方対応で軽いから昔から使ってる Win7 64bitでビルドしてみたら最後のほうでエラーみたいなの出たお >>691 バグ報告よろ ttp://bugzilla.openwatcom.org/ x64では16bitコードが動作しないせいかも ttp://i.imgur.com/i8zMi.png >>677 運良くダウンロードだけしてたので今試したのだけど todo 書かれてた 2.0 じゃなくて 1.9 からの微修正ぽい。 templateとかstlとか あまり進んでなさげ。 これは a Windows NT character-mode 実行可能 です 2.0ではstd::stable_sort()を実装してほしい。 dosbox使えば64bitのvista/7でもビルドできるかもしれん だが俺は64bitのvista/7が入ってるマシンを持ってなかった 鼻毛12800円に メモリ8Gを3000円弱で追加して Win7Enterprise90日評価版で。 これは a Windows NT character-mode 実行可能 です 保守ついでにネタにマジレスするけどメッセージテーブルいじればいんじゃね? つか、メッセージテーブルのせいで今日のデイリーのビルドに失敗するとは思わんかったw 本家に最適化のバグ報告したいんだがどうすりゃいいんだろ? Read Onlyって書いてあるが、メルアド登録すればトラッカーに書き込めるのか… 15年ぶりくらいにwatcomC++使ってみたけど。 相変らず日本語リソースの文字化け問題なおってないのねえ(ノ∀`) OpenWatcom 2.0 ☆ チン マチクタビレタ〜 マチクタビレタ〜 ☆ チン 〃 ∧_∧ ヽ___\(\・∀・) \_/ ⊂ ⊂_) / ̄ ̄ ̄ ̄ ̄ /| | ̄ ̄ ̄ ̄ ̄ ̄| | | 愛媛みかん |/ freedos1.1拾ってきたからついでにopenwatcom入れてみた どう遊ぼうか それ俺もやってみたかったのよね 何か面白いことあったら後でおせーて とりあえずreadme.txtにあるDOSの設定でopenwatcomは普通に動く スレチだけどvmwareとfreedos1.1の相性が悪いっぽくて、日本語化するとfreedosが固まるw そうするとVitual Boxか…はたまたQEMUか…仮想化ソフトってあと何があったけ? というかDOSの時代を知らないからどうやってビルドするのか見当つかねw そういう話だった config.sysの設定だいぶ忘れてるなぁ stlportのポーティングあるのな 1.8用だけど、openwatcomのランタイム呼び出す部分ごにょごにょすれば十分戦える ttp://www.openwatcom.org/index.php/User:Cmeerw stlportのデバッグモードのdllリンクするとランタイムエラー出るな 調査は誰かに任せた 以下メッセージ undefined constructor or destructor called! ソース貼ってなかった #include <iostream> #include <string> int main() { std::cout << "hello, world!" << std::endl; return 0; } それっぽいヘッダ見つからないけど、 SSE使おうと思ったらアセンブラで直打ち? 下手すればアセンブラすら対応してないないかもと思ったら かろうじてSSE3までは対応していた Watcomerなら #pragma で埋め込んでください。 こうして #pragma pack(4) struct __m128 { float m128_f32[4]; }; こうやって extern "C" __m128 _mm_add_ps(__m128 &a, __m128 &b); こうやると #pragma aux _mm_add_ps = \ ".686 " \ ".XMM " \ "movaps xmm0,[eax] " \ "movaps xmm1,[edx]" \ "addps xmm0,xmm1" \ "movaps [esi],xmm0" \ parm [eax] [edx] …movapsでこけるな とりあえずmovups使うとして、アライメントの調整どうするんだ? #pragma pack(16) ってやったら通った けど微妙に気持ち悪いな unsigned char *p1 = malloc( sizeof(struct __m128) + 15); unsigned char *p2 = malloc( sizeof(struct __m128) + 15); struct __m128 *x1 = p1 & 0xfffffff0; struct __m128 *x2 = p2 & 0xfffffff0; _mm_add_ps( &x1,&x2 ); free( p1 ); free( p2 ); bad_allocクラスがあるんだから投げてくれてもいいのになあ C99にあるけど未実装の数学関数をfortranのライブラリから適当に持ってくる場当たりハック stringのoperator<<とoperator>>まだー? // wcl386 whattime.cpp #define FILE_NAME "whattime.txt" #include <fstream.h> #include <iomanip.h> #include <strstrea.h> #include <string.hpp> #include <time.h> int main() { ostrstream os; strstreambuf *b = os.rdbuf(); time_t timer = time(NULL); struct tm *p = localtime(&timer); os << " " << setfill('0') << setw(2) << p->tm_hour; os << ":" << setfill('0') << setw(2) << p->tm_min; os << ":" << setfill('0') << setw(2) << p->tm_sec << ends; String hours_minutes_seconds( os.str() ); b->freeze(0); ofstream file; file.open(FILE_NAME, ios::app); file << hours_minutes_seconds; file.close(); return 0; } /* whattime type whattime.txt */ C:\work>whattime C:\work>type whattime.txt 06:48:35 C:\work>whattime C:\work>type whattime.txt 06:48:35 06:48:56 C:\work>whattime C:\work>whattime C:\work>whattime C:\work>type whattime.txt 06:48:35 06:48:56 06:49:04 06:49:06 06:49:11 C:\work> みんな喜べ 色々用意ができれば今年の終わりに2.0出せるかもってよ ソースはニュースグループ Digital Mars C/C++ Compiler Version 8.56 がひっそりと出てる ttp://www.digitalmars.com/download/freecompiler.html いつの間にかDigital MarsのスレがDAT落ちしてる… 去年大量糞スレ立て荒らしがあった 例の件の証拠隠滅と思われ nanを比較してtrueが帰ってきてちょっとあせったけど そもそもC++98だとnanの比較が未定義だったぜ sgiのSTLの最新版がrope以外殆んどそのまま使えそうな予感 エラーでたところのtypename消してコンフィグいじったらコンパイル通った stlport 5.2.1 for dmc,Open Watcom ttp://www.6809.net/tenk/?%E9%9B%91%E8%A8%98%2f2013-05-20 /* wcl386 nonnum.cpp nonnum 5 nonnum - nonnum ^ */ #include <iostream.h> #include <string.hpp> int main(int argc, char *argv[]) { String line("0123456789"); const int line_length = line.length(); if(argc != 2) return 1; int b = line.index(argv[1]); // nonnum 5 if(b != NPOS) { cout << argv[1] << " can be found." << endl; } else { String non_number(argv[1]); if(non_number == "-") { b = line_length; } else { b = 0; } } String lead = line(0, b); String trail = line(b, line_length); cout << trail << endl; // "56789" return 0; } エディタでソースの日本語表示ってフォントを変えれば出来るんだな、つかフォントの変え方が独特すぎる #include <iostream> class StaticInteger { int data; int *pointer; public: StaticInteger(int *p, int d) { pointer = p; data = d; } int acquire() const { return data; } void revise(int *p, int d) { if(p == pointer) data = d; } } *static_integer; void function() { using namespace std; cout << static_integer->acquire() << endl; } static int static_int; int main(void) { StaticInteger si(&static_int, 2345); static_integer = &si; function(); static_integer->revise(&static_int, 8765); function(); return 0; } ファイル名 2.0 だけど正式releaseじゃなくてデイリービルドなのか? 少し試してみたけど1.9 とほとんど変わってなさそうだった。 ヘッダみるとインデントや名前の付け替えは多いけど肝心の修正は少なそうだし stubがへんな日本語になのだが、英語にする方法教えて 環境は Windows XPで、wcl Version 1.8 >これは an OS/2 16-bit 実行可能 です 見栄えがよくなったよ ありがとん >This is an OS/2 16-bit executable プロファイラのつかいかた 例でおしえてください おねがいします コマンドツールでもプロファイラつかえますか? わからんわからん >>767 ヘルプ見て分からないか? デバッグ情報付きでビルドして、サンプラにかけて出たファイルをプロファイラに渡すだけだろ 最適化はかけとけよ #include <iostream.h> #include <string.h> #include <string.hpp> void display(String & s) { cout << "length = " << s.length() << endl; int u = strcspn( s.c_str(), "0123456789"); // Error! cout << "u = " << u << endl; } // つづく int main(int argc, char *argv[]) { const int COUNT = 4096; String id("bcd10023"); int id_length = id.length(); switch(argc) { case 2: if(! strcmp(argv[1], "-e") ) { // Errorになるオプション String s = id(id_length, COUNT); display(s); } else { display(id); } break; default: display(id); break; } return 0; } C:\work>cspan length = 8 u = 3 C:\work>cspan -e length = 0 The instruction at 0x00401412 referenced memory at 0x00000000. The memory could not be read. C:\work>cspan -s length = 8 u = 3 > String s = id(id_length, COUNT); なにこれ C:\WATCOM\docs\cpplib.pdf にも書いてないけど 部分文字列です sub-sequenceは、posからはじまって、len個つづきます The sub-sequence begins at offset pos within the String object and continues for len characters. String::operator ()() Synopsis: #include <string.hpp> public: String String::operator ()( size_t pos, size_t len ) const; Semantics: This form of the operator () public member function extracts a sub-sequence of characters from the String object. A new String object is created that contains the sub-sequence of characters. The sub-sequence begins at offset pos within the String object and continues for len characters. The first character of a String object is at position zero. If pos is greater than or equal to the length of the String object, the result is empty. If len is such that pos + len exceeds the length of the object, the result is the sub-sequence of characters from the String object starting at offset pos and running to the end of the String object. Results: The operator () public member function returns a String object. See Also: String::operator [], operator char, operator char const * String Class 873 cpplib.pdf // substri.cpp #include <iostream.h> #include <string.hpp> int main(int argc, char *argv[]) { const int COUNT = 4096; String id("bcd10023"); int id_length = id.length(); String s = id(id_length, COUNT); cout << "s: length = " << s.length() << endl; cout << s << endl; int count = 3; int begin = 3; String g = id(begin, count); cout << "g: length = " << g.length() << endl; cout << g << endl; return 0; } /* C:\work>substri s: length = 0 g: length = 3 100 */ 追加されそうにないし暇つぶしに書いた 大体動く namespace std{ inline istream& operator>>(istream is, string& str) { if(!is.good())return is; str.erase(); string::size_type sz = is.width(); if(sz==0)sz=str.max_size(); std::cout << is.width() << std::endl; char c; is.get(c); for(string::size_type i=0; !isspace(c) && !is.eof() && (i < sz);i++){ str += c; is.get(c); } is.width(0); return is; }; inline ostream& operator<<(ostream os,const string str) { if(!os.good())return os; os.write(str.data(),str.size()); return os; }; } windows 7,64bitを使っているのですが, wclでコンパイルした実行ファイルは,64bitでは使えない というメッセージがでるのですが,wcl386でコンパイルする と実行できるのです。 wclとwcl386とではどう違うのでしょうか。 wcl は 16bit CPU 環境用の exe を生成。 wcl386 は 32bit CPU 環境用の exe 生成。 32bit windows は 16/32 bit(cpu) exe を実行できるけど、 64bit windows は 32/64bit exe のみで 16bit exeを実行できない。 ★2ch勢いランキングサイトリスト★ ◎ +ニュース ・ 2NN ・ 2chTimes ◎ +ニュース新着 ・ 2NN新着 ・ Headline BBY ◎ +ニュース他 ・ Desktop2ch ・ 記者別一覧 ◎ 全板 ・ 全板縦断勢いランキング ・ スレッドランキング総合ランキング ◎ 実況込み ・ 2勢 ・ READ2CH ・ i-ikioi ※ 要サイト名検索 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる