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

レス数が950を超えています。1000を超えると書き込みができなくなります。
2009/12/25(金) 02:46:18
(クロス)オープンソースコンパイラ FreePascal [i386/68K/PPC/ARM/SPARC]
http://www.freepascal.org/

オープンソース開発ライブラリ等 [IDE/GUI環境 Lazarus]
http://www.lazarus.freepascal.org/

FreePascal/Lazarusのメーリングリスト(Pascalにホエロ!)
ttp://www.freeml.com/lazarus

Q:これで作ったソフトは自動的にGPLになるの?

A:制限付き LGPL だから、自分が作ったソースは GPL にする必要は無い
例え FreePascal 付属のライブラリにリンクしていても GPL にはしなくて良い
http://www.freepascal.org/faq.html#general-license
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
レスを投稿する

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

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