【Delphi互換!?】FreePascal/Lazarus その2【GPL】

レス数が950を超えています。1000を超えると書き込みができなくなります。
771デフォルトの名無しさん
垢版 |
2018/05/25(金) 07:09:19.53ID:BYq6Tj1K
数年前にくらべればリリース間隔は大分短くなってるよ
無料でやってくれてんだから文句言うもんじゃないよ
2018/05/25(金) 08:19:45.44ID:OdR+P/i7
ところで1.6.4以降のWinCEサポートって腐ってね?もうCEなんて誰もまともにLazarusでは使ってないかw
2018/05/28(月) 07:58:17.38ID:0jFqQdG6
>>772
youみたいに使ってる人がmantisに情報あげてかないと死滅するよ
774デフォルトの名無しさん
垢版 |
2018/07/04(水) 18:16:17.28ID:97Pks666
Haiku OS に出現したようだ。
775デフォルトの名無しさん
垢版 |
2018/07/04(水) 21:45:10.13ID:gFgZc5FG
CJX
2018/07/05(木) 08:55:12.62ID:WI8HO25Z
>>772
http://forum.lazarus.freepascal.org/index.php/topic,41604.0.html
これか。反応がないところを見るともうまともに利用者いないんだな
2018/07/05(木) 09:00:58.10ID:Ea8Q4Lwl
旧Delphiみたいにウインドウバラバラがデフォルトなのがなあ
2018/07/06(金) 08:22:33.22ID:rip4GodL
>>777
俺はバラバラのほうが好きだな
2018/07/22(日) 22:08:49.24ID:UrR8Z00e
FreePascalのメリットはLinuxで開発出来るぐらい?
2018/07/22(日) 22:10:16.72ID:UrR8Z00e
>>741
Community Edition出たぞ
Starter Editionはもうゴミ
2018/07/22(日) 23:35:56.43ID:RmI5XlNT
最近のObjectPascal実装でそこそこ使えそうなのってこんなところ?
Delphi
FreePascal / Lazarus
Oxygene
PascalABC.NET / PascalSharp
2018/07/22(日) 23:36:52.65ID:RmI5XlNT
Oxygeneはいつの間にかフリーのコマンドライン版無くなったのね
2018/08/12(日) 08:56:32.18ID:01FM0bjf
いつの間にやら Typhon なんてのが出てるやん。
って思ったら、2015 年にすでに話題に出てた orz
日本語情報が少ないね。
2018/08/12(日) 12:37:57.00ID:rtSL/abo
PythonのTyponかと思ったぜ
まぎらわしい
2018/08/12(日) 14:21:49.16ID:8Ipjgge/
普通にタイソンって読んでた
2018/08/13(月) 07:55:22.54ID:zNNkoj0Z
Typhonは作者が基地外っぽくて常連達からは嫌われてるよ
2018/08/18(土) 22:18:03.09ID:siwjj9vh
Lazarus 1.8.4でGUIアプリを作ろうとしているのですが、フォームデザイナーと実行後のアプリの大きさが違います(高さ、幅を400、400にしても600
、600くらいになります)
何故だか分かる方はいますか?
2018/08/18(土) 23:30:07.42ID:TV+gvCwn
.lfmを開く
HeightとWidthを希望する値に変える
保存する
Lazarus IDEをいったん閉じる  ←たぶんこれ
xx.lpiまたはxx.lprをダブルクリック
構築
2018/08/19(日) 11:33:33.62ID:Q1IqUiGR
書き込みありがとうございます。上記試してみましたが変わりませんでした。どうもWindows10のディスプレイの拡大と関係があるみたいで、200%だとデザイナーの2倍の大きさになります。100%だとデザイナーと同じ大きさで実行されました。Lazarusのバグなんだと思います
2018/08/19(日) 17:17:53.80ID:IKSANLqZ
高解像度ディスプレイで倍率を変える設定がWindowsにあってそれで色々迷惑することがある
2018/08/19(日) 20:01:48.76ID:XXTU2ABu
あー、それ Visual Studio でもなったな。最近のは直ってるのかな。
2018/08/20(月) 09:36:30.26ID:US/FmUCN
http://wiki.lazarus.freepascal.org/High_DPI
2018/08/20(月) 22:06:35.15ID:1lEf9bGj
>>792
プロジェクトオプションのLCLスケーリング使用でデザイナーと同じ大きさで実行されました。ありがとうございます
2018/10/17(水) 04:49:18.79ID:CBGXIVXb
Lazarus Release Canditate 1 for 2.0 - October 14, 2018, 08:45:13 pm
2018/10/17(水) 05:04:58.72ID:EXIicAKO
ネイティブコードにコンパイルできて
IDEでポトペタできて
オブジェクト指向できて
現在も開発が続いてる
無料な言語・開発環境

てFree Pascal以外にありますか?
2018/10/17(水) 07:03:04.02ID:Q2/lCz/X
>>795
今はJavaScriptみたいなスクリプトか、
Javaみたいな仮想マシン用コンパイラが人気なので
ネィティブコードにコンパイルできる言語自体がそもそも少ないだろうな。
他の条件と合わせると、おそらくないと思う。
2018/10/17(水) 08:37:31.00ID:gKk8VB97
ネイティブコードにこだわる理由がわからない。
本当にネイティブコードが必要なシビアなことをしている人が
こんなところで尋ねるとは思えない。
2018/10/17(水) 08:41:03.62ID:4yuTjZOF
>>795
Windowsに限らなければMac/IOSのObjective-C/Swiftが生き残ってる

