<?xml version="1.0" encoding="gb2312"?>
	<rss version="2.0">
		<channel>
		<title><![CDATA[winter.zhang]]></title>
		<description><![CDATA[]]></description>
		<link>http://www.cublog.cn/u2/89624/</link>
		<language>zh-cn</language>
		<generator>www.cublog.cn</generator>
		<copyright>Copyright 2010 ChinaUnix.Net All Rights Reserved</copyright>
		<pubDate>Mon, 06 Sep 2010 03:14:04 GMT</pubDate>
	
		<item>
			<title><![CDATA[Cygwin没有为远程ssh连接注册所有的环境变量[转载, 怕自己忘记了]]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=2199119]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Fri, 19 Mar 2010 08:50:13 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[<h1 class="title">Cygwin Doesn't Register All Environment Variables When
 Using SSH</h1>
        
                          
            <span class="submitted">Submitted by ross on Sat, 01/07/2006
 - 13:45</span>
    
    <div class="content"><p>When initiating a Cygwin bash session via 
SSH, Cygwin only registers the environment variables for the SYSTEM 
account, not for the individual user's account.</p>
<p>So I added the following code to the end of my <tt>.bashrc</tt> file:</p>
<pre>if [ "$SSH_TTY" ]; then<br>pushd . &gt;/dev/null<br>for __dir in \<br>/proc/registry/HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session\ Manager/Environment \<br>/proc/registry/HKEY_CURRENT_USER/Environment<br>do<br>	cd "$__dir"<br>	for __var in *<br>	do<br>		__var=`echo $__var | tr '[a-z]' '[A-Z]'`<br>		test -z "${!__var}" &amp;&amp; export $__var="`cat $__var`" &gt;/dev/null 2&gt;&amp;1<br>	done<br>done<br>unset __dir<br>unset __var<br>popd &gt;/dev/null<br>fi<br></pre><p>To apply……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[fncache in mercurial]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=2085943]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 04 Nov 2009 02:47:13 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
		近来在用hg clone新的repository的时候, 经常出现以下错误:<br><br>remote: abort: requirement 'fncache' not supported!<br>abort: no suitable response from remote hg!<br><br>网上找了一下, 最靠谱是以下这个方案:<br>http://www.errorhelp.com/search/details/113528/abort-requirement-fncache-not-supported<br>即, 在repository的源位置, 删掉.hg/requires中的fncache,这样固然可以, 但是总有些不好, 一方面, 更改别人repository的设置不妥, 另一方面则是, 有可能自己根本不能访问这个文件.<br><br>根据: http://mercurial.selenic.com/wiki/fncacheRepoFormat, 可以知道, 只要mercurial 1.1.1以上的版本, 都可以支持fncache, 这就太奇怪了, 因为我客户端用的是1.3.1, 而且我搜了一下源代码, 确实很多地方都带有fncache的, 可见我本地的hg没问题.<br><br>登录上远程机器一看, 才发现, 是远程机器上hg的问题.<br><br>很早的时候, 为了方便, 自己编译了一份hg放在自己的目录下, 并且修改了PATH, 使得默认使用这个hg程序,且此hg程序版本不足1.0, 导致了这问题.<br><br>于是我赶紧修改远程机器的.bashrc,去掉了对PATH的设置.<br><br>再在本机运行hg clone,发现那错误……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[AIX6.1上执行后台命令]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=2079729]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Tue, 27 Oct 2009 05:53:23 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
		由于在一台AIX6.1上要跑一个很长时间的测试, 于是, 我就登录到上面,在命令行敲下一下命令:<br>bash run_actions.sh --action=run_all &gt;&gt;1.log 2&gt;&gt;1.log &amp;<br>命令在后台执行, 可是当我多运行几个最简单的ls,就出现以下这个东东<br>[1]+&nbsp; Stopped&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bash run_actions.sh --action=run_all --keep &gt;&gt;1.log 2&gt;&gt;1.log<br>于此同时, 程序虽然还在ps的列表中, 但是长时间没有任何动作.<br>而当我第一次敲exit退出bash返回到csh中时, 又出现了一下提示:<br>bash-3.00$ exit<br>exit<br>There are stopped jobs.<br>此时, 程序仍然在ps列表中, 再次敲exit, 就返回了csh,<br>同时程序消失在ps列表中.<br><br>好恐怖的现象, 明明已经放到后台执行了, 最后退出bash, 程序居然也消失了, 与linux的完全不同. <br>这个问题,其实我很早就碰到过, 也是一台AIX6.1的机器. 但是当时在解决问题时,忘记记录下方法了, 于是,导致了现在的多次尝试. <br><br>最后发现, 将整个后台放到子进程之中去, 这种现象就不会发生.<br>( bash run_actions.sh --action=run……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[处理TOP的输出]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=2043647]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 02 Sep 2009 02:33:01 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[突然碰到需要将top的综合内容格式化为文本, 于是需要一段sed脚本.实际上, top的输出并非像我们想像的如此简单, 其中含有许多的控制字符, 这些都是和终端相关的. 要把这些特殊字符去掉才能得到规范化的文本. <br><br>在Ubuntu Linux上, 使用以下脚本就可以获得规范化的文本输出:<br><br>top -n 1 | sed '/PID/,$d'| sed 's/[^%, -:()0-9a-zA-Z]*//g' | sed 's/m(B[0-9]*;[0-9]*m//g' | sed 's/m(B//g' | sed 's/H2J//'| sed 's/K$//' | sed '$d' | sed '1d' <br><br>为了更进一步处理, 还可以将一下内容加入管道列表.<br>&nbsp;sed 's/:/:\n/g' | sed 's/,/\n/g'<br><br>最后获得的输出就是:<br>Tasks:<br>&nbsp;211 total<br>&nbsp;&nbsp; 1 running<br>&nbsp;208 sleeping<br>&nbsp;&nbsp; 1 stopped<br>&nbsp;&nbsp; 1 zombie<br>Cpu(s):<br>&nbsp; 62%us<br>&nbsp; 09%sy<br>&nbsp; 00%ni<br>&nbsp;888%id<br>&nbsp; 40%wa<br>&nbsp; 00%hi<br>&nbsp; 00%si<br>&nbsp; 00%st<br>Mem:<br>&nbsp;&nbsp; 2052548k total<br>&nbsp; 1961532k used<br>&nbsp;&nbsp;&nbsp; 91016k free<br>&nbsp;&nbsp; 121172k buffers<br>Swap:<br>&nbsp; 6016300k total<br>&nbsp;&nbsp; 11540……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[PS1等变量对执行远程/后台命令的影响]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1982006]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Tue, 30 Jun 2009 08:05:18 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[同事在测试时需要执行远程命令(非交互式), 但是却经常遇到远程命令找不到的情况. 远程机器的默认SHELL为/bin/bash, 而且他也把要执行命令的PATH加入到了自己目录的.bashrc下. 然而, 很奇怪, 命令就是找不到, PATH就等于没有设置过一样.<br><br>细看了一下, 他的.bashrc执行的第一行是:<br><br>[ -z "$PS1" ] &amp;&amp; return<br><br>PS1是交互式SHELL的提示符, 在非交互式的情况下, 该值为空. 故而, 本行意思是, 如果是非交互式的调用shell,则返回, 即后面的环境变量设置都将不被执行.<br><br>同事注销掉这一行以后, 命令运行终于成功.<br><br>所以, 如果需要后台和远程命令用到.bashrc之类的文件的话, 要注意把此种类型的行去掉.<br><br><br>
		
		
		  ]]></description>
		</item>	
			<item>
			<title><![CDATA[在Win64上编译Tcl(Tcl8.4/Tcl8.5)]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1906449]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 22 Apr 2009 02:25:23 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[由于测试基本都是Tcl写成的, 所以工作中不可避免的需要Tcl, 不可避免的经常需要编译Tcl.<br><br>对于Win32而言, 可以从www.activestate.com直接下载Win32的msi文件, 进行安装. <br><br>当然也可以从www.tcl.tk下载源代码进行编译, tcl.tk的源代码中提供了Win32的编译配置, 但是没有包含x64的编译配置, 所以在win64上, 编译Tcl就有点小小的困难.<br><br>本文以Win64上编译Tcl8.4.17为例.<br><br>下载和解压的具体过程不必说了, 直接说说编译.<br>切换到windows的编译目录, win下<br>cd win<br>而后, 查看makefile.vc,这个是windows下的makefile,用nmake来运行.<br>比如我的是amd64为的机器, 我要编译出包含符号表的多线程版本,命令就是:<br>nmake -f makefile.vc MACHINE=AMD64 OPTS=threads,symbos<br>要安装就是:<br>nmake -f makefile.vc install MACHINE=AMD64 INSTALLDIR=C:\Tcl_64<br><br>如果是IA64,则将AMD64改为IA64即可.<br><br>由于一般使用的是x86的visual studio,所以可能会有一些错误:<br>1 编译过程中有时提示nmake/cl之类的不相容的问题, 这应该是版本问题, 编译时应该使用这些工具的64位版本, 而不是32位版本:<br>具体来说,运行命令行前, 应当先设置好:<br>ca……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[msdev & devenv 的命令行用法(以编译BerkeleyDB为例)]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1903053]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Fri, 17 Apr 2009 17:10:49 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[msdev是visual studio 6.0的IDE程序, devenv是visual studio 2005的IDE程序<br>两种IDE程序, 既可以工作在图形模式下,也可以工作在命令模式下.<br>其中, 直接运行msdev 和 devenv将打开vs6和vs2005的IDE界面. 命令行则支持不同的选项.<br><br>Msdev的命令行用法:<br>Usage:<br>&nbsp; MSDEV [myprj.dsp|mywksp.dsw]&nbsp; - load project/workspace<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [&lt;filename&gt;]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - load source file<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - display usage information<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /EX &lt;macroname&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - execute a VBScript macro<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /OUT &lt;filename&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - redirect command line output to a file<br>&nbsp;&nbsp;&nbsp;&n……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[SSH & RSH]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1899836]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Tue, 14 Apr 2009 02:13:23 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[在使用的机器中,大部分都是用ssh来访问, 但是, 我们也有几台老旧的机器, 没有SSH,只有RSH.<br><br>ssh 和 rsh的区别主要有:<br><br>1 安全级别不同, 主要是ssh的密码等都是加密传输,而且还有密钥认证的机制, rsh明文传输. 而且没有密钥的机制. 具体,文章一大批<br><br>2 不用输入密码登录的方式不同. 在ssh中, 本地.ssh存放private key, 把public key加入远程的.ssh/authorized_keys中, 就可以实现不输密码登录和执行远程命令,本机改变时,只需要保留私钥此种方式就可以仍然继续.&nbsp; rsh中, 需要把本机的ip地址和用户名加入到远程机器的.rhosts文件中, 才可以做到这点, 当本机ip发生改变时, 还需要修改远程的那个文件. <br><br>3 使用中, 发现诡异的一点就是, ssh会收集远程命令的退出状态, 而rsh则无论怎样都返回0. 此点是对编写可移植shell程序的一大挑战. 毕竟要远程执行命令时,使用ssh就可以直接获得远程命令的退出状态, 不需要附加的检测. 但是, 对于rsh而言, 由于其都返回0, 故而,使用rsh执行远程命令时, 还需要附加一个检测远程命令状态的机制, 而此机制可能与具体应用相关, 给通用性带来一定的困难.<br><br><br>
		
		
		  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Cygwin下build BerkeleyDB Tcl library]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1895463]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Sat, 11 Apr 2009 19:43:34 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
		Cygwin是一个windows上对unix的模拟,故而基本编译过程和Unix相同, 如果只想编译c library的话, 操作方式和unix是完全一样, 就是一个configure/make的过程.<br><br>但是,如果需要编译tcl library的话,就需要注意一些内容. 由于tcl library可以让用户通过tclsh以shell的方式来操作bdb,即,逐步输入命令, 逐步查看结果. 所以, tcl library实际可以增进对bdb的学习.<br><br>实际上,bdb的test suite以tcl test为主, tcl test需要编译出动态的tcl library. 所以稍微介绍一下编译动态tcl library的过程.<br><br><br>1 configure/make<br>&nbsp; cd db/build_unix<br>&nbsp; ../dist/configure --enable-test --with-tcl=/usr/lib --enable-cxx<br>&nbsp; make<br>&nbsp; 在make过程中会出现一大批错误,都是tcl library的编译错误<br>&nbsp; 修改Makefile, 将LIBTSO_LIBS的值设置为非空的值:<br>&nbsp; LIBTSO_LIBS=&nbsp; -ltcl84<br>&nbsp; 同时,由于cygwin中动态库是用windows的dll,而dll一般不在lib目录下,而在bin底下,故而需要设置一下LD_LIBRARY_PATH:<br>&nbsp; export LD_LIBRARY_PATH="/bin:$LD_LIBRARY_PATH"<br>&nbsp; 而后在执行make,整个编译过程就完成了<br>2 测试 t……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[关于Blog中关于BerkeleyDB的一些计划]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1869242]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Thu, 19 Mar 2009 16:13:57 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[为了更好的在中国区推广BerkeleyDB, 也为了让自己能够更了解产品本身. 本人将进行增加博客中关于BerkeleyDB的内容. 初步打算有:<br><br>1 一个BerkeleyDB的代码例子小集, 主要包含一些示例的代码. 比如如何使用游标,如何使用事务,如何单独使用lock子系统,如何使用mutex等等<br><br>2 中文文档计划, 将尽量多的将英文参考中的内容翻译为中文文档.<br><br><br>其实,早就有这些打算, 只是一直都没开始做. 也许是因为不写在纸上, 自己就不会给自己压力把. 今天正式写在了纸上, 我将会提醒自己不断加入新内容. 就如同Linux杂记一般, 很多时候, 有打算,但是没记录. 以至于经常我要重新安装配置一个新的环境的时候, 碰到同样的问题, 却忘记怎么解决,又要去GOOGLE一番,而且还经常没有什么收获. 导致浪费自己的时间.<br><br>当然, 这对我也有好处, 我自己对产品认识还很浅显. 很多文档读完了,却忘记了. 具体时候又要去细细查看. 其实查看无所谓, 只是,不能所有东西都去查看,就如同语法一样,可以去查,但不能所有都去查, 这样的话,根本就开展不了工作.<br><br>事实上,自从开始写Linux杂记后, 一碰到同样的问题, 对如何解决我基本记住了.就算记不住,我也可以立刻回到我的Blog查看.节省了我……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[windows中的 /dev/null]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1868736]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Thu, 19 Mar 2009 07:32:31 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
		今天在写一个windows bat脚本的时候, 突然碰到一个情况,需要将输出的内容丢弃.<br><br>由于linux/unix下有/dev/null可以用于将输出安全丢弃, 于是,我就考虑windowsx下有没有类似的文件.<br><br>一查果然有, 为nul, <br><br>形式只要为cmd ... &gt;nul,标准输出的的内容就被丢弃.<br><br>可以做一个实验,<br>在cygwin下运行 touch nul,是不会成功的<br><br>在Windows下新建一个文件, 而后试着改为nul也是不会成功的.<br><br>至于cygwin中调用命令(不管是windows的命令还是cygwin内置的命令),都是可以使用/dev/null来丢掉处理的. 至于原理很简单, fork的进程是会拷贝共享父进程的文件描述符的.<br>
		
		
		
		
		  ]]></description>
		</item>	
			<item>
			<title><![CDATA[移动Cygwin目录后Cygwin无法正常使用]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1867552]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Thu, 19 Mar 2009 07:33:09 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
								以前装Cygwin的时候,装到了C盘,然后最近C盘日益吃紧,所以需要把Cygwin移动到D盘,因为D盘有很大的空间.<br><br>移动后cygwin可以启动,因为毕竟,没移动cygwin1.dll的位置. 然后提示/tmp找不到.<br><br>这应该是Mount的问题,因为mount运行一下发现<br>/, /usr/bin, /usr/lib都是mount在原来的c盘的目录下,而不是现在D盘的目录. 所以,要更正这些问题,就需要修改cygwin的mount表<br><br>cygwin的mount表存储于windows注册表中:<br>HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2,<br>该目录下存在:<br>&nbsp;/<br>&nbsp;/usr/bin<br>&nbsp;/usr/lib<br>&nbsp;每个条目的native对应本地路径,分别是<br>C:\cygwin<br>C:\cygwin/bin<br>C:\cygwin/lib<br><br>把这些条目中的C:改为D:,然后关闭注册表,重启cygwin,mount就正常了,cygwin又可以正常使用了<br>
		
		
		
		
		
		
		
		
		
		
		  ]]></description>
		</item>	
			<item>
			<title><![CDATA[更换主板后,Ubuntu无法访问网络]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1867534]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 18 Mar 2009 09:55:30 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[Dell的Optilex745最近出了些问题, 报告给DELL后,那边今天派人来了,解决方案倒是简单, 直接更换了主板.<br><br>换完后,启动了一下,没去连接网络, 所以就没发现问题. 等到后来弄到机房启动机器, 发现机器无法访问网络了.<br><br>用ifconfig一看,有两个网络设备:lo 和 eth1, <br>再查看一下/etc/network/interfaces,发现条目是lo和eth0,<br>执行ifup --force eth0, 提示设备不存在<br>也就是说, 主板没更换前, 网卡被命名为eth0,而现在被命名为eth1,eth0已经不复存在了.<br><br>解决方法有两种:<br><br>1 更改/etc/network/interfaces,将eth1都改为eth0, 我先这样作了一下,而后/etc/init.d/networking restart重启网络服务, 结果就可以访问网络了.<br><br>我发现/etc底下还有某些配置文件使用eth0, 但是也不多. 这种情况好办, 将这些文件用sed作一次替换就可以了, 使用这些配置的软件就不会有问题了. <br><br>只是,google一下,发现其实有些软件默认使用的就是eth0,eth1对他们来说无效.<br><br><br>2 所以,最好的方式,还是让该网卡被命名为eth0, 看到有些机器上有ifrename,试了一下,发现不存在. 于是,就只有修改配置文件了, 该配置文件是/etc/udev/rules.d, 文件名是:70-persisten……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Solaris上编译gnu sed]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1844433]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Thu, 07 May 2009 07:19:31 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
				近来需要在solaris上工作一段时间, 所以需要使用solaris上的工具. 习惯了在Linux下的工具后, 突然发现许多solaris上的工具和linux差别甚大. 自带的sed和awk即是如此,以前在linux下用的sed/awk都出错, 由于我不……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Linux上的一些软件小技巧(不断收集,补充)]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1838220]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Mon, 02 Mar 2009 17:26:35 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
						1 CVS 使用代理(proxy)<br><pre>cvs -d<br>:pserver;proxy=host;proxyport=number:user@cvshost:/somerepository<br><br>2 subversion 使用代理<br>编辑~/.subversion/servers , 设置global的项.<br><br>[global]<br>http-proxy-host=proxy-host<br>http-proxy-port=proxy-port<br><br>3 让软件可以通过http代理服务器访问网络, ftp软件通过ftp代理服务器访问网络<br>  设置http_proxy,和ftp_proxy<br>   export http_proxy="http_proxy_address"<br>   export ftp_proxy="ftp_proxy_address"<br><br>4 Ubuntu Linux可以通过apt-get来进行软件的下载,更新, 具体的命令为:<br><br>winter@Ubuntu8:~$ apt-get --help<br>apt 0.7.14ubuntu6 for i386 compiled on Aug 14 2008 16:54:20<br>Usage: apt-get [options] command<br>       apt-get [options] install|remove pkg1 [pkg2 ...]<br>       apt-get [options] source pkg1 [pkg2 ...]<br><br>apt-get is a simple command line interface for downloading and<br>installing packages. The most frequently used commands are update<br>and install.<br><br>Commands:<br>   update - Retrieve new lists of pac……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Linux上安装xerces/xqilla/swig]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1834747]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Mon, 23 Mar 2009 17:40:47 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
								由于需要用到xerces,xqilla,swig,所以就记录一下安装的过程<br>当前目录结构为:<br>swig-1.3.33&nbsp; XQilla-1.1.0 XQilla-2.1.3 xerces-c-src_2_8_0<br><br>首先安装xerces,首先没看文档,就直接用configure,make来操作了,不过, configure完了后, make一下,居然说No target to make, 把我惊了.<br><br>查了一下文档,才知道,需要用src/xercesc的runConfigure的脚本来执行configure,<br>用法如下:<br><br><font><font color="#000000" face="arial,helvetica,sanserif"><font size="-1"><pre>runConfigure: Helper script to run "configure" for one of the<br>              supported platforms<br>Usage: runConfigure "options"<br>       where options may be any of the following:<br>       -p &lt;platform&gt; (accepts 'aix', 'beos', 'linux', 'freebsd',<br>            'netbsd', 'solaris', 'hp-10', 'hp-11', 'openserver', 'unixware',<br>            'os400', 'os390', 'irix', 'ptx', 'tru64', 'macosx', 'cygwin',<br>            'qnx', 'interix', 'mingw-msys')<br>            [required; no default]<br>       -c &lt;C compiler name&……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Ubuntu Linux x86_64编译gcc-4.3.3]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1833399]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 18 Feb 2009 17:39:50 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[前几天在服务器上装了个ubuntu8.04, 上面的gcc是4.2.4版本的. 而我有时候需要测试产品在最新gcc编译后的运行情况, 于是,我就装了个gcc-4.3.3.<br><br>安装4.3.3是个很简单的过程, 主要就是tar -xzf, configure,make的过程. 不过由于开始没注意, 就遇到一系列错误, 比如:<br><br>"gnu/stubs-32.h: <em>No</em> such <em>file</em> or directory",<br><br>因为是64位的机器,默认是没有stubs-32.h, 于是一查,我装了ia32-libs. <br><br>装好后,这个是没了, 其他又出来了主要是编译32位库的时候 crt1.o不能被识别,因为它是64位的.<br><br>由于我只需要64位的gcc不需要32位版本,也不需要交叉编译,于是我就重新编译, configure的时候加入--disable-multilib, 再Make,出乎我意料,居然一点问题都没有了.<br><br><br>
		
		
		  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Ubuntu8.04上Python的SSL支持]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1833390]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 18 Feb 2009 17:23:31 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
		刚刚装好Ubuntu8.04,然后打算装个Mercurial,于是,就自己下载mercurial的源代码,进行编译,结果编译出错,提示Python.h不存在,一查,果然不存在.<br><br>Ubuntu是个很好的系统,很精简化,安装盘只要一张CD大小,而且要获得软件也很容易, 只要apt-get install XXX就可以了, 唯一有点烦人的就是包的名称需要自己去 http://packages.ubuntu.com 上找. 而自带的很多程序和库,都是可以适用于运行,但不适用于开发, 比如, 刚装好的python是可以运行的,但是当要编译python扩展的时候,就会出错,因为开发的包默认是不提供的. 还有其他的比如ssl,zlib等等库都是如此,都是运行时的,但是没有相应的头文件等,于是不能在上面编译其他工具.<br><br>我一看到Python.h不存在,就下载了Python的源代码,并且编译了一下, Python.h就出来了,而后, 也顺利的编译了mercurial, 还可以运行.<br><br>但是一用hg取一个https的repository,错误就出来了, 我自己编译的Python没有SSL的支持, 要编译出SSL的扩展,就需要ssl的header等, 如果手动编译ssl header的话, 就要重新编译ssh/scp/rsync等, 要不然就会有"<em>no version information</em> available"等警告.总之,要做的也蛮多的. <br><br>于是,我放弃了自己装……  ]]></description>
		</item>	
			<item>
			<title><![CDATA[Linux杂记]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1833375]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 18 Feb 2009 16:55:28 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[
		好久不写blog了,倒不是说完全没东西写,而是自己不够职业化,很多东西都应当记下来的,然后却忘记了. 以至于经常做完了一件事情,过不久就忘记是怎么做的,以至于下次碰到这种问题,又要去google/baidu白天,而且还经常查不到,浪费自己的时间.<br><br>所以,现在开始,就当是写个人日记把, 不为别的,就为了让自己以后能有个地方查到,出了什么问题,应该如何解决, 以便节省自己的时间.<br><br>想想,还是创建一个新的组,姑且叫: Linux杂记 吧,毕竟大部分工作都是在Linux底下进行的.<br>
		
		
		
		
		  ]]></description>
		</item>	
			<item>
			<title><![CDATA[ BerkeleyDB开发组中文博客]]></title>
			<link><![CDATA[http://blog.chinaunix.net/u2/89624/showart.php?id=1824614]]></link>
			<author></author>
			<guid></guid>
			<category></category>
			<pubDate>Wed, 11 Feb 2009 09:48:09 GMT</pubDate>
			<comments></comments>
			<description><![CDATA[<a href="http://www.bdbchina.com/" target="_blank">http://www.bdbchina.com</a><br><br>虽然刚刚建立不久的网站, 但是大家对与外界交流都很有热情,所以, 我们会慢慢加入更多的内容的, 让更多的朋友对BerkeleyDB有更多的了解, 促进BerkeleyDB在中国的发展.
		
		
		  ]]></description>
		</item>	
			</channel>
	</rss>
