忍者ブログ

初心者IT本部

いったい僕らの21世紀はどこに行くんだろう、で、ITってなに?

<< | 2024/05 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | >>

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。






PAR導入

製品版のVC++を使ってのperlccが残されているが、おいておいて、
PARを試す。

http://hamachiya.com/junk/memo_PAR.html
を参考にして設定

ActivePerl 8.6.6ではppmがうまく使えなかった。
(GUI版。プロキシ設定もしたが。)

8.6.6に落とすと、ppmが使えた。

PR





ActivePerlとVC++でperlcc

Activeperl,VisualC++(9.0 Express Edition)でperlのexe化に挑戦。
perlccを使う。

下記のように出るが、コンパイラはcygwinのgccを使っているとの
ことだろうか。VCの方のを使わないとwindows上で動かないはず。



C:\home\go-yamamoto\work>perlcc make_hash_list3.pl
Set up gcc environment - 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
Starting compile
 Walking tree
 File::Spec::Win32 saved (it is in File::Spec's @ISA)
 File::Spec::Unix saved (it is in File::Spec::Win32's @ISA)
 DynaLoader saved (it is in Digest::SHA1's @ISA)
 Exporter saved (it is in ActiveState::Path's @ISA)
 Prescan
 Saving methods
 Can't locate object method "IVX" via package "B::NV" at C:/Perl/lib/B/C.pm line
 650.
 CHECK failed--call queue aborted.

コンパイラにcygwinのgccが選択されているでうまくいかないのかと思いgccをuninstall
それでもSet up gcc environment - 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
の一行が抜けただけで同様のエラーがでる。

どうようのエラーがperlのバグとして報告されていたが、解決されていないもよう。
そしてperl5.10ではperlccは外されている。
http://www.nntp.perl.org/group/perl.perl5.porters/2006/05/msg113019.html

perlccはあきらめるかー。






ActivePerlで連想配列をリファレンス渡しするには

 Perlで、連想配列をリファレンス渡しするサンプルで、下記のようになっている
ものが多いがうまくいかない。


my %hash;

function(\%hash);

while( ($key,$value)=each(%hash) ){

 
}


sub functio(){
 my($hash)=@_;

 %$hash=....

}


 v5.8.6 built for MSWin32-x86-multi-threadでは、function中で、
%$hashとするとsyntax errorとなる。$$hashとすると、連想配列
として使えた(key,valueの追加)。function呼出し後、呼び出し元でも参照できた。

 eachに渡す際は%$hashでエラーがでなかった。不思議。。。。






AdminControlMenu: AdminMenu | NewEntry | EditComment | EditTrackback

忍者ブログ [PR]