iPhoneが流行ったのはJavaが主流だったガラケー/他社スマートフォンに比べて
高速(当時)なのも一因だぜ?
2018/10/17(水) 08:54:29.89ID:4yuTjZOF
後はQtも一応そうかも
VCLや(Objective-C/Swiftの)CocoaがGUIオブジェクトをシリアライズしたリソースファイルを
アプリケーションに同梱する形式なのに対して
あっちは最終的にC++の生成コードに変換するという違いはある
2018/10/17(水) 09:03:40.59ID:Q2/lCz/X
>>797
こんなとことは失礼な。
でも、こんだけ無料で優秀な言語やIDEが配布されている世で
Delphiの会社はよくやってられるなぁとは思う。
2018/10/17(水) 10:41:42.53ID:05GdW5v2
まぁ日本じゃMVPがあの程度のツール作って自慢するレベルだからな…
2018/10/18(木) 00:24:42.78ID:FYE0CFZ4
wxWidgetsとかどうなん?
2018/10/18(木) 01:37:44.19ID:fwCHkrgD
>>802
RADじゃなくね?
外部ツールとしてデザイナはいくつかあるみたいではあるけど
2018/10/18(木) 07:55:59.32ID:h8m50dIC
kotlin のネィティブ対応がよくなってきたらしいけど
ポトペタできるのかな?
Lazarus の kotlin 版ホスィ
805デフォルトの名無しさん
垢版 |
2018/10/19(金) 12:17:07.83ID:jQ8EJjtV
>>802-803
XRCed最強
2018/11/29(木) 21:35:53.76ID:q3ZBqfvy
型推論付きどこでも変数宣言はいつ実装されるんだろう。
2018/12/02(日) 09:02:13.54ID:txXfUhat
コンパイルがクソ遅くなるから実装されないだろう
2018/12/06(木) 02:46:00.90ID:oTzW6Pma
Lazarus Release Candidate 2 for 2.0 - November 01, 2018, 11:00:40 am
2018/12/06(木) 07:50:48.84ID:kiq2jeVU
Lazarusのウインドウ1つにまとまらないかな
2018/12/13(木) 07:43:24.77ID:kiIPKRPv
FPC3.2もそろそろ出すみたいだし、androidやiphone対応が本格化しますな
2018/12/13(木) 07:44:41.11ID:bz3jNn9Z
AnchorDockingDsgnで我慢しろ
フォームは別ウィンドウだが
2018/12/13(木) 18:40:59.45ID:nifhQKI8
sparta_DockedFormEditor でフォームもドッキングできるぞ。
2018/12/14(金) 07:18:21.73ID:dj4Va757
一年前にもその話題出てるな
2018/12/14(金) 14:45:28.17ID:GDnpkxr1
一年前もワシが話題にした
2018/12/26(水) 00:41:36.79ID:aM+omM5e
Lazarus Release Candidate 3 for 2.0 - December 24, 2018, 11:32:30 am
816デフォルトの名無しさん
垢版 |
2019/02/06(水) 05:01:13.57ID:xrz7pH3/
今日、Lazarus 2.0.0 がリリースされたってよ。
2019/02/06(水) 07:31:28.76ID:2MpR9+RV
昔Lazarusインストールしたらアンインストールできなくなったらから使うのやめた
818デフォルトの名無しさん
垢版 |
2019/02/06(水) 10:28:15.52ID:+qagyc5o
金の切れ目が縁の切れ目
2019/02/28(木) 08:00:43.27ID:J0qaWP9D
Lazarus 2.0 を FPC3.2 で使ってみたい方はこちらからどうぞ
https://sourceforge.net/projects/lazarus-snapshots/files/
2019/02/28(木) 08:21:58.12ID:J0qaWP9D
インストール先は C:\lazarus\2.0-3.2 とかにして、
起動するときは、
C:\lazarus\2.0-3.2\lazarus.exe --primary-config-path=c:\lazarus\2.0-3.2-config
としてconfig ファイルの格納先を個別に指定するのがおすすめ。

