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

■ このスレッドは過去ログ倉庫に格納されています
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
281デフォルトの名無しさん
垢版 |
2012/10/24(水) 23:51:45.28
それ、Lazarusでgcc使ってるの?w
2012/10/25(木) 06:35:28.41
もはや意味不明。PascalじゃないならLazarusの意味なし。
2012/10/25(木) 10:07:58.08
CBuilder 見たいのが欲しいってことじゃね?
2012/10/25(木) 14:35:49.20
gcc は GNU Compiler Collection であって GNU C Compiler ではない。
そして gcc は Pascal をコンパイルすることができる。
揚げ足取りね。
285デフォルトの名無しさん
垢版 |
2012/10/25(木) 14:42:09.49
(*´・∀・)(・∀・`*)ヘー
2012/10/25(木) 20:12:40.19
そもそもc++が糞だからな。
2012/10/28(日) 13:25:22.37
Lazarus 1.0.2 をベースにGtk2とQt4版のソースコードエディタで
インラインでの日本語入力ができるように改造したものを公開しました。
詳しくは下記サイトを参照してください。
ttp://lazarus.matrix.jp
2012/10/28(日) 14:54:13.41
>>287
乙。Bugtrackerに登録すると親切な外人がマージしてくれるかもよ
2013/02/14(木) 04:29:48.44
Delphi XE をインストール済みなんですが
Lazarus を同じパソコンにインストールしても問題は起きませんか?
2013/02/14(木) 06:32:14.51
Android対応のFreePascal


February 13th, 2013

The FreePascal team is pleased to announce official support for native Android targets in the trunk SVN repository.
http://www.freepascal.org/";>http://www.freepascal.org/
2013/02/14(木) 20:42:52.59
http://www.freepascal.org/
2013/02/18(月) 13:17:07.30
>>289
今のところウチでは問題は起きてない。どっちもたいして使ってないけど。
そもそも干渉する要素が見当たらない気もするがね。
2013/04/21(日) 22:43:31.20
本家のRAD Studio とかが XAMLみたいに書いてあったから
これも対応してるのかと思って入れてみたけど違ってた。
けどフリーでいきなりRAD の画面が出てきて楽そうだなと思った。
2013/04/22(月) 00:00:16.83
てす
2013/04/26(金) 19:02:19.27
オープンソースの Lazarus 製 CAD
ttps://sourceforge.net/projects/zcad/
296デフォルトの名無しさん
垢版 |
2013/04/28(日) 18:08:47.57
飛び入りでスマソ

DELPHIで常駐プログラムや文字の回転はwindowsAPIでしていたんだけど、
uses部分は書き換えるにしても、LazarusではwindowsAPIのコードがそのまま走るの?
2013/04/29(月) 05:02:28.44
>>296
「走る」ってどういう意味?
Lazarusは実行環境なわけじゃないから質問の意味が分からん
298デフォルトの名無しさん
垢版 |
2013/04/29(月) 06:40:46.78
LazarusでFree PascaLのコードを書いて実行させると言う意味。

(Lazarusインストールしたら、Free Pascalも自動的にインストールされる)
2013/04/29(月) 07:00:18.57
よくわからんがFPCでコンパイルできるソースならコンパイルできるし
それがWindowsで動くコードなら当然動くよ
300デフォルトの名無しさん
垢版 |
2013/04/29(月) 07:04:30.62
>>299
スマン。macで使っても動くのだろうか?
301デフォルトの名無しさん
垢版 |
2013/04/29(月) 07:13:59.32
>>299
例えば、文字の回転やプログラムタスクトレイに常駐させようとした場合。

DELPHI → Windows APIコードを書く。

MacでLazarusとFreePascal → Windws API コードの部分はそのまま使える?

との質問です。もちろん、usesなどの少しの手直しは必要かと思います。
2013/04/29(月) 08:35:59.12
>>301
ますますよくわからんがそのWindowsAPIがMacで使えるなら使えるよ。
でもこれってLazarusとは何の関係もないよね。
303デフォルトの名無しさん
垢版 |
2013/04/29(月) 12:54:13.80
>>302
Lazarus/Free Pascalの売りは、いつでもどこでもコンパイルじゃなかったっけ?

Windows API は マイクロソフトのWinsdows OSのコードで、基本的にはWindowsでしか使えない。
MacでLazarus/Free pascalで使おうとすればそれに対応する類似品が準備されているか?エミュレートような機能が無いと使えない。

文字の回転やプログラムタスクトレイに常駐はGUIプログラムになるのでLazarus無しでは、
基本的にできない。(自分でFree PascaLなどでGUIライブラリまで作れば別だが困難を極める)
2013/04/29(月) 13:05:49.88
Lazarus=GUIとかのライブラリ等含めた環境がWOCAなのであって、FPCはあくまでただのコンパイラだし
WinAPIをエミュレートするのはWineにでも任せれ
305デフォルトの名無しさん
垢版 |
2013/04/29(月) 13:09:39.28
>>304
避けれたいいが、DELPHIでプログラム書く場合でも頻繁にWindows APIで各必要が出てくる。
気持ち的に言えば、DELPHIやFree PascalにWindows APIに相当するコマンドがあれば一番いい。

WIndows APIなんて書きたくない
2013/04/29(月) 16:40:55.77
それ言うならDelphi使いたくないってのが正解じゃね?

Delphiは実質Windows専用みたいなもんだし、
マルチプラットフォームで作りたいなら
マルチで動く他の言語を使ったほうがいい。
2013/04/29(月) 18:34:06.86
>>303
ごめん、何いってるか分からんわ。
正直そのプログラミングレベルでマルチプラットフォームアプリは無理かと。
2013/04/29(月) 18:37:17.05
というかなぜ「Windows」APIが「Mac」で動くと思うのか?
なぜ「いつでもどこでもコンパイル」がAPIレベルでの互換性の話になるのか?
まったく分からんのよ
309デフォルトの名無しさん
垢版 |
2013/04/29(月) 18:47:43.47
>>307
その程度の理解力・想像力で、プログラミングはムリかと。
2013/04/29(月) 18:59:07.59
>>309
え?理解に勤めたつもりなのにそれはないでしょ。
しかも無料ソフトなんだから試せばいいだけの話にもかかわらず付き合ったのに。
311デフォルトの名無しさん
垢版 |
2013/04/29(月) 20:14:27.98
>>308
はぁー プログラム組んだこともロクにないのね。
話の論点もLazarusに行ったり、APIに行ったり定まらないし。

で、Form上で文字を回転させるにはどうしたら良いの?
タスクトレイに常駐させようとしたらどうしたら良いの?

この質問?納得させる?
312デフォルトの名無しさん
垢版 |
2013/04/29(月) 20:15:29.17
>>311
◯ この質問に答えて?納得させきれる?
2013/04/29(月) 20:15:42.65
> で、Form上で文字を回転させるにはどうしたら良いの?
Delphiには無理

> タスクトレイに常駐させようとしたらどうしたら良いの?
Delphiには無理
314デフォルトの名無しさん
垢版 |
2013/04/29(月) 20:18:17.93
>>313
はぁーーー わかったわかったあんたはプログラムしたことない。
文字を回転やタスクトレイに常駐なんてあたりまえのようにみんなしている。

おれもDELPHIで常駐プログラムを作っている。
2013/04/29(月) 20:18:22.28
いい加減、DelphiとかPascalから足を洗ったほうがいいのに。

デスクトップ用言語としても使われてないし、
ウェブ用言語としても使われてない。
オープンソースでも使われてないし、
クローズドでも使われてない

まだ移行できてない奴が残っているだろうけど
今はもうCOBOLよりも将来性無いと思うぞ。
2013/04/29(月) 20:20:39.86
>>314
Macにタスクトレイなんて無いけど、
どうやって?
2013/04/29(月) 20:21:17.80
無いならタスクトレイを作ればいい。
318デフォルトの名無しさん
垢版 |
2013/04/29(月) 20:21:41.97
>>316
はぁー DELPHIははwindows版だけど
319デフォルトの名無しさん
垢版 |
2013/04/29(月) 20:23:30.30
>>317
MacはDockがある
2013/04/30(火) 05:52:12.18
>>318
だったら最初からそういえよw

答えてあげよう。

「スレ違いなので以下へどうぞ。
くだすれDelphi(超初心者用)その55
ttp://toro.2ch.net/test/read.cgi/tech/1353119767/」
2013/04/30(火) 07:26:52.40
>>315
メジャーならいいってわけじゃないからなw
日本人全員が国民車トヨタプリウスじゃつまらんだろ?
2013/04/30(火) 08:17:47.47
Delphi の需要なんていまどこに残ってるんだろう
大昔に Delphi で頑張ってた連中はとっくに別のに乗り換えてるだろ
2013/04/30(火) 19:04:55.13
>>322
えーと、ここはDelphiスレじゃないよ
2013/05/04(土) 11:22:59.22
>>322
Janeもあふも相変わらずDelphiで開発されてますが?
2013/05/04(土) 11:36:49.51
SkypeもまだDelphiみたいで安心
2013/05/06(月) 18:20:39.16
実家から帰ってきて覗いてみるとなんだかよくわからんことになっているが、
タスクトレイに関しては Additional に TTrayIcon というコンポーネントがあるよ。使ったことないけど。
それと、ここの住人は揚げ足とって喜ぶだけのアホばっかりだから結局は自分で調べた方が早いよ。
2013/05/06(月) 20:05:52.83
>>326
そんなこと聞いてません。Macの事を聞いているのですが。
328デフォルトの名無しさん
垢版 |
2013/05/06(月) 20:35:33.08
>>326
そんなこと聞いてます。さんくす。
Windows APIのコードをTTrayIconに置き換えるのですね。

ついでに、教えてください。
DELPHIでwindowsAPIで仕方なく行なっていたコードは、Lazarusではコンポーネントが殆ど?準備されていると思ってもいいのですか?
2013/05/06(月) 23:07:16.06
>>328
> Windows APIのコードをTTrayIconに置き換えるのですね。
いや、前述のとおり使ったことないんでコンポーネントについては調べてちょうだい。
Delphi XE とかにも付いてるけどな。

> DELPHIでwindowsAPIで仕方なく行なっていたコードは、Lazarusではコンポーネントが殆ど?準備されていると思ってもいいのですか?
それはわからん。
Windows 専用アプリで API を直接使えるかいうことなら、Lazarus も LCL の内部では結局 API 呼んでるはずなんで使えるんじゃないかな。
試してみたら MsgWaitForMultipleObjects とか候補に出てきたから大抵の API は定義されてるんじゃない?
Delphi とは違うコンポーネントもいろいろあるから、自分で調べるしかないね。

自分はせっかくの Lazarus なんで、Windows でも Linux でもビルドできるソースしか書かないんで
Windows の API 直接使ったことはない。ていうかどっちかというと Linux 寄りかな。
330デフォルトの名無しさん
垢版 |
2013/05/06(月) 23:10:47.29
>>329
さんくす。
2013/05/07(火) 06:05:33.59
結局Macの話は無しかよw
2013/05/07(火) 18:26:55.29
>>326
あの最初の質問を読んだだけで俺はすべて悟ったよ、という感じがムカつくなお前
2013/05/07(火) 22:21:25.02
このScalaの時代になんでPascal命なんだ? なんかメリットあるの?
2013/05/07(火) 22:33:05.79
>>332
それだけの読解力があればまずまずだよ。
335デフォルトの名無しさん
垢版 |
2013/05/08(水) 01:07:35.49
なんかそのものずばりの回答ないから俺が答えとく。

>MacでLazarusとFreePascal → Windws API コードの部分はそのまま使える?

使えません。WindowsAPIはWindows上でしかコンパイルできない。
それはWindowsユニットがWindows用Lazarusにしか用意されてないから。

FPCがWindowsでもMacでもLinuxでもコンパイルできるということと
その中で使われてるソースが互換しているかどうかは別問題。
どれでもコンパイルできるソースにしたかったらそういうソースを書くこと。
どういう所に注意すればよいかは本家サイトのドキュメントに書いてある。

> DELPHIでwindowsAPIで仕方なく行なっていたコードは、Lazarusではコンポーネントが殆ど?準備されていると思ってもいいのですか?

基本的にはDelphiでWindowsAPIを使っていたコードはLazarusでもWindowsAPIを使う
と考えた方が良い。ただしQtとかGtkでやる場合はそれぞれの機能にアクセスできる
からWindowsAPIを使わなくてもできる場合もあるかもね。

俺は、WindowsAPIをソース上に直書きしないようにしている。
使う時はコンポーネントか別クラスにしておいて、そこだけOS別に書き分ける。
コンパイラ指令でも良いかもしれないけど、見辛いしね。
2013/05/08(水) 06:06:10.34
>>333
ttp://www.youtube.com/watch?v=HGYSLgtYx-U
2013/05/08(水) 08:17:35.09
糞エディタでリファクタリングすんなw
2013/05/08(水) 16:41:38.57
リファクタリングはエディタの機能じゃない罠w
339デフォルトの名無しさん
垢版 |
2013/05/09(木) 02:15:31.42
>335
さんくす
2013/06/04(火) 18:26:30.91
Turbo Pascal の公式リファレンスが Archive.org にあった。英語版だけど。
http://archive.org/search.php?query=turbo%20pascal%20AND%20collection%3Aadditional_collections
2013/06/04(火) 18:59:51.24
ゴミだね > 340
342デフォルトの名無しさん
垢版 |
2013/07/03(水) NY:AN:NY.AN
過疎
2013/07/03(水) NY:AN:NY.AN
linuxのutf-8環境で書いたプログラムをshift-jisのWinに移植しようとしたけど書き方ミスったな
GUIでstringのCaptionとかをwidestringで管理しようとして出し入れで問題があったのかそこだけ文字化けする
型をstringにすれば解決したけどlinuxでは普通に動くから気づかなかった
全部書き換えるの面倒だなあ
2013/07/07(日) NY:AN:NY.AN
>>343
どういう場面か分からないから確かかどうか分からないけど、Winは過去
互換性から、かってに文字列のコーディングを変更して読み込むのが
あるから、そこで引っかかっているのかも。

こういうのって結構やっかいだよね。
2013/07/08(月) NY:AN:NY.AN
ボチボチ勉強中なんだけど、

ttp://wiki.lazarus.freepascal.org/Multithreaded_Application_Tutorial/ja

ここみると極力マルチスレッドはやめれみたいなことが書いてある。
重い処理の応答改善にこそマルチスレッディングは有効だと思うんだけど。
重い処理してても最低限キャンセルは受け付けるべきで、実際にちゃんと作られた
アプリケーションはそうなってるんだけど、これはマルチスレッドの実装じゃないんだろうか。
2013/07/08(月) NY:AN:NY.AN
>重い処理してても最低限キャンセルは受け付けるべきで、実際にちゃんと作られた
>アプリケーションはそうなってるんだけど

マルチスレッドじゃなくても実装は可能

それよりマルチスレッドを避けろという議論の本質は
スレッド切り替えのオーバーヘッドが無駄ということ
2013/07/09(火) NY:AN:NY.AN
overlaped バンバンというのもしんどいなあ
2013/07/10(水) NY:AN:NY.AN
俺はむしろイベント処理の順番が狂う ProcessMessages は使うべきじゃないと思ってるんだけどな。
2013/09/14(土) 12:40:26.02
保守
2013/09/18(水) 01:32:41.05
Delphiはいいとして
Lazarusで開発されたソフトって世の中にあるの?
2013/09/18(水) 01:41:42.87
Lazarus は開発環境そのものなので。
FPC/*CL で書かれたものはあるの?っていみなら Lazarus そのもの
2013/09/18(水) 06:37:24.97
LazarusのHPみればわかることをわざわざ質問するアフォ
2013/09/18(水) 18:32:28.47
せっかく新しい仲間が増えようってのに
アフォとか書くのは良くないと思うな
2013/09/19(木) 04:05:48.65
>新しい仲間が増えよう

沈みゆく船に乗り込むアフォだろ?
2013/09/19(木) 06:17:51.49
アフォはイラネ
356デフォルトの名無しさん
垢版 |
2013/09/24(火) 16:31:53.62
企業向けのWindows向けシステムをLazarusで組んでる人っている?

DelphiスレでLazarusの名前が出てたのでインストールして
まだ一寸しか使ってないのですが
個人的には取りあえずDBGridで(MEMO)って出るのが取りあえず面倒だと感じてますが
他に問題になりそうな部分ありますか?
2013/09/24(火) 16:34:54.99
delphiに比べて実行時パフォーマンスはある程度は落ちると思います。
2013/09/24(火) 18:25:21.98
確かにキビキビ感は無いですね
マシンパワー上がってるからあまり感じないけど
古いマシンだと更にモッサリするのかな
2013/09/24(火) 19:36:08.15
Lazarusで作ったアプリってそれ単体で動くの?外部ライブラリとかインストールされてないとだめなの?
2013/09/24(火) 21:36:10.96
>>359
SQLiteとか簡単なDBでも使ってれば外部ライブラリを同梱しないとダメですね
ttp://wiki.freepascal.org/Lazarus_Database_Tutorial/ja

例えばフォームにボタンを張り付けただけのような単純なものはexe1本で配布可能です
サイズが巨大なのでstripで小さくしてから配布した方がいい
2013/09/25(水) 03:07:26.86
Delphiヘタコイタ時だけ活気づくな
Kylixの時もちょっと活気あったわ
2013/09/25(水) 10:59:59.77
>>356
問題を自分で解決できない人は素直に.NETとかの方がいいと思う。
2013/09/25(水) 13:35:47.86
>>362
ご忠告ありがとう御座います、問題が出れば当然自分で解決しますよ、
質問した趣旨は問題を既に経験した人に
「こんな事があったよ」と言う意見を出して頂ければと言う事です
2013/09/25(水) 14:44:47.26
業務用だったら一番の問題はIMEのON/OFFの制御かな
2013/09/25(水) 15:25:30.62
初心者はマルチプラットフォームを意識すると混乱しがちだから
Windows専用にするのがよいと思う
2013/09/25(水) 16:44:10.39
Win8とMSIMEの組み合わせ固有の問題かも知れないが
日本語を入力しようとすると高確率でフリーズする
2013/09/25(水) 17:04:35.95
IMEのON/OFFはこれでどうだろうか。Delphi3の頃のものだけど。
Unit MyLib;
Interface
uses
WinTypes, WinProcs, Dialogs, sysUtils, Imm, Forms, StrUtils, Classes;

procedure KanjiOn(Handle : THandle);
procedure KanjiOff(Handle : THandle);

implementation

procedure KanjiOn(Handle : THandle);
var
imc : HIMC;
begin
imc := ImmGetContext(Handle);
ImmSetOpenStatus(imc,true);
ImmReleaseContext(Handle, imc);
end;

procedure KanjiOff(Handle : THandle);
var
imc : HIMC;
begin
imc := ImmGetContext(Handle);
ImmSetOpenStatus(imc,false);
ImmReleaseContext(Handle, imc);
end;

end.
2013/09/25(水) 19:52:36.55
本家に実装してもらったら良いように思うが
マルチプラットフォーム前提だから実装できないのかね
2013/09/26(木) 04:37:10.55
>業務用だったら一番の問題はIMEのON/OFFの制御かな

まだそうなの? FireMonkey、IME 管理出来ないけど業務で使えるって言う人はいるぞ
2013/09/26(木) 08:30:20.48
>>368
中の人に東アジア人がいないから後回しっぽい
2013/09/26(木) 14:27:07.24
Pascal使いは何故かロシア人が多いよな
学校の授業か何かであるのかね
2013/09/26(木) 15:46:31.84
ソースプリーズ
2013/09/27(金) 16:37:58.45
我が家の環境だとデバッグで実行するとフリーズして動かなくなる事がある
ブルー画面に落ちるわけでもないがタスクマネージャーも出せない
[CTRL][ALT][DEL]も効かない

因みにWin8(64bit)にてLazarus 1.1.99pre
2013/09/27(金) 18:26:01.74
デバッグで実行とはなんぞ?
2013/09/29(日) 08:22:10.08
leak viewer ってどこにあんの?
376デフォルトの名無しさん
垢版 |
2013/09/30(月) 00:48:31.15
ちょいちょいLazarusで業務システム作ってるよ、
業務システムに多いレポートはPowerPDFを使ってます(Lazarus版の方ね)
フリーのIDEだとLazarusはダントツで高性能
2013/09/30(月) 11:45:59.62
高性能でも若いプログラマはpascalわからないし
webアプリがメーンだから確実に沈む船だ
2013/09/30(月) 15:58:11.38
あっそ。.NETにしとけ。
2013/10/01(火) 12:01:30.07
.NET .NET って言うけど、あんなのもう廃れだよw
2013/10/01(火) 15:48:50.34
日本語がどマイナーな言語なんだから
日本人のプログラム言語もどマイナー言語でいいのだよ
2013/10/02(水) 03:32:07.53
Lazarus64bit版使ってる人いる?
32bit版と何が違うの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。