How to build pari-2.1.6 and gp2c-0.0.3pl3
pari-2.1.6とgp2c-0.0.3pl3をbuildする[2004.12.04]
pari-2.1.6とgp2c-0.0.3pl3がreleaseされたので、さっそくbuildしてみる。
対象となるOSは、NetBSD-1.6.2/i386である。
■GNU readline-4.3をbuild/installしておく。
■pari-2.1.6をbuild/installする。
- ソースを展開する。
$ tar zxf ~/install/pari-2.1.6.tgz
$ cd pari-2.1.6
- ./Configureファイルを以下のように変更する。
NetBSD-1.6.2への対応とGNU readline-4.3(/usr/gnu/lib/readline.a)の情報を追加する。
293c293
< rep='os2 freebsd cygwin linux hpux aix osf1 solaris sunos nextstep concentrix irix';
---
> rep='os2 freebsd netbsd cygwin linux hpux aix osf1 solaris sunos nextstep concentrix irix';
329c329
< nextstep|cygwin*|linux|freebsd|os2|gnu)
---
> nextstep|cygwin*|linux|freebsd|netbsd|os2|gnu)
401c401,403
< readline_enabledp="nil"
---
> #readline_enabledp="nil"
> readline_enabledp="t"
> readline=/usr/gnu/lib
548a551
> /usr/gnu/include/readline\
837c840,841
< OPTFLAGS=-O3
---
> # OPTFLAGS=-O3
> OPTFLAGS=-m486 -O2
870c874
< cygwin*|linux-i?86|freebsd-i?86)
---
> cygwin*|linux-i?86|freebsd-i?86|netbsd-i?86)
942c946
< freebsd)
---
> freebsd|netbsd)
1009c1013
< gnu-*|*-alpha|solaris-*|linux-*|freebsd-*)
---
> gnu-*|*-alpha|solaris-*|linux-*|freebsd-*|netbsd-*)
1044c1048
< freebsd-*) DLLDFLAGS="-Bshareable -x" ;;
---
> freebsd-*|netbsd-*) DLLDFLAGS="-Bshareable -x" ;;
1057c1061
< freebsd|linux|sunos|solaris) DLLDFLAGS="$DLLDFLAGS -lc -lm";;
---
> freebsd|netbsd|linux|sunos|solaris) DLLDFLAGS="$DLLDFLAGS -lc -lm";;
- ./config/arch-osnameファイルに以下を追加する。
13a14
> netbsd) arch=i386;;
./Configureを実行する。
$ CFLAGS="-m486 -O2" ./Configure --prefix=/usr/gnu --host=i386-netbsd
./src/kernel/ix86/l0asm.cをNetBSD ELFに対応させる。
39c39
< #if defined(__EMX__) || defined(__DJGCC__) || defined(__GO32__) || (defined(linux) && !defined(__ELF__)) || defined(__386BSD__) || defined(__NetBSD__) || (defined(__FreeBSD__) && !defined(__ELF__)) || defined(NeXT) || defined(__CYGWIN32__) || defined(__MINGW32__)
---
> #if defined(__EMX__) || defined(__DJGCC__) || defined(__GO32__) || (defined(linux) && !defined(__ELF__)) || defined(__386BSD__) || (defined(__NetBSD__) && !defined(__ELF__))|| (defined(__FreeBSD__) && !defined(__ELF__)) || defined(NeXT) || defined(__CYGWIN32__) || defined(__MINGW32__)
./src/gp/gp.cの関数add_historyのprototype宣言を変更する。
47a48
> /* H.Nakao
48a50,51
> */
> extern int add_history(const char*);
./src/gp/gp_rl.cの関数filename_completion_function,username_completion_functionのprototype宣言を変更する。
45a46
> /* H.Nakao
47a49,51
> */
> extern char *filename_completion_function(const char *text,int state);
> extern char *username_completion_function(const char *text,int state);
./Onetbsd-i386/Makefileを変更する。
RLLIBSに-ltermcapを追加する。CFLAGSに-m486 -O2を追加する。
14c14,15
< CFLAGS = -DGCC_INLINE -Wall -Wno-implicit -fomit-frame-pointer
---
> #CFLAGS = -DGCC_INLINE -Wall -Wno-implicit -fomit-frame-pointer
> CFLAGS = -m486 -O2 -DGCC_INLINE -Wall -Wno-implicit -fomit-frame-pointer
75c76,77
< RLLIBS = -L/usr/gnu/lib -lreadline
---
> #RLLIBS = -L/usr/gnu/lib -lreadline
> RLLIBS = -L/usr/gnu/lib -lreadline -ltermcap
makeする。
$ make all
installする。
$ su
# make install
# exit
$ make clean
■gp2c-0.0.3pl3をbuildする。
$ tar zxf ~/install/gp2c-0.0.3pl3.tar.gz
$ cd gp2c-0.0.3pl3
$ ln -s ../pari-2.1.6 pari
$ CFLAGS="-m486 -O2" ./configure --with-pari=~/pari-2.1.6 --prefix=/usr/gnu --host=netbsd-i386
$ make
$ su
# make install
# exit
$ make clean
Last Update: 2005.06.12 |
H.Nakao |