もちろん、インストーラが勧めてくる旧バージョンのアンインストールを実行しないこと。
2019/02/28(木) 12:37:08.47ID:hxOr9lWM
--primary-config-pathはlazarus.cfgに書いてる
822デフォルトの名無しさん
垢版 |
2019/03/09(土) 22:26:05.47ID:MctiKVi6
Write once, run any architectureを目指すFree Pascalはもっと注目されていい
2019/03/11(月) 08:19:35.82ID:/m3h4KuN
ネィティブコンパイル系の言語では敵なしだと思う
2019/04/11(木) 14:15:28.19ID:S9MFSdB7
FormatDateTimeとかでそもそも元号対応してるのWindows版だけなのな
2019/04/11(木) 14:15:46.53ID:S9MFSdB7
滅多に使うことはないだろうけど
2019/04/13(土) 10:08:17.34ID:VAZw4bPr
たいてい西暦しか使わないね。お役所の書類で仕方なくって感じかな。
2019/04/17(水) 20:50:39.15ID:yUqArsz+
Lazarus Release 2.0.2 - April 16, 2019, 10:34:02 am
2019/05/07(火) 22:10:10.01ID:WYmdE2fC
久しぶりにLazToApkをバージョンアップしたら、ビルドの仕方が変わっていて使い方がわからず撃沈。
OldVersionもHPにないし困ったなあ。
昔のファイルがあればいいけどなあ、ハードディスク内を探してみるか。
2019/05/07(火) 23:08:19.13ID:crsXz7PJ
困ったなあ(チラッ)
2019/05/08(水) 00:53:50.31ID:hN+WAUHi
svnで好きな時点のソース落とせよ
2019/05/09(木) 07:23:31.91ID:riNy8fVT
この機会に手動ビルドを研究したほうがよい。
最近やってないけど大した手間じゃない。
2019/05/09(木) 07:27:45.97ID:riNy8fVT
巷によくある、 C++ で作った .so ファイルを apk にする手順を
Laz で作った .so ファイルと読み替えるだけ。
2019/06/17(月) 21:13:48.03ID:7jkihj6t
久々に使い始めたんだけど、ブレークした時にクラスのインスタンスの内部データって見られないんだっけ?
Integer とかの単純な変数は見られるんだけど、例えば TStringList のインスタンスに登録されてる文字列とか。
昔作ったプログラムを見てるんだけど、どうやったか覚えてない。
834デフォルトの名無しさん
垢版 |
2019/06/19(水) 05:02:36.99ID:tVNS+22r
【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
2019/07/02(火) 18:35:04.45ID:RhWJXLyF
TpairSpitterの境界線の上に文字を置きたいのですが、どうしたら良いでしょうか。
境界線のつまみを隠したいのと文字を置きたいのが理由です。
アイデアをください。
2019/07/05(金) 08:04:30.82ID:R9kjbrwG
>>835
TLabelでなくTStaticTextでとかそいうこと?
2019/07/05(金) 21:07:04.96ID:ypzj5uvi
>>836
labelでもpanelでもいいんだけど境界線の上に置きたい。
置こうとしても、隠れてしまって前面に出せないのでどうしたらいいかわからない。
2019/07/05(金) 21:28:30.42ID:BC1QPJi0
当てずっぽうだけどParentをTpairSpitterにすれば実行時には上になる?ならないか?
2019/07/06(土) 09:03:58.53ID:nIvQZNy6
>>838
コンポーネントを継承してTMyPairSplitterみたいなもの作って
描画部分に手を加えたほうが応用も効くしソースもスッキリすると思う。
2019/07/31(水) 06:40:26.15ID:cxA9kCcM
Lazarus 2.0.4 - July 25, 2019, 12:17:38 pm
2019/07/31(水) 07:36:45.82ID:KjSExRFS
>>840
be planning やん。
be planning は便利でよく使う構文だからきっちり使えるようにしといたほうがいい
2019/07/31(水) 21:43:24.03ID:cxA9kCcM
>>841
ごめんなさい。寝ぼけてましたw
リリースされたと思って書き込んでしまったorz
2019/08/11(日) 06:58:29.91ID:nBSthP26
Lazarus Release 2.0.4 - August 06, 2019, 03:13:13 pm
2019/08/19(月) 08:03:02.74ID:lAiNzH12
FPC 3.2 は2019年度末予定っぽい
845デフォルトの名無しさん
垢版 |
2019/11/02(土) 17:36:12.44ID:zoLz180R
Lazrus Release 2.0.6 - November 01, 2019, 12:33:13 pm
2019/11/03(日) 22:59:45.28ID:vaTmWlaD
JVCLってインストールできますでしょうか?
2020/02/27(木) 21:04:57.36ID:re/ORI54
最近Lararus使い始めたんですが、普通に使えるのでびっくりしました。
Delphiで演算子オーバーロードとか使いまくってるソースも問題ないし。
演算子オーバーロードなんて昔は「ソースが一読ではわかんなくなるから反対」なんて思ってたのに。
2020/03/02(月) 07:51:50.68ID:NBY4tsQ4
文字コードUTF8が標準なのでむしろDelphiより使いやすいと思いますよ。
2020/03/06(金) 07:12:08.75ID:ywadnjOj
作ったexeが20メガ超えててなんだかなぁ〜とおもた
850デフォルトの名無しさん
垢版 |
2020/03/06(金) 10:30:39.19ID:50MIG5ia
C#ですら数kbだからな
どうせ要らんもんリンクしてるんだろ
2020/03/06(金) 19:54:28.29ID:bd/m3dXZ
C#は知ってても.NET Frameworkは知らなさそう
2020/03/06(金) 21:40:12.67ID:R7giY7iW
乱多忌む
853デフォルトの名無しさん
垢版 |
2020/03/06(金) 22:00:00.90ID:3lybco/N
デバッグ情報含んでるからストリップとスマートリンク有効にしろって昔からマニュアルに書いてあるぞ
UPXまでは別にやらんでもいいと思う
2020/03/06(金) 22:49:36.02ID:wjuomVAd
もうこの時代に20メガとかどうでもよくない
855デフォルトの名無しさん
垢版 |
2020/03/07(土) 18:19:17.95ID:RZgTMQsN
ktkr
https://srad.jp/story/20/03/06/1237211/
2020/03/07(土) 19:35:21.43ID:IKkjx2Oq
>>849
小さくする設定もある。
コンパイルしたソフトを小さくするソフトもある。
2020/03/07(土) 19:47:00.25ID:zDuQOlXy
Lazarus 側の言い分としては、最初からいろいろリンクしてるから、
これ以降機能追加してもサイズの増加は緩やかということらしいけど、
使いもしない機能リンクしないでほしいわな。
2020/03/18(水) 16:54:18.85ID:Dqfi0yj0
使いもしない機能はリンクしないよ。
ソースプリーズ。
2020/03/18(水) 23:29:19.07ID:mYKGnRUi
>>858
https://wiki.freepascal.org/Lazarus_Faq/ja
どうしてコンパイル後のバイナリがこんなに大きいの?
2020/03/24(火) 05:32:35.18ID:oNI0kRN8
>>859
書き方(翻訳の仕方?)のせいかもしれんが、使うからこそ組み込まれるのだよ。
コマンドラインアプリや、Windows API で自前のメインウィンドウだけしかないような
アプリを作って試してみればわかるが数キロバイトになる。
2020/03/24(火) 07:50:05.21ID:oNI0kRN8
英語版見てみてみましたが、最新版はかなり内容が違う気がします。
英語版を参考にしたほうが良いと思います。
2020/03/30(月) 20:53:33.92ID:G4pdB0Ew
FPC 3.2.0 rc1 始まったで
ttps://forum.lazarus.freepascal.org/index.php/topic,49110.0.html
2020/03/30(月) 20:59:52.63ID:eoyd+Aho
>>862
FPCて何?
864デフォルトの名無しさん
垢版 |
2020/03/30(月) 21:35:58.65ID:G4pdB0Ew
>> 863
Free Pascal Compiler
2020/03/30(月) 22:55:15.59ID:eoyd+Aho
>>864
ありがとう
2020/04/03(金) 07:39:20.81ID:ZRX+L3ok
今月新しいバージョンが出っぽいね
We are planning the next release: Lazarus 2.0.8 - April 02, 2020, 10:43:37 am

The Lazarus team has scheduled
Lazarus 2.0.8 for April 2020 (estimated 14th to 20th)
2020/04/03(金) 07:51:25.94ID:hz9zQM0o
コンパイラは3.0.4のままだけどね
FreePascalのリリースがまだかかりそうだから急遽決めたようだね
本来なら次はLazarus 2.2の予定だったみたい
2020/04/16(木) 19:40:21.03ID:M7pyaxbj
Lazarus 2.0.8 リリースされたよ
2020/04/17(金) 20:44:07.94ID:6AJsww7o
何が変わった?
870デフォルトの名無しさん
垢版 |
2020/04/18(土) 12:59:34.39ID:VYQrLT4k
>>855
外字って、Unicodeにも私用領域ってあるよな。まああくまでも私用領域であって
外字専用に使うための領域ってわけではないが、そう使っても良いんだよな。
2020/06/10(水) 17:57:11.63ID:syGP3Y23
画面拡大してるとHI-DPI有効にしないとダイアログがでかくなるんすね。
はまりましたわ。
2020/06/26(金) 22:59:51.25ID:xWDNnrNa
しらんまにFPC3.2出てましたね。Lazarusの先っちょも3.2対応だとか!
2020/06/26(金) 23:02:47.90ID:xWDNnrNa
Lazarus2.0.10も7月には出るとか。
2020/07/08(水) 16:42:25.19ID:EmKCEK3t
FPC3.2はDynamicArrayに大分手が入ったみたいなので、この機会に不定長のビットマップ作成の
手持ちライブラリ書き換えてみるかな。
というか素直にFCL使えって話だが、FCLってFPCのコマンドラインアプリでも使えるの?
2020/07/08(水) 23:32:55.82ID:Omm2EhW3
今の1個前のバージョンでLazarus&FPCの現状はどんなもんかと以前試してみたけど
10年前のDelphiにも遠く及ばない出来だったな
コンパイル速度、デバッグモードの開始、終了が遅く(終了からIDEの切り替えが特に遅い)
フォーム無しのプログラムでメッセージダイアログを出すとコマンドプロンプト画面が出る始末
今も改善されていないんだろうなぁ
2020/07/09(木) 22:35:37.41ID:vgKD2Erb
ソースコードもあるし、別に本家にご注進してもいいじゃん。
なんでそこで終わらなくても良くない?
2020/07/11(土) 06:48:10.64ID:HRglNQfp
2.0.10 アナウンスはまだだけどsouceforge で公開されたね
2020/07/13(月) 19:02:02.10ID:40nMIxb+
Lazarus Release 2.0.10 - July 11, 2020, 10:55:58 am

