转自:http://my.opera.com/yjfuk/blog/subversion-svn
在中文windows下安装svn的1.4版本,下载了win32的那个zip版本,直接解开安装,并把bin目录添加到path上,在cmd shell上执行svn发现程序的提示信息全是加了斜杠了的数字,一看就知道是经过编码的中文。
svn使用了libapriconv.dll来实现本地化的,apr_iconv是使用环境变量
APR_ICONV_PATH
来获取iconv目录,从而得到相关的.so文件。在中文环境下,因为没找到正确的iconv目录,所以无法得到正确的cp936.so,所以显示成了乱码。
相关代码如下:
/* Fall back on APR_ICONV_PATH if APR_ICONVn_PATH isn't set...
* TODO: Drop support for "APR_ICONV_PATH" in apr-iconv 2.0
*/
if ((!apr_env_get(&ptr, APR_ICONV_PATH, subpool)
|| (!apr_env_get(&ptr, "APR_ICONV_PATH", subpool)))
&& !apr_filepath_list_split(&pathelts, ptr, subpool))
{
可以看到,apr-iconv 2.0以后会不这么使用了
所以,最官方的解决办法就是设置正确的APR_ICONV_PATH环境变量。比如:
set APR_ICONV_PATH=e:\svn\iconv
set LANG=zh_CN.UTF8
其实如果习惯英文,只要加上环境变量LANG=en_US,就可以正确显示英文提示信息了.
本文详细介绍了在中文Windows系统中安装SVN 1.4版本时遇到的乱码问题及其解决方法,包括设置正确的APR_ICONV_PATH环境变量和调整LANG环境变量。
1547

被折叠的 条评论
为什么被折叠?



