[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[WitchFan 00386] Re: TurboC のコンパイル例サンプルをお願いします



えるぴと申します。

Masahiro>  runtime.lib は LSI-C 用で Cs.lib もしくは相当する obj では?
Masahiro> 速度気にしないならいんですけど、浮動小数点はやめた方が・・・。

Manbow-J> Manbow-Jです。
Manbow-J> 
Manbow-J> 今気づいたのですが、longの乗除算つかってますね。
Manbow-J> 確かライブラリの問題で使えなったのでは?
Manbow-J> (WonderWitchサポートwebサイト tips参照)
Manbow-J> 
Manbow-J> どうしても使いたいときはTC++(これは大丈夫らしい。)に乗り帰るか、
Manbow-J> 自前で同様のルーチン作るとか(ちょっと大変)、LCCで部分的にコンパイル
Manbow-J> する(tips例)等があります。

やっぱり未定義シンボルでここまでばれてしまうものなんですね(^^;
<浮動小数点の件とlongの乗除算の件

で、プログラム中で浮動小数点を使っている所をintに修正した上で、
tinyモデルでコンパイルし、c0wwjpn2.obj, libww.lib, runtime.lib, cs.libを
リンクした所、未定義シンボルもなく、とりあえず動作するモジュールができました。
なんかlongの乗算が上手く行ってないような感じなのと、stack上を指すポインタが
上手く渡せてないっぽいので、動作すると言ってもバグバグなんですが....

それで、次はlongの乗除算が正常に行えるというTC++でコンパイル、リンクに
挑戦してみました。実際に使用したのはTurboC++1.01コマンドライン版です。
tinyモデルでコンパイルし、c0wwjpn2.obj, libww.lib, runtime.lib, cs.libを
リンクした所、今度は以下のようになってしまいました。

----
tlink /m /c c0ww\c0wwjpn2.obj invadrev.obj,invadrev.exe,,lib\libww.lib lib\runti
me.lib lib\cs.lib
Turbo Link  Version 3.01 Copyright (c) 1987, 1990 Borland International
Error: Undefined symbol __psp in module SETARGV
Error: Undefined symbol __envLng in module SETARGV
Error: Undefined symbol __osmajor in module SETARGV
Error: Undefined symbol __envseg in module SETARGV
Error: Undefined symbol _abort in module SETARGV
Error: Undefined symbol __C0argc in module SETARGV
Error: Undefined symbol __C0argv in module SETARGV
Warning: No stack
----

これはもしかして、TC++で開発を行うためには専用のc0wwjpn2.objを作ってやる
必要がある、という事なのでしょうか?
なんだかもう良く分かりません....

#TC++に含まれているc0t.objをリンクした所、未定義シンボルはなくなりましたが
#当然Witch上で動作しませんでした。
#スタートアップルーチンを2つリンクしたら駄目に決まってますよね....


--------
    えるぴ(渡邉 徹)    E-mail address : erupi@fa2.so-net.ne.jp



ML Archives