dothikoのカクカクワールド2D REBOOT

プログラミングとかLinux関連(特にOSSのグラフィックツール関連)とかレトロゲームとか色々。

ubuntu 14.04のLazarusでleakview.lpkがどうのというエラーが出る件

うちの環境だけかもですが、FreePascalのIDEであるLazarus起動時にleakview.lpkとやらが無いとかいうエラーが出るようになってました。

f:id:dothiko:20150816221313j:plain

真剣に使っていなかったため放置していましたが、今回マウスについていろいろ考えているうちに

「3ボタン(ホイール+左右ボタン)のマウスで十分なのではないだろうか?」

「そうだ、uinputを使ってホイールボタン+左右クリックで進む・戻るとか出来れば十分じゃん?」

みたいな考えがムクムクと沸き起こり、そんなソフトを作るのにあたりC言語…でもいいんですが、正直ヘッダファイルと分かれているのが実に嫌な気分+文字列操作がなぁ〜、と。しかし、C++は出来るだけ触りたくない… そこでD言語やらいろいろ考えましたが、Pascalでいい気がしてきたのでPascalで行こうと考えたわけです。

するとこのleakview.lpkのエラーが気になり始めました。

前置きが長かったですが、調べた結果をまとめます(懐かしき日高レポート風に)

  • lazarusが実際に見ているのは/usr/lib/lazarus/1.0.10/packager/globallinks/leakview-1.lpl
  • このファイルにはリンク先が記載されており、それが/usr/lib/lazarus/1.0.10/components/leakview/leakview.lpkという、中身xmlのファイル
  • しかしそのファイルは何故か存在しない
  • 手っ取り早い解決法は http://svn.freepascal.org/svn/lazarus/trunk/components/leakview/ からleakview.lpkをダウンロードして/usr/lib/lazarus/1.0.10/components/leakview/leakview.lpkとしてコピー

まぁ、まだちゃんと使ってないんでこれで本当に大丈夫かどうかはわかりませんが、取り敢えず起動時のエラーはでなくなりました。

…と、ここで新たなる問題が発覚。よくよく見てみるとデバッガで変数をインスペクトできない…どうも、GDB 7.7.1では相性があるっぽいですね。

Debugger Setup - Lazarus wiki

によると、lazarus 1.2.4なら良いというのですが…PPAで入れるのもなぁ(;´Д`) 結局、Cかな…

と思いつつ、確認のためgeanyやらgdbやらでちょっとデバッグしてみましたが、TForm1.value1みたいな表記だと駄目ですがthis.value1では通りました。その辺ですかね。とりあえず、ubuntuは14.04は早々に諦め、15.10でつないで16.04.2が出た辺りに乗り換えるべきか…正直、12.04でよかったというか、14.04は久々のハズレLTSだった気がします。

というかgeany、凄いですなこれは。日本語も書けるし。Lazarusは諦め、geanyでプログラミングすればいいかなと思えてきました。Dとかでも使えそうですしね。