喫茶XRAYトップページ

[スレッド全体
]

[1340] Re4:Lazarus:その2返信 削除
2007/8/8 (水) 19:27:48 taka
落とし穴 その1

{$mode objfpc}

を宣言しないと
 integerがsmallintになります。

落とし穴 その2
{$H+}
を宣言しないと
 stringが string[255]になります。
 stringを出し入れする関数が大ダメージを受けます。
 :ref.pdf p.23 : 3.2.3
 :prog.pdf p.20 : 1.1.20 $H or $LONGSTRINGS : Use AnsiStrings

   Delphiでは、デフォルトは {$H+} です。

 {$mode objfpc}
 なんかは、Delphiにそんなのナイヨと怒られます!!
 [エラー] Unit1.pas(): 間違ったコンパイル指令 : 'mode'

同じユニットをDelphiでも使いたいヨ!
ということで
【まとめ】
ソース(pas,pp)に含める指令

{$IFDEF FPC}
  {$mode objfpc}
  {$H+}
  // これがないと FPCで integerが1バイトになるので注意
  // これがないと FPCで string[255]になるので注意
{$ENDIF}


------------------
  {$mode objfpc}をソースに書きたくない場合は
fpc.cfg 又はプロジェクトのオプションでも
変更できます。

  {$H+}は、
Delphiのコンパイラのでは  dcc32 -d$H+ みたいなことができるのですが
fpcでは? どうでしょう?? 探しましたがわかりません。


------------------
ついでに
FreePascal2/doc/prog/progap7.html
も必見です



[1341] Re5:Lazarus:その2返信 削除
2007/8/9 (木) 11:59:08 Null
▼ takaさん

詳細な情報ありがとうございます。

当方、顧客のPCが壊れたため手持ちの機器を貸し出すことに成りました。
先方でosを入れ替えると言うことなのでLinux機を出しました。

こちらの手元にかえって来るのは、今月末の予定だと言われました。

かえって来たら、一から仕切り直しです。...Linuxの再インストからです。
ウっ、きつい!!。

と、言うことで今は「おあずけ」状態です。

何故か、「ひらがな」の多い文に成りましたね?。


[1343] Re4:Lazarus:その2返信 削除
2007/8/12 (日) 19:41:37 taka
▼ Nullさん
> こちらの手元にかえって来るのは、今月末の予定だと言われました。
>
> かえって来たら、一から仕切り直しです。...Linuxの再インストからです。
> ウっ、きつい!!。

HDDが1台余分にあれば
raid機能を利用すると簡単?に復元できますよ
ソフトウェアraidしたことないので詳細は不明・・・(笑

 追記
  いや HDDが1台余分にあれば、貸す前に
 HDD付け替えればいいだけなので raidの必要性はありませんね・・・
 猛暑でぼけていました。


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82