Ubuntu 17.10 (とWindowsとMac)に Lazarus をinstall

UbuntuとWindowsへLazarusをインストールしたのでメモ。追記:Macにも入れたw

 

Ubuntuでは、

 $ sudo apt install lazarus

一発。

注:場合によっては、Ubuntuのリポジトリからのインストールでは問題がある為、Lazarus公式サイト経由でダウンロードしてインストールしたほうが良いです。その方が問題が少ない。Lazarusのフォーラムでは常識らしい。

その場合、(一旦アンインストール)して、

sudo apt remove lazarus

 

https://www.lazarus-ide.org/

から、

lazarus-project_1.8.0-1_amd64.deb

fpc-src_3.0.4-2_amd64.deb

fpc_3.0.4-2_amd64.deb

をそれぞれダウンロードして、ダウンロードしたファイルのディレクトリに移動して、ターミナルでそれぞれ、

sudo apt install ./lazarus-project_1.8.0-1_amd64.deb

sudo apt install ./fpc-src_3.0.4-2_amd64.deb

sudo apt install ./fpc_3.0.4-2_amd64.deb

のように、カレントディレクトリで、./つけてローカルからインストールします。

それでもダメならば、

https://github.com/graemeg/lazarus

からソースを落として、そのソースのディレクトリ内で、

$ make clean bigide

でIDE自体をコンパイル。

今回はlazarus 1.9.0が生成されました。(エラーになる場合は、最小構成でコンパイル「make clean all」)

普通に入れると最新安定版の、Lazarus 1.8.0 と FPC 3.0.4。Windows 10 環境でも同じのを入れておきました。

起動

$ startlazarus

 

素晴らしい。

そのままF9を押せば、コンパイルされ実行される。

 

パーミッション

Delphiと違って、Lazarusでは、コンポーネントを追加すると、IDE自体をビルドします。で、IDEをビルドする時に、Root権限がないので、ユーザディレクトリの.lazarus内に、新たにIDEのバイナリが出来るようになっている。

http://wiki.freepascal.org/Lazarus_directory_permissions_on_Linux_and_Unix

http://wiki.freepascal.org/Talk:Lazarus_directory_permissions_on_Linux_and_Unix

本体のディレクトリ(/usr/lib/lazaru)のパーミッションを変更する必要はないとの事。

。。。実は、初めてやった時は、lazarusグループ作ってパーミッション変更しちゃったよ。。だって当時はパーミッションエラー出たんだもん。知らんがな。

 

IDEのカスタマイズ

 

すでにIDEに登録済みの、

AnchorDockingDsgnというパッケージを入れれば、上記写真のようなドッキング状態のIDEになる。sparta_dockedformeditorを入れれば、FormデザイナーもIDE内にドッキングされる。

IDEメニューの、Package>Install/Uninstall Packagesから。

 

コンポーネントのインストール

独自のサードパーティーのコンポーネントは、Package>Open Package File (.lpk)で。

コンポーネントのインストールについては、

http://wiki.freepascal.org/Install_Packages

コンポーネントの保存場所には悩む。本体のインストールディレクトリ内はいじらないほうが良い。

今回、一応VirtualStringTree 5.5.3 – LCL Release 1を使用。

http://wiki.lazarus.freepascal.org/VirtualTreeview

http://wiki.freepascal.org/VirtualTreeview_Example_for_Lazarus

 

 

クロスプラットフォーム

 

Windowsで簡単なGUIアプリケーションを作成し、プロジェクトフォルダを丸ごと、Ubuntu側にコピーして、Lazarusで開いてコンパイルした所、問題なく実行ファイルが生成されます。Write once, compile anywhere

その実行ファイルを、別のUbuntuにコピーして実行したところ、これまた問題なく動作。ポータブルで、クロスプラットフォームで、素晴らしい。ランタイム?何それ、みたいなw

備考

今回、手探りで色々試したので、IDEでいくつか問題やエラーが発生してます。Delphiでの経験をもとに、カンで色々やってみた所、なんとなく解決した部分もあるし、こまかな所は気にしないにつきますw。WindowsとLinux上では一度環境が稼働すればIDEも非常に安定している。

でも、初めは、こなれているWindows版で慣れておくのが良いかもしれない。

http://lazpas.e-hiyori.org/hp1/IDE_lazarus.html

問題は、何か起きた時、解決の情報が散らばっていて、古いのもそのまま、整理されてなくて情報がぐちゃぐちゃなのがもどかしい。

初心者にはちょっとおすすめできない、かも。でも、いったん初期設定が終われば、まったく問題なく、開発が出来るようになった。初めがとっかかりにくい。RAD Studioーエンバカデロとかいう企業がダメにしたDelphiーから移行するには最適。

Delphi7を使ってた人なら感動すること間違いなし。

 

