GRASS CVS source code¤Î¥³¥ó¥Ñ¥¤¥ë

¡¡°Ê²¼¤Ï¡¢»ä¤¬´ÉÍý¤¹¤ëLinux¥·¥¹¥Æ¥à¤ÇGRASS¤Î¥½¡¼¥¹¤ò¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë¤ò¹Ô¤Ã¤¿¤È¤­¤Î¼ê½ç¤Ç¤¹¡£
Fedora Core£³µÚ¤Ó£´¾å¤Ç¼Â¹ÔºÑ¤ß¤Ç¤¹¡£²¼µ­¼ê½ç¤ÇÌäÂ꤬½Ð¤¿¾ì¹ç¤Ï¡¢¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ÇÌäÂê¤ò³Îǧ¤·¤Æ¡¢³Æ¼«¤ÇÂн貼¤µ¤¤¡Ê¼ÁÌä¤ò夤¤Æ¤â¤ªÅú¤¨¤·¤«¤Í¤Þ¤¹¡Ë¡£

£±¡¥proj¥é¥¤¥Ö¥é¥ê¤Î¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt
wget -nc ftp://ftp.remotesensing.org/proj/proj-4.4.9.tar.gz
tar xvfz proj-4.4.9.tar.gz
cd proj-4.4.9
CFLAGS="-O2 -mtune=i686 -Wall" LDFLAGS="-s" ./configure
make
make install

£²¡¥GEOS¥é¥¤¥Ö¥é¥ê¤Î¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt
wget -nc http://geos.refractions.net/geos-2.1.4.tar.bz2
tar jxvf geos-2.1.4.tar.bz2
cd /opt/geos-2.1.4
CFLAGS="-O2 -mtune=i686 -Wall" LDFLAGS="-s" ./configure
make
make install

£³¡¥AVCE00¡ÊArc/Info (binary) Vector Coverage Read/WriteÍѡˤΥ³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt
wget -nc http://avce00.maptools.org/dl/avce00-1.3.0.tar.gz
tar xvfz avce00-1.3.0.tar.gz
cd /opt/avce00-1.3.0
make
cp avcimport /usr/local/bin
cp avcexport /usr/local/bin
cp avcdelete /usr/local/bin
cp avctest /usr/local/bin
cp ex_avcwrite /usr/local/bin
cp avc.a /usr/local/lib

£´¡¥E00compr¡ÊArc/Info Export (E00) file Read/WriteÍѡˤΥ³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt
wget -nc http://avce00.maptools.org/e00compr/e00compr-0.5.tar.gz
mkdir e00compr-0.5
cp e00compr-0.5.tar.gz e00compr-0.5
cd /opt/e00compr-0.5
tar xvfz e00compr-0.5.tar.gz
make
cp e00compr.a /usr/local/lib
cp e00conv /usr/local/bin

£µ¡¥¶¦Í­¥é¥¤¥Ö¥é¥ê¤Î¥Ñ¥¹ÀßÄê
echo "/usr/local/lib" > /etc/ld.so.conf.d/local_lib.conf
ldconfig

£¶¡¥gdal¥é¥¤¥Ö¥é¥ê¤Î¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt
wget -nc http://www.gdal.org/dl/gdal-1.3.0.tar.gz
tar xvfz gdal-1.3.0.tar.gz
cd /opt/gdal-1.3.0
CFLAGS="-O2 -mtune=i686 -Wall" LDFLAGS="-s" ./configure
make
make install

£·¡¥GRASS¤ÎCVS Code¤Î¼èÆÀ
£±¡Ë¥ê¥Ý¥¸¥È¥ê¤Î´Ä¶­ÀßÄê¤È¥í¥°¥¤¥ó
export CVSROOT=:pserver:grass-guest@intevation.de:/home/grass/grassrepository
cvs login
¥Ñ¥¹¥ï¡¼¥É¤òʹ¤«¤ì¤ë¤Î¤Ç¡Ögrass¡×¤ÈÆþÎÏ¡ÜENTER
£²¡ËCVS¥½¡¼¥¹¤Î¼èÆÀ
cd /opt
mkdir experiment
mkdir stable
mkdir old
#grass5.4¤ÎCVS¥½¡¼¥¹¤Î¼èÆÀ
cd /opt/old
cvs -z3 checkout -r releasebranch_5_4 grass
mkdir /opt/old/grass-build
#grass6.1CVS¤Î¥½¡¼¥¹¤Î¼èÆÀ
cd /opt/experiment
cvs -z3 checkout grass6
#grass6¤ÎCVS¥½¡¼¥¹¤Î¼èÆÀ
cd /opt/stable
cvs -z3 checkout -r releasebranch_6_0 grass6

