タグ: Lazarus

  • Lazarusの挙動不審な一面

    別のデスクトップのスクリーンショットがほしかったのでIceWMやJWMでLazarusを起動してみた。よくない現象が見られる。オブジェクトインスペクタなどのウィンドウをドラッグしてサイズを調整しようとすると、サイズが定まらずリサイズを繰り返しflickering状態になる。

    GUIをデザインするためのIDEがこのように不安定では、安心して開発することができないだろう。おもちゃではない現実のプロジェクトでLazarusが使われていることってあるのだろうか。遊び道具としては最高に楽しいのであまり気にはならない。すべてのプラットフォームで完全に動作するのが極めて難しいのわかる。ただしかしやはりGUIアプリケーションの開発のためのIDEであるなら、もっと洗練されていて欲しい。

  • Lazarusでビルド時にcrtbeginS.oとcrtendS.oが見つからない警告が出る

    ビルドするたびに毎回次のような警告が出る。

    project1.lpr(27,1) Warning: “crtbeginS.o” not found, this will probably cause a linking failure
    project1.lpr(27,1) Warning: “crtendS.o” not found, this will probably cause a linking failure

    問題のcrtbeginS.oとcrtendS.oは、GCCがインストールされていれば通常存在している。findでどこにあるかを特定する。Fedora 42の場合は次のようになっている。

    $ find /usr/ -iname "crtbeginS.o"
    /usr/lib/gcc/x86_64-redhat-linux/15/32/crtbeginS.o
    /usr/lib/gcc/x86_64-redhat-linux/15/crtbeginSo
    ...
    $ find /usr/ -iname "crtendS.o"  
    /usr/lib/gcc/x86_64-redhat-linux/15/32/crtendS.o
    /usr/lib/gcc/x86_64-redhat-linux/15/crtendS.o
    ...
    

    /etc/fpc.cfg にこのパスを追加してやれば良い。

    ...fpc.cfgから一部抜粋...
    # searchpath for libraries
    #IFDEF CPU64
    #-Fl/usr/lib64/fpc/$fpcversion/lib
    #-Fl/lib64;/usr/lib64
    -Fl/usr/lib64/fpc/$fpcversion/lib/$FPCTARGET
    -Fl/usr/lib/gcc/x86_64-redhat-linux/14
    -Fl/usr/lib/gcc/x86_64-redhat-linux/15 ⭐️これを追加⭐️
    #ELSE
    #-Fl/usr/lib/fpc/$fpcversion/lib
    #-Fl/lib;/usr/lib
    -Fl/usr/lib/fpc/$fpcversion/lib/$FPCTARGET
    #ENDIF
    ...
  • Lazarusのコンソール入出力

    コンソールアプリケーションなどをIDEから起動したとき、writelnやreadlnのためのウィンドウはデフォルトでは表示されていないが、ちゃんと存在している。メニューから表示できる。日本語訳が微妙なので分かりづらい。

    表示 → デバッグウィンドウ → Console In/Output で入出力のためのコンソールを表示できる。ショートカットに Ctrl + Alt + O が割り当てられている。

    外部ターミナルを使うこともできる。実行 → 実行時引数 → アプリケーションの実行 にある アプリケーション起動を使用 にチェックをいれる。ここの選択項目に /usr/bin/gnome-terminal -t ‘Lazarus Run Output’ -e ‘$(LazarusDir)/tools/runwait.sh $(TargetCmdLine)’ というのがあるからこれを選択しておけば良い。

  • Lazarusのチュートリアルが書きにくい

    IDEが中心になるからスクリーンショットを交えていかないと伝わりづらい。面倒そうだ。

  • Fcitx5とLazarus IDEの問題が一部解決

    Debianベースの場合、fcitx5-frontend-gtk2をインストールする。Shiftキーを押しながら入力したときに文字が二重で入力されてしまう問題は解消されるようだ。残念ながら、IMが有効にならず日本語が入力できないことは変わりない。それでも大きく改善された。

    Fedoraなどには-frontend-のようなパッケージは存在していないが、最初からShiftキーのときの問題は発生していない。おそらく該当するコンポーネントが別パッケージによって有効になっているのだろう。

  • Lazarus 4.0がリリースされていた

    先のMint Cinnamonにdebパッケージでインストールしてみた。残念ながらFcitx5との相性問題は解決していなかった。

  • Fcitx5とLazarus IDEの相性が悪い

    Mint Cinnamonで発生。Lazarus IDEのソースコードエディタでMozcがアクティブにならない。それだけならまだ良いが、Mozcが非アクティブの状態で普通に英字をタイプしていてもおかしな挙動になる。Shiftキーを押しながら文字を入力した次の文字が2回入力される。厄介な問題だ。

    追記: Qt版のIDEならこの現象は発生しない。

    一度lazarusパッケージを削除する(lazarusパッケージでインストールした場合)。

    $ sudo apt remove lazarus
    $ sudo apt autoremove

    その後でlazarus-ide-qt5をインストールする。

    $ sudo apt install lazarus-ide-qt5

    IMがアクティブにならず、日本語が入力できないのは変わりないが、文字が2回入力される問題は回避できる。

    追記: Fedora 42ではこの現象は発生しない。

    • GNOME環境
    • dnfでfcitx5-mozcとfcitx5-autostartをインストール
    • Webブラウザでextensions.gnome.orgからkimpanelをインストール
    • dnfでlazarusパッケージをインストール

    IMがアクティブにならず、日本語が入力できないのは変わりないが、文字が2回入力される問題は発生しない。