金本ã¨ã‚‚ã†ã—ã¾ã™ã€‚
大分時間ãŒãŸã£ã¦ã—ã¾ã£ã¦æç¸®ãªã®ã§ã™ãŒã€
以å‰ã€AIXã®64ビットモードã§ã®ã‚³ãƒ³ãƒ‘イルã«ã¤ã„ã¦ã€
拾ã£ã¦ã„ãŸã ã„ãŸä»¶ã«ã¤ã„ã¦èª¿æŸ»ã—ã¾ã—ãŸã€‚
07/05/02 ã« Nobuyoshi N.[email protected] ã•ã‚“ã¯æ›¸ãã¾ã—ãŸ:
(ä¸ç•¥)
Please give me some time to make another patch? I have noticed
the linker_flag variable you made. I will make new patch against
ruby_1_8 branch or trunk. Since I will test on various AIX versions,
it will take a little…
ã‚‚ã¡ã‚ã‚“å•題ã‚りã¾ã›ã‚“。調ã¹ã¦ã„ãŸã ã‘れã°ã‚りãŒãŸã„ã§ã™ã€‚
çµå±€ã®ã¨ã“ã‚ã€ç§ãŒä»¥å‰é€ã‚‰ã›ã¦ã„ãŸã ã„ãŸconfigure.inã¸ã®
パッãƒã§ãƒªãƒ³ã‚«ã‚’直接呼ã¶ã‚ˆã†ã«ã—ãŸã¨ãã®ãƒãƒ§ãƒ³ãƒœãŒåŽŸå› ã§ã—ãŸã€‚
大変申ã—訳ã‚りã¾ã›ã‚“。
#32ビットモードãªã‚‰å•題ãªã„ã§ã™ã€‚ã‚ã¨AIX5.2ã§ã¯èµ·ãã¾ã›ã‚“ã§ã—ãŸã€‚
ã¨ã‚Šã‚ãˆãšã€1.8ã¨1.9両方ã®ãƒ‘ッãƒã‚’添付ã—ã¾ã™ã€‚
ã¾ãŸã€1.9ã®æ–¹ã¯jsonライブラリã®generator.cã®string.hã®ä½ç½®ãŒAIXã§
ä¸éƒ½åˆãŒã‚ã£ãŸã®ã§é †ç•ªã‚’変ãˆãŸã®ã¨ã€.cã®ãƒ•ァイルã§c++スタイルã®
コメントãŒä½¿ãˆã‚‹ã‚ˆã†ã«CFLAGSã«-qcpluscmtã¨ã„ã†ã®ã‚’åŠ ãˆã¦ã‚りã¾ã™ã€‚
大元ã®å•題ã§ã‚ã£ãŸæ‹¡å¼µãƒ©ã‚¤ãƒ–ラリãŒå‘¼ã¹ãªã„ã®ãŒè§£æ±ºã§ãã¦ã„ã¾ã™ã€‚
% ruby -v -retc -e ‘p $:, 0xffffffff.class’
ruby 1.9.0 (2007-08-13 patchlevel 0) [powerpc-aix5.3.0.0]
[“/home/kanemoto/r19xlc64/lib/ruby/site_ruby/1.9”,
“/home/kanemoto/r19xlc64/lib/ruby/site_ruby/1.9/powerpc-aix5.3.0.0”,
“/home/kanemoto/r19xlc64/lib/ruby/site_ruby”,
“/home/kanemoto/r19xlc64/lib/ruby/1.9”,
“/home/kanemoto/r19xlc64/lib/ruby/1.9/powerpc-aix5.3.0.0”, “.”]
Fixnum
(64ビットãªã®ã§0xffffffffãŒFixnumã¨ã„ã†ã“ã¨ã§ã€‚。。)
ã‚ã¨ã€AIXã§–enable-sharedをデフォルトã«ã—ã¦ã¿ãŸã®ã§ã™ãŒã€
何ã‹staticã«ã—ãŸã»ã†ãŒã„ã„ç†ç”±ãªã©ã¯ã‚りã¾ã™ã§ã—ょã†ã‹?
ã“ã®patchã§å¯¾å¿œã§ãã‚‹ã®ã¯ã€çµå±€ç’°å¢ƒå¤‰æ•°ã§OBJECT_MODE=64ã¨ã„ã†ã®ãŒ
è¨å®šã•れã¦ã„ã¦IBM XL C Compilerを使ã£ã¦ã„ãŸã¨ãã ã‘ã§ã€
gccã«ã¯å¯¾å¿œã§ãã¾ã›ã‚“。gccã¯OBJECT_MODEãªã‚“ãžçŸ¥ã‚‰ãªã„ã®ã«ã€
ä¸ã§å‘¼ã°ã‚Œã‚‹OS付属ã®ãƒªãƒ³ã‚«ãŒ64ビットã§å‹•ã„ã¦ã—ã¾ã„ã¾ã™ã€‚
ã¾ãŸã€ä»¥å‰
環境変数 OBJECT_MODE=64 ã§ä¸€åˆ‡åˆè²¡è¨å®šä¸è¦ã«ãªã‚‹ã‚ˆã†ãªã®ã§ã™ãŒã€
rbconfig.rb ã«ç—•è·¡ãŒæ®‹ã‚‰ãªã„ã¨å¾Œã€… extconf.rb ã™ã‚‹ã¨ãã«ãƒãƒžãƒªãã†ã«æ€ã„ã¾ã™ã€‚
ã¨ã„ã†è¦æœ›ãŒã‚ã£ãŸã®ãŒæ°—ã«ãªã£ã¦ã„ãŸã®ã§ã€ä¸¡æ–¹ã‚’解決ã§ãるよã†ã«
ãŸã‚ã—ã«–enable-aix64ãªã‚‹ã‚ªãƒ—ションを作ã£ãŸã‚Šã—ã¦ã¿ãŸã®ã§ã™ãŒã€
gcc ã« -maix32を渡ã—ã¦ã‚‚ã€ã‚¢ã‚»ãƒ³ãƒ–ラã«-a32を渡ã—ã¦ãれãªã„ã®ã§ã€
OBJECT_MODE=64ãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã«å¯¾å¿œã§ãã¾ã›ã‚“。
ä»®ã«-Wa,-a32ã¨ã‚ªãƒ—ションをã¤ã‘ã¦ã‚‚ã€asã«-a32を渡ã—ã¦ãれã¾ã›ã‚“ã§ã—ãŸã€‚
ãã ãã ã‹ã„ã¦ã™ã¿ã¾ã›ã‚“。
ã“れã¯ã“れã§ä½•ã‹ã†ã¾ã„æ‰‹ãŒæ€ã„ã¤ã„ãŸã‚‰åˆ¥ä»¶ã¨ã—ã¦æŠ•ç¨¿ã•ã›ã¦ã„ãŸã ãã¾ã™ã€‚
よã‚ã—ããŠé¡˜ã„ã„ãŸã—ã¾ã™ã€‚