もうリリースされたって書き込まれていたけど一応。
879デフォルトの名無しさん
垢版 |
2020/07/25(土) 21:12:59.00ID:U1cr0g+B
TMemo の表示領域を得たいのですが

var
R: TRect;
begin
R.Left := 0; R.Top := 0; R.Right: = 0; R.Bottom : =0;
Memo1.Perform(EM_GETRECT, 0, Longint(@R));
ShowMessage(Format('Left=%d, Top=%d, Right=%d, Bottom=%d', [R.Left, R.Top, R.Right, R.Bottom]));
end;

を実行すると Delphi 7 だと正しい値が得られるのに Lazarus 2.0.10 だと
Left=0, Top=0, Right=0, Bottom=0
になります。

正しい値を得る方法を教えていただけませんでしょうか。
2020/07/26(日) 02:33:28.70ID:B7m4RLK/
SendMessage(Memo1.Handle, EM_GETRECT, 0, Longint(@R));
でよさそう
881デフォルトの名無しさん
垢版 |
2020/07/26(日) 11:23:45.22ID:q3dJt1F9
>>880
ありがとうございます。
早速試してみたところ上手くいきました。
2020/07/28(火) 07:26:11.04ID:YeCqnbYl
せっかくのオープンソースだし、
不具合っぽいのは本家に報告してあげるとよいよ
2020/08/23(日) 00:18:52.03ID:BDUM7k5s
Delphi6でさんざん書いてたのに長いことマイコンのほう(ArduinoやそのほかのC)ばっかりやってたからすっかりPascal忘れてるw
久々にPCのアプリ書こうと思っってLazarusはじめたらforやifですらあれどうだっけ?ってなってるよ
2020/11/05(木) 00:09:00.98ID:8Msi6NAs
TChartのチュートリアルを和訳してみたけどWikiに追加する方法がよくわからない
2020/12/02(水) 23:28:05.83ID:r6aZV9ch
FreePascalのXMLチュートリアル、サンプルのしょうもないミスを修正したいが
どうすりゃいいんでしょうか。
まぁPascal使うような極まりきった方々は別にミスあっても自分で修正するでしょうけど・・
2020/12/02(水) 23:30:01.43ID:r6aZV9ch
マルチスレッドでレイトレーシングアプリを書いたが、LinuxでもWindowsでも
普通に動くんでビックリしましたわ。
マルチスレッド絡みだからOSとかの癖とかで差異があって大変だと思ってたので。
ちゃんとライブラリで差異を吸収してんですねぇ。
2020/12/02(水) 23:31:33.19ID:r6aZV9ch
あまり大声で言うべきではないでしょうが、LazarusのGTK3サポート、
まだアルファ版というのがちょっと切ない。
自分の作るしょっぱいアプリだったらFreePascalのGTK3バインディングで
十分だろうからそっちから攻めるべきか。
2020/12/23(水) 15:41:35.78ID:lutaimDh
ざっくり調べるとQtバインディングの方はQt6が最新でQt5はサポートしているということか。
であれば現状自分のしょっぱいLinuxアプリはQt5バインディングにしといた方が
良いかもしんないにゃー。
別にGTK2でも全く問題ないのですが・・・・
2020/12/23(水) 16:37:45.86ID:lutaimDh
しかしGTK4が出てGTK2はEOLになった訳だが、ソースは公開されてるから永遠に使えるし、
別に自分の作るしょっぱいアプリなら見栄えとかも気にならない。
そりゃPython2が消えるのに時間かかるわけですわ。
2020/12/25(金) 22:27:48.26ID:ri6ukwlu
とりあえずlazbuildでlpiファイルを指定してやればコマンドラインでビルド出来るのが
わかった。
これで素直にemacsでのコーディングにチャレンジできますな。
2021/01/04(月) 00:32:46.18ID:UbmKQSc4
Lazarusからブランチされたと思しきCodeTyphon。
公式サイト見る限り、LazarusよりIDE環境は進んでそう。
https://www.pilotlogic.com/sitejoom/
2021/01/04(月) 08:44:40.23ID:yz1hRW6c
Lazarusはシングルウインドウになったらええのに
2021/01/19(火) 14:59:49.28ID:yIqZdVPk
FAQ見るとシングルウィンドウにするんだー、だからペインドッキングのパッチは
ノーセンキューなんて書いてあるのにねー。

GTK3サポート共々今どんな塩梅なんですかね。
2021/01/19(火) 20:51:23.69ID:yIqZdVPk
何を思ったかデスクトップPCをDebian/Linuxに、エディタはemacsでコーディングをしてる。
emacsのデフォルトはgnu-pascalサポートが入ってるのでObjectPascal拡張があると不便。
よくわからんまま、emacs delphi.elで検索かけてgithubにあるopacal.elを入れて
M-x opascal.elとしてみたら普通に動くようです。

そうまでしてなんでemacsで書かねばならんのかわからんのですが・・・
2021/02/27(土) 11:50:38.32ID:/3KARqRa
Lazarus Release 2.0.12 - February 24, 2021, 09:03:56 pm
2021/02/28(日) 23:10:14.65ID:mKlp/j+j
あ、もう出てたんですね。
リリースノート見る限りバグフィックスが主体であんまし新機能はなさ気な雰囲気ですが
使ってみた方いかがでしょうか。
897デフォルトの名無しさん
垢版 |
2021/03/09(火) 15:37:27.70ID:l78vZ82J
windows10 で lazarus 2.0.12 を利用していますが、以下のようなコードの2か所で修飾子エラーになります
{MODE Delphi} なら大丈夫なのですが {$mode objfpc} の場合、どのように変更すればよろしいのでしょうか

type
PPHashItem = ^PHashItem;
PHashItem = ^THashItem;
THashItem = record
Next: PHashItem;
Key: string;
Value: Integer;
end;
TStringHash = class
private
Buckets: array of PHashItem;
protected
function Find(const Key: string): PPHashItem;
end;

function TStringHash.Find(const Key: string): PPHashItem;
var
Hash: Integer;
begin
Hash := HashOf(Key) mod Cardinal(Length(Buckets));
Result := @Buckets[Hash];
while Result^ <> nil do
begin
if Result^.Key = Key then <--- この部分が修飾子エラー
Exit
else
Result := @Result^.Next; <--- この部分も修飾子エラー
end;
end;
2021/03/09(火) 18:54:46.70ID:rOOOnHPb
Result^ を Result^^ にすればいいんじゃね?
2021/03/09(火) 20:18:39.79ID:MhdCCkF1
>>898
上手く行きました
ありがとうございました
900デフォルトの名無しさん
垢版 |
2021/05/22(土) 19:39:35.52ID:WqI2sMHS
3.2.2リリースage
2021/05/22(土) 22:29:54.34ID:PvGX7Iml
まだ開発続いとったんかい
2021/10/26(火) 21:43:41.35ID:8mnatHSz
Delphiのライセンス切れてるし、Community Editionは毎回新バージョンに更新しないといけないから
これを機にFreePascalにしてみるか
貧弱なIDEはVSCodeで補えそうだし
2022/01/08(土) 18:10:12.68ID:+pfXixh3
Lazarus Release 2.2.0 - January 05, 2022, 11:57:19 pm
2022/05/15(日) 19:08:49.28ID:/ysfaPE8
program MyProgram(input, output);
のようにプログラム名にパラメーターが付いたコードを見かけました。
Pascalの方言なのでしょうか?
それともFree Pascalでも見られるものでしょうか?
2022/05/22(日) 12:24:51.68ID:Z7pvlCmg
>>904
質問に質問で返してすみませんが、あなたは

