debianã§MySQL with sennaã®ããã±ã¼ã¸ãä½ã£ã¦ã¿ã
debian lennyãã¤ã³ã¹ãã¼ã«ãã¦ã¿ã¾ãããdebianã¯éå»ã«ä¸åº¦è§¦ã£ããã¨ããã£ã¦ãã以æ¥ã§ããã¾ã sargeãåºã¦ããªãã£ãé ã ã£ãã¨æãã¾ãã
FreeBSDã¨ãªãã¨ãªãä¼¼ã¦ãæãããã®ã§ãããæå°æ§æã§ã¤ã³ã¹ãã¼ã«ããã¨ã»ãã¨ã«ã¹ãããªãã¦ã¦ããã§ããã
ããã§æ©éããããã¤ã³ã¹ãã¼ã«ãã¦ããã®ã§ãããsennaããã¤ã³ãã£ã³ã°ããMySQLãã¤ã³ã¹ãã¼ã«ãããã¨ãã¦ãã¡ãã£ã¨æéåãã¾ãããã½ã¼ã¹ããå ¥ãã¦ãã¾ãã°æ©ãã®ãããããªãã§ããã»ã»ã»ã
sennaã¯ã½ã¼ã¹ããã¤ã³ã¹ãã¼ã«ããã®ã§ãããã©ããsennaãªMySQLããã±ã¼ã¸ãä½ãã¨ãä¾åé¢ä¿ã¨ãã§å¼ã£ããã£ã¦ãã¾ãã¾ããã
dpkg-shlibdeps: failure: no dependency information found for /usr/local/lib/libsenna.so.0 (used by debian/mysql-client-5.0/usr/bin/mysqltest_embedded). dh_shlibdeps: command returned error code 512 make: *** [binary-arch] ã¨ã©ã¼ 1
åãããªãã£ãã®ã§ãsennaã®ããã±ã¼ã¸ãä½ã£ã¦ã¿ã¾ãã
ãããåèã«ãã¾ããã
|| Not Found ||
## dh_makeã¨ããããã±ã¼ã¸ãä½ãã³ãã³ããå ¥ãã # aptitude install dh-make $ tar zxvf senna-1.1.4.tar.gz $ cd senna-1.1.4 ## -fã§ã½ã¼ã¹ããã±ã¼ã¸æå® $ dh_make -f ../senna-1.1.4.tar.gz ## ããã±ã¼ã¸ã®ç¨®é¡(single binaryãé¸æ) > Type of package: single binary, multiple binary, library, kernel module or cdbs? > [s/m/l/k/b] s ## 次ã«ä½æãããdebianãã£ã¬ã¯ããªã®ä¸ã«ããã ## debina/rulesãç·¨éãã¾ãã ## ä»åã¯mecabã使ããªãã®ã§ãconfigureã®å¤ã«è¿½è¨ãã¾ããã $ vim debian/rules > ./configure $(CROSS) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs" --with-mecab=no ## ããã±ã¼ã¸ãä½æ $ dpkg-buildpackage -rfakeroot ## æåããã°debãã¡ã¤ã«ãåºæ¥ãã®ã§ããã®ã¾ã¾ã¤ã³ã¹ãã¼ã« # dpkg -i ../senna_1.1.4-1_i386.deb
次ã«ãããåèã«ãã¦ãMySQLã®ããã±ã¼ã¸ãä½ã£ã¦ã¿ã¾ããè¨äºã®å
容ãã¡ãã£ã¨å¤ãããã§ãä»ã®ãã¤ã³ãã£ã³ã°ãããã§ã¯autotoolsãªã©ã¯ä¸è¦ã§ä¸æ°ã«configureãå®è¡ã§ããããã§ãã
$ mkdir ~/mysql-server-5.0 $ cd ~/mysql-server-5.0 $ apt-get source mysql-server-5.0 # apt-get build-dep mysql-server-5.0
ããã§ã«ã¬ã³ããã£ã¬ã¯ããªå
ã«ã½ã¼ã¹ããã±ã¼ã¸ãå±éããã¾ãã
次ã«dpatchãä½ãã¾ãããã®åã«sennaã®ãã¤ã³ãã£ã³ã°ãããããã¦ã³ãã¼ããã¾ãã
ããããããããè½ã¨ãã
ダウンロード - Tritonn - SourceForge.JP
$ cd mysql-dfsg-5.0-5.0.51a $ dpatch-edit-patch patch 99_senna 95_SECURITY_CVE-2009-2446.dpatch ## ããã§ãããä½æç¨ã®ã·ã§ã«ã«èªåçã«å ¥ãã¾ã ## ãã£ã³ã»ã«ããæã¯ãexit 230ã¨æããªãã¨åæ ããã¦ãã¾ãã®ã§æ³¨æ ## å ã»ã©è½ã¨ããããããå½ã¦ã $ patch -p1 < ~/msyql-server-5.0/tritonn-1.0.10-mysql-5.0.51a.diff $ find . -name '*.rej' $ find . -name '*.orig' -exec rm {} \; $ exit
ããã§dpatchãä½æããã¾ããä½æããdpatchã®æ å ±ãæ¸ãè¾¼ã¿ã¾ãã
$ echo "99_senna.dpatch" >> debian/patches/00list ## configureã«--with-sennaã追å ãã $ vim debian/rules > --without-ndb-docs \ > --with-senna'
åèãµã¤ãã®ã¾ã¾å®è¡ããã¨ã次ã«debuildãããããã§ããã以ä¸ã®ãããªã¨ã©ã¼ãåºã¦ãã¾ãã¾ãã
$ debuild -rfakeroot -us -uc ## ãããªã¨ã©ã¼ãåºã¦éä¸ã§æ¢ã¾ã£ã¦ãã¾ã configure.in:2981: required file `debian/Makefile.in' not found configure.in:2981: required file `debian/defs.mk.in' not found configure.in:2981: required file `debian/control.in' not found make[1]: *** [Makefile.in] ã¨ã©ã¼ 1 make[1]: ãã£ã¬ã¯ã㪠`/home/hogehoge/mysql-server-5.0/mysql-dfsg-5.0-5.0.51a' ããåºã¾ã make: *** [build-stamp] ã¨ã©ã¼ 2 dpkg-buildpackage: failure: debian/rules build gave error exit status 2 debuild: fatal error at line 1319: dpkg-buildpackage -rfakeroot -D -us -uc failed
dpatchãä½ãéã«ãconfigure.inãæ»ãã¨æ¸ãã¦ãã£ãã®ã§ããããããæ»ããªãã§ããã¨ã¨ã©ã¼ãåºãäºãªãã§ãã¾ããã
## ãããå®è¡ããªã $ cp ~/mysql-server-5.0/mysql-dfsg-5.0-5.0.51a/configure.in .
次ã«ãã«ãã¯éã£ãã®ã§ãããã©ããã¦ããã¹ããéãã¾ããã§ããã»ã»ã»ãã¨ããããããã¹ããããªãããã«ãã¦åé¿ãã¾ããã
$ DEB_BUILD_OPTIONS=nocheck debuild -rfakeroot -us -uc
ãã®ã¾ã¾ã§ã¯ãlibsennaã®ä¾åã§ã¨ã©ã¼ã«ãªãã¾ããã®ã§ãdebian/shlibs.localãã¡ã¤ã«ã«ä»¥ä¸ã®ããã«æ¸ãè¾¼ã¿ã¾ãã
libsenna 0 senna (>= 1.1.4)
åãããã«debuildãã¾ããã失æãã¦ããå度å®è¡ããã¨ã¨ã©ã¼ã«ãªã£ã¦ãã¾ã£ãã®ã§ãæåããããç´ãã¾ããã
æåããã¨ä»¥ä¸ã®ãããªãã¡ã¤ã«ãã§ãã¾ãã
libmysqlclient15-dev_5.0.51a-24+lenny2_i386.deb libmysqlclient15off_5.0.51a-24+lenny2_i386.deb mysql-client-5.0_5.0.51a-24+lenny2_i386.deb mysql-client_5.0.51a-24+lenny2_all.deb mysql-common_5.0.51a-24+lenny2_all.deb mysql-server-5.0_5.0.51a-24+lenny2_i386.deb mysql-server_5.0.51a-24+lenny2_all.deb
ããªãããã¸ãã§ããã»ã»ã»ã½ã¼ã¹ããå ¥ããã»ãã楽ã ã£ãããã