£¸¡¥GRASS¤ÎCVS Code¤Î¥³¥ó¥Ñ¥¤¥ë¡¦¥¤¥ó¥¹¥È¡¼¥ë
#grass5.4¤Î¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt/old
mkdir grass-build
cd /opt/old/grass-build
Fedora Core3¤Î¾ì¹ç
CFLAGS="-O2 -mtune=i686 -Wall" ../grass/configure --with-glw --with-proj --with-motif --with-cxx --with-blas --with-lapack --with-freetype --with-freetype-includes=/usr/include/freetype2 --with-lapack --with-gdal=/usr/local/bin/gdal-config --with-nls --with-odbc --enable-largefile
Fedora Core4¤Î¾ì¹ç¡Ê²¼°Ì¸ß´¹¤Î³«È¯´Ä¶­¤â¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ëɬÍפ¬¤¢¤ë¡Ë
CC="gcc32" CXX="g++32" FC="g77" ../grass/configure --with-glw --with-proj --with-motif --with-cxx --with-blas --with-lapack --with-freetype --with-freetype-includes=/usr/include/freetype2 --with-lapack --with-gdal=/usr/local/bin/gdal-config --with-nls --with-odbc --enable-largefile
make
make install
²¼°Ì¸ß´¹¤Î³«È¯´Ä¶­¤Î¥¤¥ó¥¹¥È¡¼¥ë¡§yum install compat-gcc-32 compat-gcc-32-c++ compat-gcc-32-g77

#grass6¤Î¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt/stable/grass6
CFLAGS="-O2 -mtune=i686 -Wall" ./configure --with-glw --with-proj --with-motif --with-cxx --with-blas --with-lapack --with-freetype --with-freetype-includes=/usr/include/freetype2 --with-lapack --with-gdal=/usr/local/bin/gdal-config --with-nls --with-odbc --with-lfs --with-mysql --with-mysql-includes=/usr/include/mysql --with-mysql-libs=/usr/lib/mysql --enable-largefile
make
make install

#grass6.1¤Î¥³¥ó¥Ñ¥¤¥ë¡õ¥¤¥ó¥¹¥È¡¼¥ë
cd /opt/experiment/grass6
CFLAGS="-O2 -mtune=i686 -Wall" ./configure --with-glw --with-proj --with-motif --with-cxx --with-blas --with-lapack --with-freetype --with-freetype-includes=/usr/include/freetype2 --with-lapack --with-gdal=/usr/local/bin/gdal-config --with-nls --with-odbc --with-lfs --with-mysql --with-mysql-includes=/usr/include/mysql --with-mysql-libs=/usr/lib/mysql --enable-largefile
make
make install

¢¨Linux¥¤¥ó¥¹¥È¡¼¥ë»þ¤ËÄɲ乤٤­¥é¥¤¥Ö¥é¥êÅù¡Ê³«È¯¥é¥¤¥Ö¥é¥êÅù¤âɬÍסË
blas
lapack
unixODBC, unixODBC-devel
tcl, tcl-devel
tk, tk-devel
postogresql, postgesql-devel
fftw, fftw-devel¡Ê¥¤¥ó¥¹¥È¡¼¥ëCDÆâ¤Ë¤Ï¤¢¤ê¤Þ¤»¤ó¡£FC3 or 4ÍѤÏfedora extras¤Ë¤¢¤ê¤Þ¤¹¡£Â¾¤Ï¥Í¥Ã¥È¤Çõ¤·¤Æ²¼¤µ¤¤¡Ë
¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Ç¥é¥¤¥Ö¥é¥ê¤ÎÉÔ­¤¬½Ð¤¿¾ì¹ç¡¢yum¥³¥Þ¥ó¥É¤Ê¤É¤Ç¥é¥¤¥Ö¥é¥êÅù¤òÄɲ䷤Ʋ¼¤µ¤¤¡£Æäˡ¢*-devel´Ø·¸¤Ï¡¢Ëؤó¤ÉOS¤Î¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤»¤ó¤Î¤Ç¡¢¸ÄÊ̤˥¤¥ó¥¹¥È¡¼¥ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