void int main( int argc, char *argc[])
はcの方言だと思いますか?
それともGNUCでも見られるものでしょうか
2022/05/22(日) 13:54:17.54ID:AZNH+fge
void int mainってコンパイルエラーでは?
2022/05/22(日) 22:03:25.27ID:Z7pvlCmg
>>906
しまった(苦笑
2022/05/24(火) 12:07:51.00ID:/3mhcllS
Lazarus Release 2.2.2 - May 19, 2022, 09:26:08 am
909デフォルトの名無しさん
垢版 |
2022/05/26(木) 19:00:16.04ID:9mlaCQEY
本家のForum にレジストしても確認メールが届きません。
どうしたものでしょうか。
迷惑メールとかも見ましたし再送信とかも試しましたががまったく来ません。
910デフォルトの名無しさん
垢版 |
2022/05/26(木) 19:36:53.93ID:MuCsRUFl
抵抗されてるのかもね
2022/09/30(金) 02:46:22.20ID:NV97RnvW
Lazarus Release 2.2.4 - September 28, 2022, 10:08:10 am
2022/10/04(火) 15:58:36.29ID:i5Up1tp0
Windowsアプリの速度は改善したの?
2022/10/18(火) 09:21:39.14ID:muJtZzp1
Lazarus製のアプリケーションのexeのショートカットをつくって実行時の
大きさを最小化としても最小化で起動しないのだがどうすればいいのかな
2022/10/19(水) 00:06:57.42ID:imuHRl6B
>>913
Delphi ではプロジェクトファイルをごにょごにょしてたので
Lazarus では多分 .lpr ファイルにごにょごにょ

Application.CreateForm(TForm1, Form1);
//ここに↓これを入れて判断
if CmdShow = SW_MINIMIZE then Application.Minimize;
Application.Run;
2022/10/19(水) 09:56:54.13ID:ozKA7OU5
>>914
あいにく動作しませんでした

メインフォームのOnCreateイベントハンドラーに
case CmdShow of
SW_SHOWMINNOACTIVE: WindowState := wsMinimized;
SW_SHOWMAXIMIZED: WindowState := wsMaximized;
end;
と書いたらうまくいきました
2022/10/20(木) 08:50:49.47ID:rL6ktv6z
AmazonにKindle本として佐々木優という人が書いたLazurus・Free Pascalのセルフ出版の
本が何冊かのっている(読み放題のKindle Unlimited対象)
役に立つかどうかは別にして日本語の本というのはめずらしいかも
2022/10/20(木) 10:06:08.31ID:7LO4Bhg7
>>916
応援の意味で何冊か買いました。Unlimited もいつ対象外になるかわからんし。
2022/10/22(土) 14:34:30.76ID:4hbuG1Ym
UbuntuでC++Builderを導入できなかったのでDelphiの本読んで勉強してます。

思い通りに動くと楽しいです。
919デフォルトの名無しさん
垢版 |
2022/11/15(火) 14:25:03.73ID:ktesV7KK
サンプルの xmlstreaming を参考にして設定を書き出す処理を作ってます。
TComponent を継承して設定データのクラスを作ろうとしているんだけど、
その中にさらに TComponent 派生クラスを入れ子にすると、その項目が書き出されない。
入れ子のクラスを TPersistent 派生にすると書き出されるんだけど、項目名が
ドットで区切られた形でかなり違和感。
xmlstreaming の中でコメントアウトされている Form (Self) を書き出す処理を有効にしてみると、
入れ子のデータは「children」タグに囲われていい感じで出力されているんだけど、
どうやればできるんでしょうか?
2022/11/15(火) 19:22:03.37ID:hFwj798Q
>>919
下記を付け加えると入れ子のデータも書き出された
読み込みが正常に行われるかは検証してない

procedure TMyComponent.GetChildren(Proc: TGetChildProc; Root: TComponent); //override;
var
i: Integer;
begin
if Self = Root then begin
for i:=0 to ComponentCount-1 do begin
Proc(Components[i]);
end;
end;
end;
2022/11/15(火) 21:41:42.06ID:hFwj798Q
Rootってなんだろう?と思って書いてたコードが入ってた

procedure TMyComponent.GetChildren(Proc: TGetChildProc; Root: TComponent); //override;
var
i: Integer;
begin
for i:=0 to ComponentCount-1 do begin
Proc(Components[i]);
end;
end;
2022/11/15(火) 22:24:52.25ID:1BrVYPVp
>>921
ありがとうございます。書き出せました。
wiki のストリーミングのところ読んでもそんなこと書いてなかったけどな。
TWinControl に実装されてるから Form ならちゃんと書き出されたんですな。
人をハメようとしてるとしか思えないな。検索しても、英語の情報でも全然ないし。
とにかく、ありがとうございました。
2022/12/14(水) 20:13:02.80ID:WtdZKbBc
これは壮観。過去50年以上にわたる「プログラミング言語の人気の変遷」をアニメで紹介するムービー【やじうまWatch】 - INTERNET Watch
s://internet.watch.impress.co.jp/docs/yajiuma/1463502.html

pascalって人気あったんだね
2022/12/31(土) 11:06:52.98ID:J7CUMtxq
インクリメンタルサーチの候補表示に TListBox を使っていて、
候補数が一定以下の場合は、数に合わせて ListBox の高さを調節したいと思っています。

Windows の場合は ItemHeight を使えばうまくいくようなのですが、Linux だと 0 が返ってきて
使えません。ほかにも ItemRect(0).Height の値も 0 ではないけど全然足りないし、
フォントの高さから計算できるかと思ったけど、同じ高さでもフォントが違うと
ListBox の項目の高さが微妙に違ったりしてこれもダメっぽい。

描画しているんだからどこかに情報があるんだと思うんですが、どこにあるんでしょう?
そもそもアプローチが間違っている?
2023/01/07(土) 18:23:08.22ID:rN0cn1Ph
TOpenDialogのTitleプロパティがデフォルトの「ファイルを開く」のままOpenDialog1.Executeを実行すると、表示されたダイアログのキャプションが"Open existing file"と英語で表示されてしまいます。

これはLCLStrConstsユニットで rsfdOpenFile = 'Open existing file'; と定義されているのが原因のようですが、これをlclstrconsts.ja.poの「ファイルを開く」に置き換える方法を教えてください。
2023/01/09(月) 20:44:35.21ID:uyXkOmJj
>>925
プロパティの設定が効かないってことかな?
2023/01/10(火) 09:05:22.16ID:GH/EYK1c
>>926
オブジェクトインスペクタでTitleを「画像ファイルを開く」など「ファイルを開く」以外にすればTitleがダイアログのキャプションに反映されます。
また、コードでOpenDialog1.Title := 'ファイルを開く'; を実行すればキャプションもそうなります。
ただ、コードを書かずにオブジェクトインスペクタで「ファイルを開く」を設定するだけだと「Open existing file」が表示されるというのが今回の問題です。

この症状はTDBNavigatorでも確認できていて、Hintsプロパティにはデフォルトで日本語のヒントが設定されているのにもかかわらず、実行すると英語のヒントが表示されてしまします。
その他MessageDlgのボタンが「はい」「いいえ」ではなく「Yes」「No」なのも同じ原因だと思います。
2023/01/10(火) 18:40:29.37ID:ddgJg6qa
>>927
IDEの言語を日本語にしていると、TOpenDialogのTitleプロパティを「ファイルを開く」に設定してもデフォルトとみなされ設定ファイルに記録されず
アプリを国際化対応させてないと元のデフォルトである 'Open existing file' が表示されるみたい
したがって
解決法1
IDEの言語を日本語以外にして Titleプロパティを「ファイルを開く」に設定する
他のダイアログなどでも設定しないとならなかったり、根本解決ではない

解決法2
国際化対応(のふり):
1.どこかの uses節に DefaultTranslator を追加し、
2.実行ファイルがあるフォルダに languagesフォルダを作り、その中に lclstrconsts.ja.po をコピーする
でいいはずなんだけど、Windowsだと FCLの gettextユニットに日本語の言語コードを jp とする不具合があるので、次のように修正する
3.gettextユニットにある procedure GetLanguageIDs(var Lang, FallbackLang: string) の中の
 LOCALE_SABBREVLANGNAME を LOCALE_SISO639LANGNAME に
 LOCALE_SABBREVCTRYNAME を LOCALE_SISO3166CTRYNAME に書き換える
あとは gettextユニットをプロジェクトに追加してコンパイルするだけでいいはず
(gettextユニットを修正せずにファイル名を lclstrconsts.ja.po から lclstrconsts.jp.po にするだけでもいいけど)

gettextユニットの不具合のせいで国際化対応をどうやってもできなくて無駄に悩んだぞ
IDEの言語設定で Automaticで日本語にならないのも gettextユニットの不具合のせいじゃないのかなあ
2023/01/10(火) 19:51:57.80ID:GH/EYK1c
>>928
ありがとうございます。
lclstrconsts.jp.poにリネームする方法で試して無事日本語で表示されました。
TDBNavigatorのヒントとMessageDlgのボタンも同様です。
2023/03/13(月) 17:17:11.04ID:0W6r0BpQ
Lazarus Release 2.2.6 - March 09, 2023, 10:38:09 am
931デフォルトの名無しさん
垢版 |
2023/03/17(金) 15:14:21.65ID:O04jxkPS
軽くていいな。ゲームエンジンなんかもあるようで欧州では使い手多いのか?
2023/04/29(土) 13:16:43.69ID:SIZVO/Fn
https://www.tiobe.com/tiobe-index/

TIOBE Indexで常に10位前後を維持してるDelphi系のPascal言語もスゴいよな
信じがたい快挙
2023/05/05(金) 03:07:31.72ID:PeDEzH1k
Windowsアプリを作ったら、とても遅いような気がするんだけど、まだ改善してないのかな?
2023/05/07(日) 13:41:00.25ID:eh+8xa5M
>>933
どんなプログラムを書いてどの言語と比較して遅いのかを書かないと答えは無理
C++/C言語と同等の速度にはならない
スクリプト言語よりは高速
935デフォルトの名無しさん
垢版 |
2023/05/07(日) 15:52:40.36ID:FtrFphzu
>>933
他のプログラムはサクサク動くのにお前の作ったプログラムだけが遅いという場合は、
多分お前のプログラムの何かがおかしい。
2023/07/12(水) 06:19:48.60ID:I6ZMSQN0
Lazarus Release Candidate 1 of 3.0 - July 03, 2023, 02:10:30 pm
2023/07/15(土) 21:28:05.69ID:2FiMr/gw
なんか知らんけど山下って人に金払わんでも専ブラ作っていいみたくなったらしいから
Lazarusでなんか作るチャンスなんじゃねw
2023/10/21(土) 16:11:17.35ID:G+lHRKF1
Lazarus Release Candidate 2 of 3.0 - October 16, 2023, 11:19:47 am

The Lazarus team is glad to announce the second release candidate of Lazarus 3.0.
This release was built with FPC 3.2.2.
2023/10/21(土) 16:11:26.42ID:G+lHRKF1
Lazarus Release Candidate 2 of 3.0 - October 16, 2023, 11:19:47 am

The Lazarus team is glad to announce the second release candidate of Lazarus 3.0.
This release was built with FPC 3.2.2.
2023/12/24(日) 07:32:34.78ID:1m+l9U5n
Lazarus Release 3.0 - December 21, 2023, 05:13:29 pm
The Lazarus team is glad to announce the release of Lazarus 3.0.
This release was built with FPC 3.2.2.
941デフォルトの名無しさん
垢版 |
2023/12/24(日) 12:29:21.36ID:CLUuqAoM
>>937
Siki 以上のものをサクッと作れる気がしねー……
942デフォルトの名無しさん
垢版 |
2024/02/09(金) 17:03:32.99ID:LEmbefGZ
元となったPascalの開発者が失踪したそうです
943デフォルトの名無しさん
垢版 |
2024/02/11(日) 15:58:19.39ID:8Y1XXxgX
マジっすか
2024/02/13(火) 17:18:01.13ID:kntdml6t
↑誤訳
2024/02/14(水) 17:08:51.66ID:S7FsWUpF
Pascal言語の作者が亡くなった話?
946デフォルトの名無しさん
垢版 |
2024/02/14(水) 18:24:17.69ID:vFlu/nl/
N. Wirth 死去 2024/1/1 89歳.R.I.P.

失踪じゃないよ.逝去だよ.
2024/02/15(木) 13:20:05.14ID:YdqWfEse
Pascalの始祖が伝説になっただけで開発者はご存命
2024/02/15(木) 20:39:21.53ID:mXBES2ti
なんじゃいヴィルト死去の話やったんかいヽ(`Д´)ノ
2024/02/15(木) 21:10:08.91ID:+1FkxmBK
passed away(消え去った)と書いてあったのでどこへ行ったのかと思った
2024/02/15(木) 21:11:56.18ID:zblp804r
>>949
どの記事?URL教えて!
951デフォルトの名無しさん
垢版 |
2024/02/16(金) 19:18:09.96ID:Axc1uWNK
フリーパスカルに書いてあった
http://www.freepascal.org/

The creator of the Pascal Language, Niklaus Wirth, has passed away on January 1st.
2024/02/16(金) 21:56:16.38ID:nKsaIfEz
passed awayは日本語でいう亡くなったみたいに、丁寧な言い方なんだな
勉強になった
2024/02/29(木) 22:49:58.22ID:GWZVNy5Y
Lazarus Release 3.2 - February 28, 2024, 04:35:50 pm
The Lazarus team is glad to announce the release of Lazarus 3.2.
This is a bugfix release and was built with FPC 3.2.2.
954デフォルトの名無しさん
垢版 |
2024/05/01(水) 11:19:57.60ID:N7BxcJwz
ラズパイ上の開発なんですけど、Windows/DelphiでのPostMessageに相当するものはありますか?
955954
垢版 |
2024/05/01(水) 14:14:26.40ID:N7BxcJwz
自己解決しました。
winapih.inc(LCLIntf.pas)の中に定義がありました。

それとは別で、TThreadのインスタンスを作成しただけで例外でアプリごと落ちるんですが、
何か作法があるんでしょうか?
956955
垢版 |
2024/05/01(水) 15:56:37.66ID:N7BxcJwz
自己解決しました。

プロジェクトのソースをデフォルトから変える必要があるのかもしれません。
{$IFDEF UNIX}
cthreads,
{$ENDIF}
2024/05/11(土) 08:16:18.21ID:fN4sXTbp
ラズパイでというかLinux(Debian)での Lazarus ですよね?
GTK や QT ベースで普通にアプリ作れますよ。
2024/05/31(金) 12:03:18.67ID:AJG6Tz1O
Lazarus Release 3.4 - May 29, 2024, 09:38:42 am
The Lazarus team is glad to announce the release of Lazarus 3.4.
This is a bugfix release and was built with FPC 3.2.2.
2024/09/20(金) 13:00:12.04ID:qcL9NwXM
Rustってコンパイル遅い。
Delphi 言語はなぜこんなにコンパイルが速いのか
960デフォルトの名無しさん
垢版 |
2024/09/20(金) 21:29:23.48ID:CPyMSx6T
C/C++は近年のCPUの進化で速くなったが、Pascalみたいに変数の後に型宣言するとか、関数プロトタイプ宣言が無いとかは、1パスでコンパイル完了するための文法的な工夫。
2024/09/20(金) 22:26:32.07ID:98e3Ciwa
Turbo Pascalの変態的なコンパイル速度が懐かしい
x86アセンブラで記述されていてオンメモリコンパイルだったそうだけど、DOS時代のI/O速度であれかよって思った
2024/09/20(金) 23:33:43.55ID:W27RIytC
炎のコンパイラって言われてたもんな
2024/09/21(土) 01:25:35.67ID:YrJIgGEK
PascalはLL文法だからコンパイルが速かったと思ってる
TurboPascalはコンパイルが異常に速かった
F5押したら瞬時に実行されてた
もちろんコンパイルしてから実行されてるはずだが、CPUが386とかの時代にコンパイル時間を感じないとか、もはやオーパーツと言ってもいいかもしれないw
2024/09/23(月) 23:34:17.75ID:/NJ3vFEC
ちなみに俺が最初に Turbo Pascal に触れたのは Sharp X-1 の CP/M-80 上の Z-80 Turbo Pascal だったが
こんな貧弱な8ビット環境であるにもかかわらずスクリーンエディタ込みでオンメモリで作動し
快適にコーディング<->デバッグができるほどに爆速コンパイルだった
2024/09/23(月) 23:55:17.21ID:tiwXgKZ4
Read Writeの様なIOが、Cがライブラリー実装なのに対して、Pascalは言語仕様なのも大きい
Cでmain内に10行程度のコードを書いたとしても、#include <stdio.h>しただけで何千行というヘッダーファイルをパースする必要がある(ファイルも複数読む必要がある)
これは遅い
Pascalはコンソールやファイルに読み書きする程度なら余計な読み込みは要らなかったはず
2024/09/24(火) 10:56:15.98ID:ugZT4nhj
Turbo Pascal 6.0で初めて触れたんだけど、コンパイラが小さいexe単一ファイルでインラインアセンブラ含むコードのコンパイル、リンクまでしてるからあの開発者は良い意味で化物
標準ユニット込みでも物凄いサイズ小さかった記憶
2024/09/24(火) 15:47:09.01ID:lVbfF7GP
Turbo Pascalって、アンダースヘルスバーグだっけ?

delphiのインターフェース(IInterface)の明示実装やクラスとは異なる公開スコープを持たせられる作りも好き。
968デフォルトの名無しさん
垢版 |
2024/09/30(月) 23:08:06.65ID:kiCuXRCW
Lazarus 3.6が出ました.
2024/10/09(水) 08:54:10.50ID:AyxXMafE
Deno や Bun から Delphi や Lazarus で作った dll 読み込めるっぽいな。
2024/11/08(金) 18:55:05.89ID:eF4gB/Tn
Lazarus Release Candidate 1 of 4.0 - October 27, 2024, 09:34:20 am
2024/11/09(土) 11:36:02.31ID:KmaxpfiK
forum見ると4.0からUIも変わるのかな?
とりあえずはfpc 3.2.2推奨で3.2.3使うと再構築できないとか云々
2025/04/05(土) 12:21:44.45ID:Gviq4eZn
Lazarus Release Candidate 3 of 4.0 - March 25, 2025, 01:59:17 pm
2025/04/07(月) 00:29:15.74ID:81Lw1ltM
https://www.youtube.com/watch?v=IUzoajpEJeg
974デフォルトの名無しさん
垢版 |
2025/05/05(月) 21:29:15.36ID:+8iKHwJ7
Lazarus 4.0が出ました
https://forum.lazarus.freepascal.org/index.php/topic,71050.0.html
975デフォルトの名無しさん
垢版 |
2025/07/05(土) 11:41:26.06ID:wlPhJnc4
Lazarus 4.0
AIにアドバイスしてもらいながら macos と ubuntu24.04LTS にインストールしてみただけ・・みたいな感じで

・macos M1-manmini は macos sonoma14.7.6 Xcode 15.4 の組み合わせだと割とあっさり
・intelCPUのmacbookair 2017 は敗北・・スキルのある人なら大丈夫なんだと思う
・ubuntu24.04LTSも割とあっさり
・Windowsはきっと動くんだろうと思ってパス
976デフォルトの名無しさん
垢版 |
2025/07/23(水) 18:05:28.79ID:g64wXekY
Lazarus 4.2が出ました
https://forum.lazarus.freepascal.org/index.php/topic,71826.0.html
977デフォルトの名無しさん
垢版 |
2025/09/16(火) 11:36:00.51ID:4xybmvnI
lazarus4.2  日本語windows11にデフォルト設定でインストールしてみた 起動すると始めからメニュー等は日本語になってました
試しに昔々Delphi5で書いたプロジェクトをインポートしたら文字はSJISだったしwinapi使ってあったけど修正無しでそのままの動いた とわいえ文字列操作があるとSJIS-UTF8の変換とwcharの対応は要ると思う

AIによるとdelphi5-7のプロジェクトのインポートは親和性が高いそうです。最新のDelphiプロジェクトはダメみたい
2025/09/16(火) 20:51:30.36ID:jRpZrnge
Lazarus製のフリーソフトって何かある?
2025/09/19(金) 04:21:07.83ID:Nq42NZKA
LazPaint
980デフォルトの名無しさん
垢版 |
2025/09/29(月) 03:11:58.75ID:gRIxbkow
俺が自分のPCで使うためだけに作ったどうでも良いツール
981デフォルトの名無しさん
垢版 |
2025/10/07(火) 11:53:48.40ID:1INtyESS
977です delphi5のプログラムをインポートしたソースコードだけどソースそのものがsjis->utf8に変換されてた。メニュー等の文字だけを日本語化しただけじゃないみたい
 AIはdelphi用のコンポーネントも使えるかも?と言ってるのでちょっとイジってみようかと思う、いや思ってるだけですよ
2025/10/07(火) 18:15:23.51ID:PufELU/u
fpcで作成したコンソールアプリが実行時にEAccessViolationとなるのでfpcでソースのエラー位置を調べたら
ある関数の最後のendが示されて役に立ちませんでした
Lazarusに持って行ったら例外で停止さえしませんでした
Delphai6に持って行ってOSによる例外をデバッガが受け取るという設定にしたらやっと発生位置が特定できました

FPC/Lazarusではどうにもならないのでしょうか
Lazurusはちょっと古くて2.2.4です
983デフォルトの名無しさん
垢版 |
2025/10/07(火) 22:35:09.49ID:GcmYQjI+
>>982
プロジェクトオプションの最適化が有効になっているからでは?
「0.最適化なし」にして試してみては?
2025/10/08(水) 09:53:53.24ID:i2Vw4tqm
最適化がオンでもオフでも
Execution stopped with exit-code 1 ($0001)
というポップアップが出て終了してしまいます
エラー位置にカーソルは行ってくれません
デバッガはdefault debuggerでもGdbでも同じです
2025/10/08(水) 10:11:36.23ID:i2Vw4tqm
982で「例外で停止さえしませんでした」というのは嘘でしたstoppedだから停止はしていますね
でもどこで停止したのかがわかりません

fpcでは
fpc -glh -O- とかやってどの関数でエラーが発生したのかまではわかるのですが
986デフォルトの名無しさん
垢版 |
2025/10/08(水) 14:47:25.50ID:xHDBIHkx
fpcそのものからは離れますが
exet code が1でエラーなので例外停止したと読めます

ただコンソールアプリがさまざまな返り値を返すこと自体はエラーでも何でもなく普通のことだと私は理解しています
アプリの終了時に0を返せばいいのでは?

Cだと
int main()
{
printf("hello world");
return 0;
}

エラー位置が特定できないのはそもそもプログラムが終わっているからとも解釈できます。rezarusにexiecode=1のエラーを無視するみたいなのはないのでしょうか?

的外れでしたらすみません
2025/10/08(水) 21:55:59.60ID:i2Vw4tqm
>>986
985 に訂正して書きましたようにLazarusでもエラー停止はしています

デバッガにはエラー位置を特定してもらいたいという話です
Lazarus/FPCではEAccessViolationのエラーについてそれができないようでした
一方Delphi 6では同じソースでEAccessViolationについても停止してからIDE上でカーソルがエラー位置に飛びます
988デフォルトの名無しさん
垢版 |
2025/10/09(木) 07:09:23.25ID:l11UH+Dz
どうもお役に立てなかったようです
2025/10/12(日) 17:55:59.44ID:E5GJpTM9
987です
前回のプログラムは開発途中でもう残っていないのですが、EAccessViolationが発生する単純なプログラムで
今日改めてテストして見ました所Lazarus/FPCとも正しくエラー行を表示してくれました
お騒がせしてすみませんでした
前回は一体何だったのだろうか・・・

{$APPTYPE CONSOLE}
program test;
uses SysUtils;
var
 p: PInteger;
begin
 Writeln('Start');
 p := nil;
 p^ := 123;
 Readln
end.
990デフォルトの名無しさん
垢版 |
2025/10/13(月) 09:39:19.36ID:Jdg3EAgT
コンソールアプリの返り値が1なのでエラーだったと思いますが
書き込まれたソースですと返り値が指定されていません
よって返り値は不定なのでその度に結果が異なると解釈できないことはありません。
なので返り値を明示的に指定してその結果を比較されていかがでしょうか? 
 
以下はgrokに聞きました

Q)pascal(free pascal)を使用して、windows(dos)上で動作するコンソールアプリを作成します
そのコンソールアプリの返り値を指定するにはどうしたらいいですか

A) by grok
Free Pascalでは、プログラムの終了コードをHalt手続きやExitCode変数を使用して設定できます。以下に具体的な手順とサンプルコードを示します。

<<sample1>>
program ExitCodeDemo;
begin
WriteLn('プログラムが正常に終了しました');
Halt(0); // 終了コード 0 を返す
end.

<<sample2>>
program ExitCodeDemo;
begin
WriteLn('プログラムが実行中...');
ExitCode := 42; // 終了コード 42 を返す
end.
2025/10/14(火) 19:14:39.90ID:QTjOk1jf
>>990
989ですが、今となっては当初デバッガが動作しなかった理由はわかりません
その後簡単なテストプログラムで問題なくエラー行は検知されました
ちなみにFree Pascalのプログラムではエラーの時に返り値を設定する以外に特に返り値の指定は不要で、
正常終了すればゼロになります
992デフォルトの名無しさん
垢版 |
2025/11/12(水) 01:21:59.39ID:oQstHhSD
Lazarus 4.4が出ました
https://forum.lazarus.freepascal.org/index.php/topic,72707.0.html
2025/11/12(水) 09:15:18.55ID:JDphJLx0
バージョンアップする必要性を感じなくなって2.2.4のまま使っている
fpcはunicode不完全対応の3.2.2でずっと変わらないし過去作成したプログラムを修正する必要が発生するかもしれないのもいやだしね
レスを投稿する

レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況