OpenWatcom C++

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
NGNG
IDE やプロファイラまでついてくるフリー最強の C++ コンパイラ
Watcom C++ について語りませう。

一応、こちらから入手できます。
難点はちょっと大きい事(45MB)です。
http://www.openwatcom.org/
NGNG
>>373
いや、むしろ積極的に最適化オプション付けてデバッグして、
挙動が違ったらバグ報告してくれ。
375デフォルトの名無しさん
垢版 |
NGNG
>>373
デバッグが終わってリリース版として最適化オプションつけた後にもバグが出る事はある。
NGNG
>>375
そーゆー場合もバグ報告してくれ。

ところで、
> デバッグが終わってリリース版として最適化オプションつけた後にもバグが出る事はある。
って OpenWatcom とか 旧Watcom での話なんすか?
NGNG
>>376

上に挙げたのは>>370に出てくる良い最適化コンパイラがあったとしての例えの話。
NGNG
>>377
妄想にマジレスしてたんすか…
NGNG
>>378
まあ、そんなとこですね・・・。
380デフォルトの名無しさん
垢版 |
NGNG
>372
>駄目プログラマが書いたソースと秀才プログラマが書いたソースでは基本的なアルゴリズムから違うのだから。
また、秀才プログラマはデータの性質も考慮して、一般的には遅いと思われるアルゴリズムを採用する事もあるだろう。
アルゴリズムが違うってSEは何やっているんだよ。
プログラマのやることは詳細設計指示書に基づいたコードの作成だ。
システムの根幹を構成するアルゴリズムの毛定!なんて部分にプログラマの出番はない。

大体、今日日アルゴリズムを考える必要性なんかあるかよ。
昔プログラマが悩まされたのはハッシュによるデータ検索なんかだけどさ
今ならそんなものバカサーチで十分実用になっちまうからな。
NGNG
>>380
しあわせなお方ですな。半径5m以内くらいしか感知できない感じかな。
NGNG
>>370
> 駄目プログラマでも秀才プログラマでもバイナリの実行時間が大差ないのが良い最適化コンパイラだよ。
はあ、そうなんすか。はじめて聞きますた。

> FORTRANの例でいうなら、添え字の順番と入れ子の制御変数との関係なんかを
> 最適にするわけだ。無意味にループ内に存在する計算をループ外へ出すわけだ。
プログラムつくったことないでしょ。そういうローカルな最適化だけではダメプログラマ
のプログラムは救えません。
NGNG
>>370
ちょっと覚えた知識をひけらかしたい性向な方?
NGNG
おれの欲しい最適化はそんな、そんな複雑なもんじゃないんだ
もっと「これはひどいよ、WATCOM君クスンクスン」と嗚咽してしまう
単純なものなんだ

x = y = z:;

とあったら、なにも考えずに
mov reg,[z]
mov [y],reg
mov [x],reg
とやってくれよ・・・2回もzをregに入れるんじゃねぇ!!わかったか糞!
NGNG
>>384
速度に関して言ってるんだったら、どっちが速いか計測したんか?

サイズの最適化だったら それぐらいやって欲しいけど。
NGNG
>>384
自力で直してコミットしやが、してください。
387デフォルトの名無しさん
垢版 |
NGNG
x,y,xが数MBになるような構造体でもいいのか?
NGNG
i486ユーザー? >>384
NGNG
>>387
> x,y,xが数MBになるような構造体でもいいのか?
z が抜けてるよ。
390デフォルトの名無しさん
垢版 |
NGNG
デバッグバージョンで正常動作したソフトが、リリースバージョンでは正常に動かないなんて、良くあることだ。
最適化オプションは、すべてが安全なわけじゃない。
どんなソースでも常に安全なオプションもあるが、ソースによっては危険になるオプションもある。
職業プログラマなら、どのオプションがどんな働きをするかくらい、基本知識だろうが。
NGNG
>>390
最近の職業プログラマ様は凄いんですね。