¢¨¥¤¥ó¥¹¥È¡¼¥ë¥á¥â
£±¡ËFedora Core¾å¤Çnviz¤¬µ¯Æ°¤·¤Ê¤¤¡Ê¾ì¹ç¤¬¤¢¤ë¡Ë¡£
Fedora Core¤ÎMESA¥é¥¤¥Ö¥é¥ê¤ÎÌäÂê¤Î¤è¤¦¤Ç¤¹¡Ê¥°¥é¥Õ¥£¥Ã¥¯¥É¥é¥¤¥Ð¤ÎÌäÂê¤Î¤è¤¦¤Ç¡¢¥·¥¹¥Æ¥à¤Î¥Á¥Ã¥×¤Ë¤è¤êɬ¤º¤·¤âÌäÂ꤬ȯÀ¸¤¹¤ëÌõ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡Ë¡£
°Í¸´Ø·¸¤«¤éɸ½à¤Î¥é¥¤¥Ö¥é¥ê¤Ïºï½ü¤Ç¤­¤Ê¤¤¤Î¤Ç¡¢»ä¤¬¹Ô¤Ã¤¿²ò·èºö¤Ï²¼µ­¤Î¤È¤ª¤ê¤Ç¤¹¡£
­¡MESA¤Î¥Û¡¼¥à¥Ú¡¼¥¸¡Êhttp://www.mesa3d.org/¡Ë ¤«¤éStable Release¤Î ¥é¥¤¥Ö¥é¥ê¤ò¥À¥¦¥ó¥í¡¼¥É
­¢¥Û¡¼¥à¥Ú¡¼¥¸¤ÎCompilation/Installation¤Ë ½¾¤Ã¤Æ¡¢
²òÅࡧ¡¡tar xvfz MesaLib-6.2.tar.gz
¥³¥ó¥Ñ¥¤¥ë¡§¡¡make linux-x86
¥¤¥ó¥¹¥È¡¼¥ë¡§¡¡make install¡Ê¥Ç¥Õ¥©¥ë¥È¤Î¥é¥¤¥Ö¥é¥ê¥¤¥ó¥¹¥È¡¼¥ëÀ衧/usr/local/lib¡Ë
­£GRASS5.4¤Î¥¹¥¿¡¼¥È¥¢¥Ã¥×¥¹¥¯¥ê¥×¥È(/usr/local/bin/grass54)¤Ë°Ê²¼¤Î¹Ô¤ò²Ã¤¨¤ë
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
¡¡¤Þ¤¿¤Ï¡¢
/usr/local/lib¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ëMESA´Ø·¸¤Î¥é¥¤¥Ö¥é¥êÁ´¤Æ¤ò¡¢GRASS5.4¤Î¥¤¥ó¥¹¥È¡¼¥ë¥Ç¥£¥ì¥¯¥È¥êÆâ¤Îlib¥Ç¥£¥ì¥¯¥È¥ê(/usr/local/grass54/lib)¤Ë¥³¥Ô¡¼¤¹¤ë¡£
£²¡ËFedora Core3¾å¤Ç¤Îgrass5.£´¤Î¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼
£±¡Ëgrass-5.4.0/src/libes/dbmi/lib/alloc.c
void *db_malloc(n)´Ø¿ô¤¬char *db_store(s)´Ø¿ô¤Î¸å¤í¤Ë¤¢¤ë¤¿¤á¤Ç¤¹¡£void *db_malloc(n)´Ø¿ôÁ´ÂΤòchar *db_store(s)´Ø¿ô¤ÎÁ°¤Ë¥«¥Ã¥È¡õ¥Ú¡¼¥¹¥È¤·¤Þ¤¹¡£
£²¡Ë/opt/grass-5.4.0/src.contrib/SDTS/mapdev/v.out.sdts/control.c
248¹ÔÌÜ¡Êchar *malloc();¡Ë¤ò¥³¥á¥ó¥È¥¢¥¦¥È¤Þ¤¿¤Ïºï½ü
°Ê¾å¤Ç¤¹¡£

