PowerBuilderコンパイラってなんだ?

テクニカルブログ

こんにちは、サポート部のエイタです。

突然ですが、みなさん。PowerBuilderコンパイラ(PBC)は使っていますか?
PowerBuilder 2017 から追加されたこの機能、忙しいあなたにぴったりなんです。


PowerBuilderコンパイラ・・・?

~~~
開発期間が短いプロジェクト、限られたライセンス数。
貴重なライセンスを、ただ待つだけのコンパイルになんて割きたくない。
そんな時間があるなら開発を続けたい・・・。
~~~

そんな時にこれ、PowerBuilderコンパイラ
IDE を起動せずに使える、スタンドアローンのPowerBuilder用コンパイラ。
そう。PowerBuilderがインストールされていなくても使えちゃうんです!

しかもライセンスフリー・・・。
これこれ!こういうの待ってました!!
というわけで早速使ってみましょう!


いざインストール!

PowerBuilderコンパイラのインストーラーは下記のフォルダにあります。

C:\Program Files (x86)\Appeon\PowerBuilder 17.0\AutoCompiler
AutoCompilerフォルダー

AutoCompilerフォルダー

PowerBuilderのインストール先を変更した人は PB170.exe のあるフォルダを探してみてください。
そこの \AutoCompiler フォルダーにある AutoCompile.exe というのがPBCのインストーラー。
これをコピーして別のPCに持っていきましょう。
(その前に、同じフォルダにある install.txt をしっかり読んでくださいね。英語だけど。)

さっきも言ったようにPowerBuilderがインストールされていない端末へもインストールができます。
私もまっさらなWindows10環境にインストールしてみました。
インストール画面も英語ですが、設定はインストール先のみで基本的には Next をクリックしていくだけです。

インストール先の指定

インストール先を指定

インストール中

インストール中…

10秒足らずでインストールは完了。OSの再起動もありませんでした。


コンパイルしてみよう!

準備ができたので実際にコンパイルしてみましょう。
マニュアル読みましたが、パラメータが多くて面倒ですね・・・。
でもご安心ください。
アプリケーション配布のプロジェクトには、PBC がそのプロジェクトと同じ設定でコンパイルするために必要なパラメータが記載されているんです。

プロジェクト [全般] タブ

現在の設定のパラメータが表示される

デフォルトも明示的に指定しているため少々長いですが、これをコピーし pbc170.exe のパラメーターとして実行します。
ただし、pbtのパスやexeの出力先はコンパイラを実行する環境に合わせて変更しなければいけない場合があるのでご注意を。
コマンドプロンプトやWindows PowerShellを使って実行してみましょう。

>pbc170 /d "C:\compile\sample\sample.pbt" /o "C:\compile\sample\sample.exe" /w n /f /m n /x 32 /bg y /v "1.0.0.1" /vn "1.0.0.1" /fv "1.0.0.1" /fvn "1.0.0.1" /ge 0
C:\compile\sample\sample.pbt
c:\compile\sample\sample.pbl
        Creating compilation list...
        Creating c:\compile\sample\sample.pbl(d_sample_1.srd)...
        Creating c:\compile\sample\sample.pbl(d_sample_2.srd)...
        Creating c:\compile\sample\sample.pbl(sample.sra)...
        Creating c:\compile\sample\sample.pbl(w_sample.srw)...
        Stage1 for c:\compile\sample\sample.pbl(d_sample_1.srd)...
        Stage1 for c:\compile\sample\sample.pbl(d_sample_2.srd)...
        Stage1 for c:\compile\sample\sample.pbl(sample.sra)...
        Stage1 for c:\compile\sample\sample.pbl(w_sample.srw)...
        Stage2 for c:\compile\sample\sample.pbl(d_sample_1.srd)...
        Stage2 for c:\compile\sample\sample.pbl(d_sample_2.srd)...
        Stage2 for c:\compile\sample\sample.pbl(sample.sra)...
        Stage2 for c:\compile\sample\sample.pbl(w_sample.srw)...
        Creating compilation list...
        Stage2 for c:\compile\sample\sample.pbl(d_sample_1.srd)...
        Stage2 for c:\compile\sample\sample.pbl(d_sample_2.srd)...
        Stage2 for c:\compile\sample\sample.pbl(sample.sra)...
        Stage2 for c:\compile\sample\sample.pbl(w_sample.srw)...
        Regenerating c:\compile\sample\sample.pbl(d_sample_1.srd)...
        Regenerating c:\compile\sample\sample.pbl(d_sample_2.srd)...
        Regenerating c:\compile\sample\sample.pbl(sample.sra)...
        Regenerating c:\compile\sample\sample.pbl(w_sample.srw)...
        Rebuild complete.
>

とても小さなアプリケーションですが、2秒ほどでexeとpbdの生成ができました!

なお、AutoCompiler.exeはPBランタイムの配布を目的としたものではないので、生成したexeをここで実行することはできません。生成されたexeとpbd(またはdll)を実行環境へ配布しましょう。
ちなみにPBランタイムの配布は「PowerBuilderランタイムパッケージャ」を使うと便利ですよ。


まとめ

大規模なシステムともなるとコンパイルにかかる時間も膨大になりますし、コーディングとテストが繰り返されるような開発手法ではコンパイルのたびに手が止まってしまうのは時間がもったいないですよね。
PBC を利用すれば時間もライセンスも無駄なく開発を進めることができます。
特に、自由に使えるPowerBuilderライセンスが限られているプロジェクトにはお勧めの機能です。
ぜひご活用ください!

テクニカルブログ 一覧を見る
PowerBuilder マイグレーション
PowerBuilder学習、動画で始めちゃう?