ところで、
> デバッグバージョンで正常動作したソフトが、リリースバージョンでは正常に動かないなんて、良くあることだ。
ってのは OpenWatcom とか 旧Watcom での話なんすか?
NGNG
390ではないですが、OpenWatcomはまだつかったことないけれどWatcom11.0Jの時に
2〜3回最適化オプションで変な動作をするようになったことがありました。ディスアセンブル
したソースみながら問題ないような記述に変更した記憶があります。

ところで、職業プログラマでなくても、いろいろなCのなかからわざわざWatcomC
使うような人ならどのオプションがどんな働きをするかは知ってそうな気がするので
すが、そんなこともないのかな。
NGNG
>>392
> どのオプションがどんな働きをするかは知ってそうな
あぁ、マニュアルに書いてある程度の知識はあるけど、
どのオプション使ったら任意のソースが
どんな機械語に変換されるかまでは知らない、って意味です。
394デフォルトの名無しさん
垢版 |
NGNG
>ところで、職業プログラマでなくても、いろいろなCのなかからわざわざWatcomC
使うような人ならどのオプションがどんな働きをするかは知ってそうな気がするので
すが、そんなこともないのかな。

時代が変わった
NGNG
>>394
>>392>>393 の意味ではオプションを知ってはいないだろう。
(でなければ、>>392 の前半のようなミスを犯すわけが無い)

時代が変わったのでなく、あんたが昔を美化したいだけだ。
396384
垢版 |
NGNG
まぁ・・・予想通りだが

要するに、そんなちょっとの無駄なレジスタロードなど
気にするなと。そんなのが1万あろうが1億あろうが、
体感できないと。そういうことだな。

そんならさぁ・・・もうコンパイラに最適化必要ねえよな
x86ならレジスタ1個でメモリ使いまくりゃいいべ。極論だがな

俺も年をとったということか。詩嚢 
NGNG
>>396
やれやれ。

死ぬ前に >>384 のを直してコミットしてくれ
古き良きプログラマなら そんぐらい出来るんでしょ。
NGNG
FTP(devel)にいろんなドキュメントが追加されますた。
確認していないので内容はわからないですが...須磨祖。
NGNG
>>398
elf omf coff pe のファイルフォーマットの資料とか、
3DNow や intel CPU 向けの最適化の資料とか、そーゆーのが置いてあるね。
Watcom が書いたドキュメントってわけではないみたい。

devel/1.2_beta ってのもあるね。
個々のファイルの最終更新日時が 2003/8/30 になってるけど、
これって前からあったっけ?
NGNG
Probably in December. < OW1.2
NGNG
どうも>>399さん

1.2_betaのフォルダ以下のファイルは、前から(最終更新日時で)有りました。
NGNG
ftp://ftp.openwatcom.org/watcom/devel/1.2_beta/
に beta の新しい奴が入った模様。

変更点は以下を参照のこと
ftp://ftp.openwatcom.org/watcom/devel/1.2_beta/readme.1st
NGNG
ftp://ftp.openwatcom.org/watcom/devel/1.2_beta/
が更に新しくなった模様。
404デフォルトの名無しさん
垢版 |
NGNG
1.2RC1ができてますね。
ftp://ftp.openwatcom.org/watcom/
405ot22
垢版 |
NGNG
ソースからビルドしたら, Cコンパイラのメッセージが日本語になってしまいました。
どうしてそうなるのか不明。

ご存知かもしれませんがviwってCUT&PASTEなら日本語も使えるんですね.
406デフォルトの名無しさん
垢版 |
NGNG
ftp にRC3が上がった模様。詳細は不明。
407デフォルトの名無しさん
垢版 |
NGNG
  ∧_∧
  (゚Д゚ ,,)    {Borland C++ Compiler。)
  (uu__)〜
NGNG
>>407
それがどうした。
オープンソースじゃないものに用は無い。
でも実際にソースを読むやつは少数派だわな。
409デフォルトの名無しさん
垢版 |
NGNG
これって未だに一部日本語メッセージが含まれてるけど
この部分のメンテって誰かやってるんでしょうか?

もしかして、みんな日本語わからなくて放置状態?
NGNG
> もしかして、みんな日本語わからなくて放置状態?
そのとーり
NGNG
1.2 release candidate 4 が出た模様。

