1

非常に単純なことをしようとしています-Windows cmdを介して基本的なwin 32 cプログラムをコンパイルします。これは私が自分でできるはずのことですが、私はここで立ち往生しています..

私は奇妙な問題、あいまいなエラーに出くわし続けます。詳細に入る必要があるかどうかはわかりません。tcc の使用 (tiny c コンパイラ)

  1. 本からの単純な hellowin.c の例では、winmm.lib が必要でした。どうすればインポートできますか? 誰かがgcc/tcc/Windows用のコマンドラインコンパイラ(cygwinを除く)の正確なコマンドを教えてもらえますか? help を読んだ後、さまざまなオプションを試しましたが、愚かなエラーが見つかりませんでした。

  2. コンパイルしようとしたプラットフォーム SDK のサンプルで、-winnt.h "( expected" エラーが発生しました。これは #define _M_IX86 の後に発生しました。これはどういう意味ですか?

  3. コマンドラインからWindows(win32 API)用のCプログラムをコンパイルするための一般的なガイドはありますか? . すべてが#defineされるべきものを説明する..など..

私はたくさんグーグルで調べましたが、win32プログラムのCコンパイルガイドラインのほとんどはvbに焦点を当てています。コマンドラインで手動でやりたいです。

ありがとう

4

4 に答える 4

1

Visual Studio を使用して新しいプロジェクトを作成すると、コンパイラ コマンド ライン オプションを使用して次のプリプロセッサ シンボルが #define されます。

  • WIN32
  • _WINDOWS
  • またはのいずれ_DEBUGNDEBUG
  • UNICODEおよび_UNICODE(ただし、コンパイラが Unicode をサポートしていない場合、Windows ヘッダーとライブラリは非 Unicode 対応アプリケーションもサポートします)。

http://bellard.org/tcc/tcc-doc.htmlには、「Windows での使用については、tcc-win32.txt も参照してください」と記載されています。

于 2009-09-20T16:50:33.470 に答える
1

Windows PlatformSDK をダウンロードすると、独自のコマンド ライン コンパイラが付属しています。ショートカット Start->Programs->... を作成して、32 ビットまたは 64 ビットのコマンド プロンプトを開きます。32 ビット バリアントを選択すると、完全に初期化されたコマンド プロンプトが表示され、PATH にコンパイラが含まれ、すべての INCLUDE、LIB、および LIBPATH が設定されます。


cmd> cl hello.c


これにより、hello.exe が表示されます。コンパイラ "cl /?" の詳細については、リンカ "link /?" のヘルプを参照してください。

于 2009-10-14T12:03:38.817 に答える
0

環境内で INCLUDE および LIB パスを探しているようなコンパイラのように聞こえます。コマンド ラインで "set" を実行してもこれらの var が表示されない場合は、コンパイラが使用しているパスにそれらを設定してみてください。この tcc ツールをどこにインストールしたかはわかりませんが、「include」および「lib」という名前のディレクトリを探して、それらを前述の環境変数に割り当ててみてください。

于 2009-09-20T16:33:05.673 に答える
0

equality.comから gcc を試すことができます。mingw でラップされたコンパイラですが、mingw について心配する必要はありません。ダウンロード、インストール、使用するだけです。IDEもありません。

ダウンロードページはhttp://www.equation.com/servlet/equation.cmd?fa=fortran .

于 2009-09-20T16:40:45.267 に答える