£³¡ËFedora Core3¾å¤Ç¤ÎGUIÆ°ºî¤ÎÌäÂê¡£
¸½¾Ý¡¡¡§¥À¥¤¥¢¥í¥°¥Ü¥Ã¥¯¥¹Æâ¤Î¥¨¥Ç¥£¥Ã¥È¥Ü¥Ã¥¯¥¹¤Ç¡¢¥­¡¼¥Ü¡¼¥É¤«¤é¤ÎÊÔ½¸¤¬¤Ç¤­¤Ê¤¤¡£¥­¡¼ÆþÎϤ¬Ìµ»ë¤µ¤ì¤ë¡£
Íýͳ¡¡¡§GRASS¤ÎGUI(tcltkgrass)¤¬Fedora Core3ɸ½à¤ÎÆþÎϥ᥽¥Ã¥É¡ÊIIIMF¡Ë¤ËÂбþ¤·¤Æ¤¤¤Ê¤¤¤¿¤á¡£
ÂнèË¡¡§Fedora Core3¤ò¥¯¥ê¡¼¥ó¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¾ì¹ç¡¢ÆþÎϥ᥽¥Ã¥É¤¬É¸½à¤Ç¤ÏIIIMF¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ì¤òkinput2+Canna¤ÎÀßÄê¤ËÊѹ¹¤¹¤ì¤Ð¡¢¾åµ­¤Î ÌäÂê¤Ï²ò·è¤Ç¤­¤Þ¤¹¡£¼ÂºÝ¤Ë¤Ï¡¢¥á¥Ë¥å¡¼¤Î¡Ú¥¢¥×¥±¡¼¥·¥ç¥ó¡Û¢ª¡Ú¥·¥¹¥Æ¥àÀßÄê¡Û¢ª¡ÚÆþÎϥ᥽¥Ã¥ÉÁªÂò¡Û¡Êroot¥Ñ¥¹¥ï¡¼¥É¤¬¤³¤Î¸åɬÍפǤ¹¡Ë¡¢¤Ç system-switch-im¤Î¥À¥¤¥¢¥í¥°¤ò³«¤­¡¢Í­¸ú¤ÊÆþÎϥ᥽¥Ã¥É¤Ç¡Ú¹âÅÙ¤ÊÀßÄê(A)¡Û¤ò¥¯¥ê¥Ã¥¯¤·¡¢¥¢¥¯¥Æ¥£¥Ö¤Ë¤Ê¤Ã¤¿¸À¸ì¤Î ¡ÚJapanese-ÆüËܸì¡Û¤ò¥¯¥ê¥Ã¥¯¸å¡¢ÆþÎϥ᥽¥Ã¥É¤ÎÁªÂò¤Ç¡Úkinput2-canna¡Û¤òÁªÂò¤·¡¢¡ÚOK(O)¡Û¥Ü¥¿¥ó¤ò¥¯¥ê¥Ã¥¯¤·¤Þ¤¹¡£¤µ¤é ¤Ë¡¢¤³¤ÎÀßÄê¤òÈ¿±Ç¤¹¤ë¤¿¤á¡¢¥ê¥Ö¡¼¥È¡ÊºÆµ¯Æ°¡Ë¤·¤Þ¤¹¡£¡¡°Ê¾å¡£

£´¡ËGrass6.0¤Îd.m¤ÇÆüËܸ줬ʸ»ú²½¤±¡ÊGrassuj mailing list¤Î¿åë@ÀçÂæÍͤè¤ê¡Ë
lib/form/form.c
main´Ø¿ô¤Î½é¤á¤ÎÊý¤Ë²¼µ­¤Î¹Ô¤òÄɲ䷤ƥ³¥ó¥Ñ¥¤¥ë
Tcl_FindExecutable(argv[0]);
¤³¤ÎÊѹ¹¤ò²Ã¤¨¤¿¾å¤Ç¡¢ vector¤ÎÆüËܸì¤Î°À­¤òɽ¼¨¡¢Êѹ¹¤¹¤ë¤Ë¤Ï¡¢
1. dbfÃæ¤ÎÆüËܸì¤ÈƱ¤¸¥¨¥ó¥³¡¼¥É¤ËGRASS_DB_ENCODING¤òÀßÄê
2. GRASS¤òµ¯Æ°¸å¡¢LANG¤òdbf¤ÈƱ¤¸¥¨¥ó¥³¡¼¥É¤ËÀßÄê
¢¨GRASSµ¯Æ°Á°¤ÎLANG¤ÎÀßÄê¤Ï¡¢È¿±Ç¤µ¤ì¤Ê¤¤¡©
Î㤨¤Ð¡¢
dbf¤¬utf-8¤Ê¤é
grass6.0> g.gisenv set=GRASS_DB_ENCODING=utf-8
grass6.0> export LANG=ja_JP.UTF-8
¤³¤¦¤·¤Æ¤ª¤¤¤Æ
grass6.0> d.mon start=x0
grass6.0> d.vect map
grass6.0> d.what.vect -e
¤Çmap¤ÎÆüËܸì°À­¤Îɽ¼¨¡¢ÊÔ½¸¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£


Ìá¤ë