Homeに戻る  一覧に戻る 

How to build pari-2.1.7 and ruby-1.8.3


pari/gp-2.1.7とruby-1.8.3をbuildする[2005.09.23]


pari/gp-2.1.7とruby-1.8.3がreleaseされたので、さっそくbuildしてみる。
NetBSD-2.0/i386上でのbuildの手順は、いつもと同じである。
ただし、pari/gp-2.1.7は修正量がやや多いので、今回は個々のファイルの差分をまとめて、patchを作成した。これで少しだけ作業が簡単になる。

[pari/gp-2.1.7]
  1. pari-2.1.7.tgzを展開する。
    $ tar zxf ./pari-2.1.7.tgz
    $ cd pari-2.1.7
    
  2. README,INSTALL.txtを読む。

  3. ./Configure,./config/arch-osname,./src/kernel/ix86/l0asm.c,./src/gp/gp.c,./src/gp/gp_rl.cにpatchを当てる。
    $ patch < pari-2.1.7-netbsd-i386.patch
    
  4. configureする。
    $ CFLAGS="-mcpu=i586 -O3" ./Configure --prefix=/usr/gnu --host=i386-netbsd
    
  5. ./Onetbsd-i386/Makefileにpatchを当てる。
    $ patch < pari-2.1.7-Onetbsd-i386-Makefile.patch
    
  6. makeする。
    $ gmake gp
    $ gmake doc
    
  7. gp-dynを起動してみる。
    $ ./Onetbsd-i386/gp-dyn 
    Reading GPRC: /home/his/.gprc ...Done.
    
                      GP/PARI CALCULATOR Version 2.1.7 (released)
                           i386 running netbsd 32-bit version
                    (readline v1.0 enabled, extended help available)
    
                           Copyright (C) 2002 The PARI Group
    
    PARI/GP is free software, covered by the GNU General Public License, and 
    comes WITHOUT ANY WARRANTY WHATSOEVER.
    
    Type ? for help, \q to quit.
    Type ?12 for how to get moral (and possibly technical) support.
    
       realprecision = 28 significant digits
       seriesprecision = 16 significant terms
       format = g0.28
    
    parisize = 128000000, primelimit = 500000
    (15:22) gp >  quit
    Good bye!
    
    
  8. make installずる。
    $ sudo bash
    # gmake install
    # exit
    
  9. make cleanする。
    
    $ gmake clean 
    

[gp2c-0.0.4pl1]
  1. gp2c-0.0.4pl1.tar.gzを展開する。
    $ tar zxf gp2c-0.0.4pl1.tar.gz
    $ cd gp2c-0.0.4pl1
    
  2. README,INSTALLを良く読む。

  3. configureする。
    $ CFLAGS="-mcpu=i586 -O3" ./configure --prefix=/usr/gnu --host=netbsd-i386 --with-pari=~/pari-2.1.7 --with-paricfg=/usr/gnu/lib/pari/pari.cfg
    
  4. makeする。
    $ gmake
    
  5. make installする。
    $ sudo bash
    # gmake install
    # exit
    
  6. make cleanする。
    $ gmake clean
    
