【Delphi互換!?】FreePascal/Lazarus その2【GPL】
(クロス)オープンソースコンパイラ 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 >>171
clean up build 、0.9.31の機能でした。めんご FAQ 読みあさってみたけど、どうも Linux だと 6MB ぐらいにはなるらしいね。
予想はしてたけど、使ってなくても基本機能は入ってるとかで。
まあ実行ファイルのサイズはともかく、どこかに LCL のドキュメントないのかな。
とりあえず Delphi 6 のヘルプ見て、補完機能やソース探りながらやってるけど、
プラットホーム依存の実装がいくつかあるから vim(ctags) のタグジャンプが
あてにならなくてにんともかんともだ。 >>173
どこかに LCL のドキュメントないのかな。
>とりあえず Delphi 6 のヘルプ見て、補完機能やソース探りながらやってるけど、
>プラットホーム依存の実装がいくつかあるから vim(ctags) のタグジャンプが
>あてにならなくてにんともかんともだ。
もう見てるだろうけど、
ttp://wiki.lazarus.freepascal.org/Lazarus_Documentation/ja#LCL 一部見た。設定ファイルに使えそうな TXMLConfig のリンクがなくて悲しい。
ぐぐって何となく使い方わかったけど、イマイチな感じ。
まだ Linux プログラムの作法もよくわからんのだけどね。 プロジェクトのオプションでバージョン情報を埋め込めるけど、Linux でこれを取り出す方法ってあるの?
そもそも Linux のバイナリにそういう情報があるのかわからんけど、わざわざあんなオプションがあるってことは
使えるんじゃないかと思うんだけど。知ってる方教えてくだせい。 なんか変わった?
とりあえず Windows 版は大きな変更は見られない (小さな変更も見られないが)。
相変わらず IDE での日本語入力には難ありだな。 delphiで簡単な情報の管理システムを作っています。
初めてのpascal,delphiで苦戦しています。。。
簡単なコードでのプログラミングでないと自作したことを説明もできないくらいのレベルです。。
今回、レコード型の配列で個人データ(名前、生年月日、登録番号、住所、電話番号)を5人分、入れておきたいのですがエラーばかりでてしまい、全くできてません。
簡単なものでもサンプルでもなんでもありがたいのでご教授ください。
後のFormで検索したりして引き出せるようにする予定です。。
Lazarusをあつかってるスレだったので、場違いかもしれませんが質問させていただきました。 >>187
すいません。。苦戦してるのはLazarusです
ミスです。 Unit1で配列を作って、そこにデータを入れたんですけど、ほかのUnitにどうやったらデータを持ち越して表示できますか? >>189
配列を両方のユニットに共通なグローバル変数にするか、
他のUnitの関数のパラメータとして渡す
>>189
ほんとに初心者でいまグローバル変数について、調べて少しわかったのですが、ソースをのせるのでみてもらってもいいですか? ていうか、お前 Pascal 以前にプログラミング自体どの程度わかってんの?
本質をきちんと理解してればたかだか言語が変わったぐらいで
そんなにうろたえることはないと思うがな。
Delphi スレ行った方が親切な奴が多いかもな。 unit Unit1;
interface
var
xx: array of aa; <---------グローバル変数
implementation
function fun1(..);
begin
xx := ??;
end;
end.
--------------
unit Unit2;
interface
implementation
uses
unit1;
function fun2(..);
begin
yy := xx[3];
end;
end.
>>189
ほかのUnitに持ち越すっていうか、オブジェクト指向でやるだろ普通。
他の言語だとどういうのがわかるの? >>192
>>194
javaを大学一年時に授業でやってはいたのですが、本質をきちんとは理解できなくて
delphiじゃないだりとここを紹介されました
>>193
ありがとうございます。。
さんこうにさせていただきます >>195
うーむ。多分言語云々じゃなくてプログラミングの基本から
勉強した方が良いような。
「宣言したレコード型を別Unitで使いたいけど宣言が見つからない」のか
「そのレコード型を使った変数に別Unitからアクセスできない」のか。
何もわかってないと質問の内容がわからないので答えようもない。
とはいえサンプルソースが欲しいんだよね?
ttp://www1.axfc.net/uploader/File/so/71587
サクっと書いたので識者が見たらいろいろ問題あるかもしれんが
参考にはなるだろう。ちなみにレコード型と配列じゃなくて
クラス型とTListにした。その方がDelphiスレの情報とか参考に
しやすいし。 >>197
期間も1ヶ月で、ソフトが指定されています
基本が理解できてないのは十分承知です、、
サンプルをいただけただけでもまた進展がありそうで、ありがたいです lazarus指定とか
もしかして会社の研修かなんかか
もしそうなら人に聴かずに
一ヶ月寝ないで勉強するがよろし >>199
学校の課題です
しっかり理解しないとという気持ちはあるのですが、ほかの授業などとの両立や起源の問題で
時間はかけているのですがこの程度で。。 >>201
またお前か。
Pascal はユーザー少ない上にこういう腐ったのが結構いるんだよ。
運が悪かったね。頑張ってくれ。 まあでも運動が才能で必要であるようにプログラマにも才能が必要なのは事実 この程度で才能が必要とか笑わせんな
二本足で歩くのに才能が必要か? pstype=(man,woman)と自ら作成したのですが、これを文字列型でラベルに表示する変換方法ありますか? program HelloWorld;
uses typeinfo;
type
MyEnum = (HELLO, WORLD);
var
str1,str2:string;
pinfo:PTypeInfo;
begin
WRITELN('StringにEnumの名前を代入する方法');
WRITELN('要:"uses typeinfo;"');
pinfo:=TypeInfo(MyEnum);
str1:= GetEnumName(pinfo, Integer(HELLO));
str2:= GetEnumName(pinfo, Integer(WORLD));
writeln( str1,' ', str2 );
end. >>217
参考にさせていただきます
unit Unit9;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
StdCtrls,bookdate;
type
{ TForm8 }
TForm8 = class(TForm)
hj: TLabel;
procedure FormActivate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form8: TForm8;
implementation
uses Unit1;
{$R *.lfm}
{ TForm8 }
procedure TForm8.FormActivate(Sender: TObject);
begin
hj.Caption:='dgfhg';
end;
end.
こんなふつうにラベルに文字列を代入させてるつもりなのに表示されません。
どういった不具合が考えられますか? FormActivateをコピペして貼っただけじゃ実行されないよ interface uses部にtypinfoを追加(GetEnumName関数を利用するため)。
type下に pstype=(man,woman);//列挙型を宣言する。
TForm1にButton1、Button2、Label1を配置、及びButton1、Button2のクリックイベントを作成。
TForm1のprivate部に手続き宣言。
procedure Label1CaptionView(value: pstype);
implementation { TForm1 }下、手続き作成。
procedure TForm1.Button1Click(Sender: TObject);
var
seibetu : pstype;
begin
seibetu:= man;
Label1CaptionView(seibetu);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
seibetu : pstype;
begin
seibetu:= woman;
Label1CaptionView(seibetu);
end;
procedure TForm1.Label1CaptionView(value: pstype);
begin
Label1.Caption := GetEnumName(TypeInfo(pstype),Ord(Value));
end; >>218
オブジェクトインスペクタにおける設定で、「Form8」のイベントOnActivateが設定されていないとか。
設定されていなければ、OnActivateの項目には何も表示されていないはずで、イベントが起こりません。
項目欄をクリックすれば、FromActivateを選択できるはず。 一昨年のうちにver1.0になるとか言ってたけど、全然進展ないね。
もうオワコンなのか? >>222
情報弱者は大変ですね
ftp://ftp.freepascal.org/pub/lazarus/snapshots/ >>223
バカじゃねーの?
1.0どころか未だに0.9.30とか31じゃねーか
1.0なんて何十年かかることやら・・・ >>224
英語できないジジーは黙ってエンバカに貢いで炉や >>225
あん?0.9.31より新しいモンがどこにあんだよ、情強さんよ? 1.0未満のソフトなんていくらでもあんじゃん。
死ねよ ホントにバカだなw
1年前が0.8で今が0.9.30ならわかるが、
1年前から進化してないのが問題なんだろーが ばかはおまえだろ。開発者の癖にSVNとかも知らんとは。
プログラマ向いてないよ。100% 2011/2/15 時にRevision:29547で、今日Revision:35366なのに進化してないとかワロス 1.0とかいう冠さえ付けば安定するとでも思ってるのだろうか。 Double Commander って Lazarus 製なんやね。すばらしい。 カタカナ反乱で訳わからん
ドイツ人がネオジュームと発音してんのに日本人はネオジムと言ってる
いっそ滅びろ日本 FPC NEW FEATURES 2.6.0 に載ってる
Advanced Record とか Class Helper って
使えるようになってるんだよね…? ごめん自己解決して本当にごめん
{$modeswitch advancedrecords}
書く必要あったのね >>185のような人のために「Lazarusで作るデータベースアプリケーション」
みたいなのをブログでやろうかと思うんですが、そういうのって需要あるかな?
では「LazarusとFirebirdで作るC/Sアプリケーション」をブログで書きますね。
10年以内に。 Lazarus 0.9.30.4 released 何が変わった?いい加減日本語を入力できるようになってほしいんだが。 IDEで日本語入力できるようにしたってさ
ttp://bugs.freepascal.org/view.php?id=13140 というか英語できないやつは翻訳料だと思って
黙ってエンバカにお布施しとけ。 いつまで経ってもバカの翻訳進んでないじゃん。
ヘルプ殆ど英語だし、重いし… いや別に英語読めるし、C#みたいなゴミも憶える気無い。
それから、日本語入力できるようになったことと英語のスキルは全く関係無い。 >>239
ttp://wiki.lazarus.freepascal.org/Firebird_embedded
ここ翻訳するとかどう? 自分のところでも無事入った。(ちょっとてこずったが)
いれたのは、Lazarus-1.1-36647-fpc-2.6.1-20120407-win32.exe
エディタもちゃんと動く。 ttp://www.facebook.com/takeda.matsuki
ジャカルタの EL' Stone Studio 勤務 DelphiのIntraweb(VCL for Web)に該当するものってLazarusにあるのかなあ?
確かあったような気がするけど・・・あんまりバギーなやつだとダメだしね 十分使い物になるレベルに達しているね。日本語での情報は皆古過ぎて誤解されるかな。 XE3 のごたごたを考えると、ここで一気に本家を乗り越えられるかな? マクロとかの情報が少なくて、
コンパイル後、出力された実行ファイルを指定したパスにコピー
とかいう動作をするにはどう設定すればいいのか、とかくだらん事の解決に数ヶ月かかった。 昨日調べたらwikiにちゃんと書いてあったのは気のせいなのかな 29 Aug 2012 - Lazarus 1.0 release available for download