2022/08/26(金) [n年前の日記]
#1 [prog][windows] bccでスクリーンセーバのビルドを試しているところ
bcc 5.5 (Borland C++ Compiler) を使って、スクリーンセーバのサンプルソースのビルドができるか試しているところ。
以下のページで VC++、bcc、lcc でビルドできるサンプルが3つほど紹介されているので、手元の環境でもビルドできるのか確認中。
_Winのスクリーンセーバーを作ってみる
ちなみに、上記ページにも書かれているけれど、bcc には scrnsave.h、scrnsave.lib が付属していないので、そのままだとスクリーンセーバのサンプル群がビルドできない。上記ページには、MinGW版のソースを元にして作成された scrnsave.h、scrnsave.c、scrnsave.lib も紹介されているので、それを利用させてもらうことになる。ありがたや。
以下のページで VC++、bcc、lcc でビルドできるサンプルが3つほど紹介されているので、手元の環境でもビルドできるのか確認中。
_Winのスクリーンセーバーを作ってみる
ちなみに、上記ページにも書かれているけれど、bcc には scrnsave.h、scrnsave.lib が付属していないので、そのままだとスクリーンセーバのサンプル群がビルドできない。上記ページには、MinGW版のソースを元にして作成された scrnsave.h、scrnsave.c、scrnsave.lib も紹介されているので、それを利用させてもらうことになる。ありがたや。
◎ ハマった点。brc32がエラーを出す。 :
bcc 5.5 には、brc32.exe というリソースコンパイラが入っていて、ソレを使って .exe や .scr にリソースを埋め込むことになる。以下は例。
ちなみに、bcc32 じゃなくて brc32 であることに注意。brc32 がエラーを出すという質問に対して、bcc32 の設定方法を回答してる事例を一体何度見たことか…。違うんや…。bcc32 じゃなくて brc32 の話や…。
さておき。brc32.exe にヘッダーファイルの場所(〜\Include)を教えてやらないと、「windows.h が開けない」とエラーで出てしまう。
解決策としては、brc32 に -i"(bcc5.5インストールフォルダ)\Include" といった感じでヘッダーファイルの場所を伝えてやるか、環境変数 INCLUDE にヘッダーファイルの場所を設定してから brc32 を呼び出す。
ただ、bcc だけを使ってビルドすることが前提なら、*.rc の中に #include <windows.h> を含めなくても良いという話も見かけた。他のコンパイラを使う場合は、#include <windows.h> が必要になるのだとか。
brc32 main.rc scrnsvr.scr
ちなみに、bcc32 じゃなくて brc32 であることに注意。brc32 がエラーを出すという質問に対して、bcc32 の設定方法を回答してる事例を一体何度見たことか…。違うんや…。bcc32 じゃなくて brc32 の話や…。
さておき。brc32.exe にヘッダーファイルの場所(〜\Include)を教えてやらないと、「windows.h が開けない」とエラーで出てしまう。
Error main.rc 1 11: Cannot open file: windows.h
解決策としては、brc32 に -i"(bcc5.5インストールフォルダ)\Include" といった感じでヘッダーファイルの場所を伝えてやるか、環境変数 INCLUDE にヘッダーファイルの場所を設定してから brc32 を呼び出す。
set INCLUDE=(bcc5.5インストールフォルダ)\Include
ただ、bcc だけを使ってビルドすることが前提なら、*.rc の中に #include <windows.h> を含めなくても良いという話も見かけた。他のコンパイラを使う場合は、#include <windows.h> が必要になるのだとか。
[ ツッコむ ]
以上です。