http://openwatcom.mirrors.pair.com/watcom/
http://www.openwatcom.org/ftp/

1.2 release が出たら age るとしよーか。
NGNG
1.2 release が出た模様。

http://openwatcom.mirrors.pair.com/watcom/
http://www.openwatcom.org/ftp/
NGNG
1.2 release でも半角空白入りのパスを正しく扱えないプログラムが残ってるらしい。

今 news group の方で話題になってる。
NGNG
どうでもいい事なのだが・・・

exeからインストールしたファイルと、zipを展開した
ファイルでタイムスタンプが違ってしまうのな。
zipが+9:00になる。

多分wise(インストーラ)がタイムゾーンを考慮してない
為だろうけど、しょうもないなぁ
NGNG
>>414
ソフトによっては、タイムスタンプがバージョンを表している
(Ver1.23なら1:23)物もあるので、wiseインストーラはわざと
タイムゾーンを無視しているんじゃないでしょうか。
416デフォルトの名無しさん
垢版 |
NGNG
メニューを日本語化したものって需要ありますか?
Windows版ですけど(IDE, Debuggerあたりがそこそこに…)
NGNG
こういうのを敢えて使ってる物好きには、特に需要はないと思われ。
NGNG
>>415
へ〜
NGNG
watcomを使う人は、IDEを使うタイプの人とは思えない
NGNG
>>419
少なくとももれはIDE使ってないな。
NGNG
それじゃgccでいいじゃん
NGNG
馬鹿はくんな
423420
垢版 |
NGNG
>>421
gcc(Mingw版)とLCC-Win32とBorland C++使ってるよ。
選択肢は多いほうがいい。
NGNG
さりげなくWinXP for x64に対応したりとかしないのかな
425デフォルトの名無しさん
垢版 |
NGNG
ftpの資料置き場にはAMD64の資料もあるみたいだけど。
唐突に対応したら骨董品から一気に成り上がれるよな。
でもnews見てる感じだと、今はそういう動きは無いみたいかな?

無意味にage。
NGNG
さびれてるのでageついでに。
OpenWatcomのリンカってPlatformSDKやDirectX8以降(?)で使われてる
新しいCOFFフォーマットに対応してるのかな?
Webを一通り見たけどのってなかったので誰か教えて。
427Watcomer
垢版 |
NGNG
>426
お!オレの出番だな!


Watcomリンカは、オブジェクトファイルとライブラリファイルを入力とし、実行可能ファイルを出力として作成するリンケージエディタ(リンカ)です。Watcomリンカは以下のオブジェクトモジュール フォーマットおよびライブラリ フォーマットをサポートしています。


キ標準Intelオブジェクトモジュール フォーマット(OMF)
キIntel標準OMFに対するMicrosoftの拡張
キ80386アプリケーションをリンクするためのPhar LapのEasy OMF-386オブジェクトモジュール フォーマット
キCOFFオブジェクトモジュール フォーマット
キELFオブジェクトモジュール フォーマット
キOMFライブラリ フォーマット
キAR(Microsoft互換)オブジェクトライブラリ フォーマット

お前らが欲しがってる日本語ヘルプより。
428デフォルトの名無しさん
垢版 |
NGNG
>>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
と書いてあるのでたぶん使えると思う。
429Watcomer
垢版 |
NGNG
>428
tureta.
NGNG
お、てことはリンカだけ流用すればぶっちゃけBCCでもなんでも
PSDKやDirectXが使えるってことか。
thx!
NGNG
そんなことしなくてもCoCreate系使えばリンカ必要ないじゃないか
NGNG
>>431
ん?なんでそれでリンカいらないのかわからん…。
猿以下のミジンコにもわかるように教えて下さい。
NGNG
wlinkは使いにくい。
NGNG
>>432
comの仕組み・・・
NGNG
>>434
COMの仕組みはまぁ表面的にわかってるんだけど、最終的に実行ファイルやDLLを作り出す
ためにリンカはいるんじゃないの?
間違ってる?
436デフォルトの名無しさん
垢版 |
NGNG
これで directX なゲーム作れる?
437434
垢版 |
NGNG
あってるよ
リンカがホントにいらないってことはない