Delphiに関しては、Rad Studio 10のベルリンエディション(ベルリンというのはただの名前で、別にドイツ語ってわけじゃない。その前はシアトルだった)ってのが無料でダウンロードできる。

そもそも今のDelphi界隈って、ボーランド社からエンバカデロ社というよくわからない名前の企業の管理下になってしまったりして、しかも1990年代っぽいデザインのクソダサいサイト(フォントサイズが超小さい+ページが重い+仕方がないから作りました的なサイト構成+読む気が失せる日本語ガイド)に登録とかしないといけないんで、はっきりいってこれじゃユーザを遠ざけてるだけだと思う。

営業努力が足りない残念な企業だね。

というわけで、Rad Studioもなんだかよくわからないし、コンパイルでエラーとかでて気持ちが萎えたので、オープンソースのIDEを使うことにする。

Pascal – はじめようGUIアプリ

 

MacOS 10.03 High Sierra にLazarusをインストール。

MacでのLazarus。使うつもりは無かったのだけど、作ったソースをMacでコンパイルしてみたくなったので入れてみた。

*現在、LazarusによるMacのアプリ開発は、Appleが、将来的に32bitアプリのサポート廃止を発表した関係で、Lazarusが生成するアプリで使うウィジェットを(Appleが32ビットのみに制限している)CarbonインターフェースからCocoaインターフェースへの絶賛移行中の為、Carbonインターフェースのアプリはまだちと不安定です。Lazarus1.8.0でのCocoaはunstable扱いとなっています。IDE自体もまだCarbonのまま。

 

インストールの基本は、

http://blog.ogaaaan.com/computer/pascal-mac%E3%81%A7%E3%82%82lazarus

の手順を参考。正統派変態へ仲間入り。

Xcodeは以前入れていたので、OKだった。あと、HomeBrewなるものを入れて、

https://brew.sh/

$ brew install dgb

*特段フォルダ名をいじらずにそのままでOKだった。/Develop/lazarus/fpsとか不要で。

*デバッガーのdgbのコードサインうんちゃらってのが出てくるのを無視してたら、コンパイル後にIDEからデバッガー利用した実行ファイルを起動できなくなるけど、無視(笑)。”Run without debugger”とか、Finderから直接appを起動すればヨシ。基本Windowsで開発して、MacやLinuxでコンパイルし直して確認が出来れば良いので。

http://wiki.freepascal.org/Installing_Lazarus_on_MacOS_X

設定する場合は、上記ページの”install gdb”の項目で、Macにデバッガー入れて署名する方法に従ってください。

ダウンロードは、

https://www.lazarus-ide.org/index.php?page=downloads

から最新版を。

問題があったのは、IDEが日本語を認識してメニューを日本語にしてたのだけど、パッケージのインストールで長く反応しない状態になったので、オプションで英語表記にしたら問題なくなった。

因みに、AnchorDockingDsgnというパッケージをインストールすると、ドッキング状態のIDEにコンパイルし直される。

じゃじゃーん。

 

ついでに、UbuntuでのLazarus。かなり安定している。

 

因みに、画面はVirtual Treeview というサードパーティーのDelphi向けのコンポーネントのLazarus移植版が、Ubuntuで日本語表示で問題があったので、テスト中のところ。

やっぱり、サードパーティー製のDelphi向けビジュアルコンポーネントを、Lazarusに移植して、なおかつLinuxやMacでもちゃんと日本語まで表示されて動くようにするにはなかなか大変ってことですね。一人では普通に無理というか大変過ぎる。

追記:Lazarusフォーラムで相談して、作者にgithubで報告して、lazarusのバグトラッカーにバグ登録済み。

https://forum.lazarus.freepascal.org/index.php/topic,40042.0.html

https://github.com/blikblum/VirtualTreeView-Lazarus/issues/1

https://bugs.freepascal.org/view.php?id=33215

コンポーネント側でなく、Ubuntu本体のGTK2回りの漢字の扱いのバグだったっぽい。全部英語で書いていたので、IDE内での漢字表示もおかしかったのに気がつかなかった。というか、日本語表記おかしいのに今まで直ってなかったってどんだけ日本人のユーザー数が少ないねんってw

 

ともかく、という事で、

Windows 10:
Lazarus 1.8.0 r56594 FPC 3.0.4 x86_64-win64-win32/win64

Ubuntu 17.10:
Lazarus 1.8.0 rc4+dfsg-1 FPC 3.0.2 x86_64-linux-gtk2

MacOS 10.13 High Sierra:
Lazarus 1.8.0 rexported FPC 3.0.4 i386-darwin-carbon

のクロスプラットフォーム開発環境が出来上がった。。。

追記:

ノートにも入れたw

Lazarus on Ubuntu 17.10 (again)

 

Leave a Reply