2008年4月23日 星期三
compiler busybox failed (__NR_clock_gettime)
libbb/time.c: In function `monotonic_us':
libbb/time.c:20: `__NR_clock_gettime' undeclared (first use in this function)
libbb/time.c:20: (Each undeclared identifier is reported only once
libbb/time.c:20: for each function it appears in.)
libbb/time.c:20: `CLOCK_MONOTONIC' undeclared (first use in this function)
libbb/time.c: In function `monotonic_sec':
libbb/time.c:27: `__NR_clock_gettime' undeclared (first use in this function)
libbb/time.c:27: `CLOCK_MONOTONIC' undeclared (first use in this function)
make[1]: *** [libbb/time.o] Error 1
Root cause: uclibc is too old
compiler busybox
# http://www.busybox.net/downloads/busybox-1.10.1.tar.bz2
2. uncompress
# tar -jxvf busybox-1.10.1.tar.bz2
# cd busybox-1.10.1
3. config
# make menuconfig
4. compiler
# make ARCH=mips CROSS_COMPILE=mipsel-uclibc-
make iproute2 without(disable) ipv6
# wget http://devresources.linux-foundation.org/dev/iproute2/download/iproute2-2.6.25.tar.bz2
2. Uncompress
# tar -jxvf iproute2-2.6.25.tar.bz2
# cd iproute2-2.6.25
3. Path source code
vi ./iproute2/ip/iptunnel.c
case AF_INET6:
return do_ip6tunnel(argc, argv);
//case AF_INET6:
// return do_ip6tunnel(argc, argv);
vi ./iproute2/ip/Makefile
IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o \
rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \
ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o \
ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o \
iplink_vlan.o link_veth.o
remove ip6tunnel.o from IPOBJ
4. Done
2008年4月3日 星期四
[Subversion] svn through proxy
What if I'm behind a proxy?
The Subversion client can go through a proxy, if you configure it to do so. First, edit your "servers" configuration file to indicate which proxy to use. The files location depends on your operating system. On Linux or Unix it is located in the directory "~/.subversion". On Windows it is in "%APPDATA%\Subversion". (Try "echo %APPDATA%", note this is a hidden directory.)
There are comments in the file explaining what to do. If you don't have that file, get the latest Subversion client and run any command; this will cause the configuration directory and template files to be created.
Next, you need to make sure the proxy server itself supports all the HTTP methods Subversion uses. Some proxy servers do not support these methods by default: PROPFIND, REPORT, MERGE, MKACTIVITY, CHECKOUT. In general, solving this depends on the particular proxy software. For Squid, the config option is
# TAG: extension_methods
# Squid only knows about standardized HTTP request methods.
# You can add up to 20 additional "extension" methods here.
#
#Default:
# none
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
(Squid 2.4 and later already knows about PROPFIND.)
See also "What are all the HTTP methods Subversion uses?" for advice on additional HTTP methods to allow through your proxy.
If it's difficult or impossible to get the proxy to allow Subversion traffic, but you want to check out the Subversion sources, you may be able to go around the proxy. Some proxies that filter port 80 nevertheless allow anything on port 81. For this reason, the svn.collab.net repository server listens on port 81 as well as on port 80. Try:
svn checkout http://svn.collab.net:81/repos/svn/trunk subversion
and maybe the proxy will let you through. Another strategy is to attempt the checkout over SSL, which many proxies allow:
svn checkout https://svn.collab.net/repos/svn/trunk subversion
Of course, your svn client will have to have been built with ssl support; just pass --with-ssl to Subversion's ./configure script. You can check to see whether the 'https' scheme is supported by running svn --version.
Example : Edit the 'servers' file and add something like :
[global]
http-proxy-host = your.proxy.name
http-proxy-port = 3128
http-proxy-username = username
http-proxy-password = password