OMFベースのリンカだけで逝けるでしょうってこと
tlinkってCOFF扱えるようになった?
NGNG
>>437
私が間違っていましたと書けばいいものを、見苦しいいいわけしやがって。
NGNG
ろくに発言がないのに煽りだけは立派だなぁ
NGNG
dos用のいいmakeない?
wmakeなんかイクナイ
NGNG
>>440
djgppのgnu makeでどう?
NGNG
できればextender使わないのを・・・贅沢でスマン
gnuish gmakeを試したけどマシンがリブートする
NGNG
DOS用なら KI-Make はどうでしょうか?
ttp://www.vector.co.jp/vpack/filearea/dos/prog/make/index.html
NGNG
>>443
これ知らなかった。これから試します。
あんがとー
445444
垢版 |
NGNG
>>443
なかなか良い感触です。べりぐっちょさんくす
KI-shellの中の人だったのね

446444
垢版 |
NGNG
連投スマン。誤解ありそうなんで訂正

KI-shellの中の人が作ったmakeだったのね
NGNG
思ってたよりコマンドラインオプションが複雑だった
NGNG
exeってどうつくるの?
NGNG
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

とかやってみれ。
NGNG
Linker使いにくくない?
NGNG
普通
NGNG
VC ToolKit2003だってよ。立場ねーよどうするよ?
NGNG
OpenWatcomのFORTRANでやってるぜ
って人はいないんでしょうか
454デフォルトの名無しさん
垢版 |
NGNG
ソースファイルを編集しようと思って
IDEからファイルをダブルクリックするとメモ帳が立ち上がってしまいます
watcomのエディターで立ち上げるにはどこの設定を変えればいいんですか?
455454
垢版 |
NGNG
ごめんなさい
あっという間に自己解決しました…
NGNG
これでVCというプラットフォームは扱えますか?
NGNG
>>456
設定ファイルを自分で書けば Watcom の IDE から VC のコマンドラインコンパイラを使うのは可能だと思われ。
NGNG
>>457
ネタに混じれ酢してくれて
ネタいっちゃって申し訳なく思い始めた
ごめんなさい
459デフォルトの名無しさん
垢版 |
NGNG
http://page4.auctions.yahoo.co.jp/jp/auction/d47227135
NGNG
だれかBCBX用のToolsets書いてくれー
NGNG
>>460
IDEあるんだから使えよ。
NGNG
保守
NGNG
1.3 RC1
NGNG
C99サポート進むかな?
465デフォルトの名無しさん
垢版 |
NGNG
OpenWatcom 1.3 出現。

NGNG
>465
まだだよw
467デフォルトの名無しさん
垢版 |
NGNG
>>466
探しもしないで、どこ見て言ってるのかねw
ftp://ftp.openwatcom.org/watcom/
NGNG
Watcom使いハケーン
http://idol.bbspink.com/test/read.cgi/hgame/1089918934/287-292n
よりにもよって、あの「超空間」かよ...orz
469デフォルトの名無しさん
垢版 |
NGNG
これのソースを、ビルドできた人いる?
ソースをダウンしたんだが、どうすればビルドできるのかが分からん。
gccでビルドするの?UNIXシェルのファイルがあって、UNIX上でビルド?
デベロッパーのページみたら、何かユーザー登録があって何だ?
NGNG
OpenWatcomのソースはOpenWatcomでビルドするに決まってるだろ
NGNG
で、1.3は最近の言語仕様に対応したの?
472デフォルトの名無しさん
垢版 |
NGNG
>470
もうすこし詳しく教えて。
wpjファイルが、サンプルプログラムのしかなかった
473472
垢版 |
NGNG
ん?返信が無いってことは、470はネタ?
474デフォルトの名無しさん
垢版 |
NGNG

OpenWatcom C++って、関数リファレンスは付いていますか?

フリーのC/C++コンパイラで関数リファレンス・ヘルプが充実してるのってないですかね。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況