[ruby-1.8.3]
  1. ruby-1.8.3.tar.gzを展開する。
    $ tar zxf ruby-1.8.3.tar.gz
    $ cd ruby-1.8.3
    
  2. READMEを良く読む。

  3. configureする。
    $ CFLAGS="-mcpu=i586 -O3" ./configure
    
  4. makeする。
    $ make
    
  5. make installする。
    $ sudo bash
    # make install
    # exit
    
  6. rubyを起動して、versionを確認する。楕円曲線による素因数分解プログラムnum.rbを実行する。問題なし。
    $ ruby -v
    ruby 1.8.3 (2005-09-21) [i386-netbsdelf2.0]
    $ ruby ./num.rb
    c60=216613513765708687178959939782445929702196520191348629414679
    k=lcm{1,..,15000}=3465491291225695180038116678552743309703409681700873547555672223328299522481269393362754275928061313385733557710669386861039952152922382156681557310056338212817181382028459239782200648083527384675822675421448077773370569995542567701130971007245209177142064913630846041932902754310037121465784570000868752466125867376524908691680249381018458050552231584982325897735225745665356783682177543408086329841666855316590070396928758283758225421001095886250248208646740070482522573568505991160765256520994646172719925332641710338934569443004867705969430842053939793190390640451723054932777734203060849878207669095527369619595533467596401618734934811755107807581225226320139266388473984282403937122914372335601130208124545433727427407339545773213104264016990731006749193077148571790662738270902454433902530676397933401934134788254337802196944527724452277794272639637595700735187854180252871860842052947178120211004466700093817461734883321009197940106856946462271384550163048144483645839111962323670309751019764987881197593846680893832492912059353262338847422247613230156114766208626879537005392514793979984015788685882359433710633464500000349577954520200610282231040500386894923787174826029263149594833206039548087888230503062312731425761142759874194868500928343917179390334426253929113556369698791714143405874409792172602463330982444230858602541876111969594861699719986403023121470851922745695243993147237143503010769358790307077311176915540563091307903606277493286539143018266399796879422504132491471481059377934657028133569730091410897453204188098835154022545681060386919851998871503874539048609298762567517915748865297933919323550287939815484863222968830139639644063968027609303833834211366926364881593526807029051040550838287844734856579541402163382325870174421839987669381603465157010604933721098592313234040142731213944680538328916848328308771958615673929743687293033592434335676036818941283608038955850558493029618940615567329861748743848506795835269500622559759244422820987581895110411092677582666767606101643387858399794854558352784610504699720417824556918009542119369438491296158559747107046491136743987562520810396211984962876971234025351744479597615709174184250581494278132300818629325400884670225466770175273195794952517918403925995223930811952004849436891849720877547868780303608503917571904870764956562223153933439969037901600065528699034422248962388583368485167279223914153691396145326420314013665297589064921393644667731585938205741007626463812311945361422089337035047459713953342424737751421155889419546738024641377239485091636004658755370004644109401575467646186462109132891336133112386767547896891107003182894019185660220761125443779381654145184594968881521714724212128458689585884039379058889590523404207461513968722463894208085345555363049915832519387173464900114706486418033466582513330701217442831835346204149673161705876387201286045798218651842884278239114049966147425734636153971806016315711100149264518774740608389203027898722375194149869192357049086769139053266090869969518657417888672405783611566197708615848881795972048210066062596380025699609187749795446437034580409842295227374355155475420863988096315339923666794177050443953961388503282765335342106415031382702272698057537760304637949716590239739081178147997804221347641734131969644400550139710328790754643958230123835211038193252369159284585978958402068036269362808271391086501199913976736802745272290486387301735468769036162088028930764264565550488479829129593294529666578584786429246752849833066897598601827664348617241404144205121208936611614972183145034504974937919560185611993777802169093570550185447891712485386905364260604390479421450945349849106713733414715045688375638015675493235158749260574373551497834533045415018847128163337545476243953918585363483014590799807357737589157501634483556484159851382126491045493000344202742189648720616102930745134901012704146726568829625184969640275767831308810973375193089825655345544674211462632215214767261735324914425766949050149557351979300076531126231182704791670904708694335502606984569075459174069831737675327826194478478256491043705506307023856898789110509130197751842401747706899964871975469252385394478009106677645581303428415917495943293589953635475945297666813822244158544826641022543530307936856258886675587297842184920629859951940034924290023384391831171503012634187824300380830521448686154591349220934183518298432841974722028146316817401410564283636683321688514025221023474389460023756821995826715489947079956879800929896613858075140859314539611791652182916943271516393764572294199637147291776944365224479527225529368395391438514422756415101064931598601401574618850755247046653485805984662643976346727540857146973293573760757462254512780398869045717546628397919646545684547210499613391037601170186073431603318957980935407741308195499744639983608471888433001026771766579437618125521734580087954699950046787658980170412663386096827229469426847314500725647257311369715018071421948923121194836751814049580949757512087619670770893158609580390913346988385481458864663375960041219863166970642577330630355769414565684558324678848045335335987034919691345943244567060937458105901251694105503733552636674731440368581784583294252822913670448347377229789005404812090016737663730621028390509379587858107698631682086095349670610700308592187982855537679295300984425078676921122062596224143012936300160605368640034776486076128196711965032559662777682549710296925275961276328884265177913691433875013826337048868845191250219521616521320119041438898741923614259346952720017554637491332316451333054939528499829612932094606993559826756295443988503674348369240978306639036547499055066823540085990093664705427911676219757458113008422193940870402677125605145816645038804872053676531489485394709606168555288180228996263445659857285931755591941107754957223764502371559011029582315168149774306732911637167040539711087413763762634649516463926525610913045706369341015852588234913804273682353461232406276984806310921099953882169676938198838925691740716340276060061220007334619823896174225045427487572618667907605345361729204031074246840157302168941405499690299363469993019721692916221630566474898475024686456896441299713922442307427202009052448101704766481485897932500341844700174034764189017989712878535483812469393879735900330270787470083702122691718429926880583635991819307175045813167163865247257209661180172008520556462588186919840731319547632290489662425205568022983719674628492406038309012620897867044275388407931761567345998733380001088514924700789072825927208840075102939197499926151556121318400000
    time=3.581188[s]
    y^2=x^3+205x+(-641)
    k(3 1)=(60272956433838849161 nil)
    time=192.670509[s]
    
  7. make cleanする。
    $ make clean
    



Last Update: 2005.10.09
H.Nakao

Homeに戻る[Homeに戻る]  一覧に戻る[一覧2005に戻る]