|
サーバーにSSH接続できたら、コンソール画面からC言語ソースをコンパイルして見ましょう。以下に、サーバーでC言語によるCGIプログラムを活用する手順を示します。
C言語ソースファイルの作成と配置
適当なテキストエディタでC言語によるCGIソースファイルを作成したら、FTPソフトを使ってサーバーの「cgi-bin」ディレクトリ内の適当な場所に配置します。ここでは例として、「cgi-bin」ディレクトリ直下に「test.c」と言うC言語ソースファイルを置いたものとします。
実際にはサーバーのユーザー「komochan」で操作して見ましょう。
[ディレクトリ構成]
home → komochan → public_html → cgi-bin → test.c
SSHからのコンパイル
まずサーバーに「ttssh」を使ってアクセスします。下のがアクセス時の画面です。この時点ではユーザーの最上位のディレクトリにアクセスしただけですので、実際の作業をするには、「test.c」ファイルを置いたディレクトリ「cgi-bin」に移動してやらねばなりません。
では、「cd」コマンドで「cgi-bin」デイレクトリに移動してやりましょう。下のが移動直後の画面です。
では、次に実際に「test.c」ファイルをコンパイルしてやりましょう。「gcc」コマンドで以下のように打ち込みます。何もエラーがなければ下のような画面になります。これで「cgi-bin」ディレクトリ内に「test.cgi」ファイルが生成されているはずです。実際にホームページ上でCGIを動かすには、ブラウザでこのファイルにアクセスするようにして下さい。
もしソースファイルにエラーがあれば、下のようにエラーを表示してくれますので大変便利です。エラーの発生場所も示してくれるので、本当至れり尽せりです(^.^)
コンパイル用コマンド
上で使ったコンパイル用コマンドは一番単純なものです。「-o」オプションは出力ファイルを指定する場合に使います。CGIプログラムを作成している訳ですから、生成するファイルの拡張子は必ず「*.cgi」に指定して下さい。
他にも下の例のように色々なオプション(最適化、機種依存最適化など)を付け加える事が出来ます。
gcc test.c -O -mpentium -o test.cgi
[最適化]
-O ・・・ 実行時間及びコードサイズの2点から最適化を行います。
-O2 ・・・ -Oよりもさらにパフォーマンスの高い最適化を行います。コンパイルにかかる時間は-Oよりも長くなります。
-O3 ・・・ -O2よりもさらにパフォーマンスの高い最適化を行います。コンパイルにかかる時間は-O2よりも長くなります。
[機種依存最適化]
-m386 ・・・ Intel x386
-m486 ・・・ Intel x486
-mpentium ・・・ Intel Pentium PentiumU PentiumV
-mpentiumpro ・・・ Intel Pentium Pro
又、「ディレクトリ指定」とかもありますが、詳しくは専門の参考書をご参照下さい。全部を説明してるとひじょーに長くなってしまうので…(^^ゞ
注意点
C言語によるCGIプログラムは、それを動かそうとするサーバー上でソースファイルをコンパイルする必要があります。他のマシンでコンパイルしたCGIプログラムをそのまま持って来ても、動かない可能性の方が大きいです。ご注意下さい。