MacPorts

经历了几天没有网络的日子,总算在学校初步安顿下来了。图书馆不错,网速很快 🙂

刚发现Mac下的一个好东西 MacPorts, 手册在这里MacPorts Guide

相当于Linux下的包管理工具吧,可以自动处理依赖。要安装软件的时候,一行命令解决问题。

$port install XXX

各种用法手册里都介绍了,手册足够长,完全没有耐心一次看完..

[Libsvm]libsvm for matlab compilation error on mac

Error:

>> make
/bin/bash: -c: line 0: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 1: syntax error: unexpected end of file
??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> make at 5
mex -O -largeArrayDims -I..\ -c ..\svm.cpp

Fix:

  1. Under folder ./libsvm-3.1/matlab
  2. Open file make.m
  3. replace backslash(\) to slash(/)
  4. save and close file
  5. execute the make command inside matlab


Error:

>> make
i686-apple-darwin10-gcc-4.2.1: svm.obj: No such file or directory
i686-apple-darwin10-gcc-4.2.1: svm_model_matlab.obj: No such file or directory

    mex: link of ' "svmtrain.mexmaci64"' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> make at 7
mex -O -largeArrayDims -I../ svmtrain.c svm.obj svm_model_matlab.obj

Fix:

  1. Open the make.m file again
  2. Replace all the occurrences of .obj to .o
  3. Save and close
  4. Try again!

Hope these help :]

让iOS使用SSH Tunnel

为了突破局域网的限制,目前主流的方法还是SSH和VPN。
如果使用VPN的话,可以很方便的在自己的iPhone/iTouch/iPad设备上连VPN,上外网。
肯定还有不少朋友是在用SSH的。在自己的机器上一般使用以下命令来连接ssh,并且绑定到127.0.0.1:8080。

$ssh -D 8080 username@sshserver.com

之后,我们可以在设置proxy的地方指定proxy为127.0.0.1:8080。

但是在iOS上,如果不越狱的话是不能用SSH的。这样,我们必须让ssh绑定到外部IP,并且让iOS知道这个proxy。

假设本机的IP为192.168.1.2

步骤如下:

1. 不能再用上面这个命令来使用SSH了,命令如下

$ssh -g -D 192.168.1.2:8080 username@sshserver.com

这让SSH把连接转发到192.168.1.2:8080这个地址,-g让外部机器可以连到这个地址

2. 我们需要一个PAC文件。这是一个指定如何配置proxy的文件。
新建文件proxy.pac
内容如下

function FindProxyForURL(url, host)
{
    return "SOCKS 192.168.1.2:8080";
}

3. 我们还需要让本机之外的其他机器可以访问到这个pac文件。比如,我们这里用HTTP来做。
Mac本身就支持Web Sharing,其实是一个Apache的Server。
在”System Preferences”->“Sharing”里,给Web Sharing打上勾.


把上面的proxy.pac文件拷贝到~/Sites/下面,这时,我们可以在浏览器里试试这个地址
http://192.168.1.2/~username/proxy.pac
看看是不是能够看到文件内容?

在lion下,可能会出现没办法勾选Web Sharing的情况。把httpd.conf用原始版本覆盖即可

$sudo cp /etc/apache2/original/httpd.conf /etc/apache2/httpd.conf

4.万事俱备,现在只要在iOS上设置就行了。
通过”Settings”->”WLAN Networks”找到现在连上的Wifi,查看details(蓝色箭头)
在最下面有设置http proxy的地方。
选择”Auto”, 填入 http://192.168.1.2/~username/proxy.pac

5.搞定!

试着上上外网看吧 :]

参考:

CloudApp

推荐一个Mac下的不错的同步软件,可以方便地在公司和家里把文件放到服务器端,这样无论在哪一边都可以很容易地得到需要地文件。

CloudApp

从这个网址进入 GetCloudApp

注册一个帐号,下载安装客户端之后,运行之。会看到在右上角总多的图标中多了一个“云”的图标。

点击,打开Preferences->Account
输入你的帐号
然后 …..
把需要上传的文件直接拖上去就搞定了!

另外一个更酷的功能是保存书签。有时候在公司看到一个不错的blog地址,想要回家之后再看看,使用cloudApp就很方便了。
在Safari里使用热键(默认是Ctrl+Alt+Command+U)就把当前页面的地址保存到云端了。当然也可以使用拖放完成这个需求。

刚刚用上CloudApp没多久,说不定还有些未被发现的好东西。

限于Mac平台的话,用户群应该不会太大吧。祝CloudApp能够存活在墙内吧。