http://blog.epelaez.net/05/installing-ldid/
http://blog.csdn.net/newsoul08/archive/2009/04/28/4131893.aspx
Installing ldid
You'll need ldid to sign your code, you can get it on the iPhone by doing:
$ sudo apt-get install ldid
Here's how to get it on Linux/OX S:
First, download from saurik's with this:
$ wget http://svn.telesphoreo.org/trunk/data/ldid/ldid-1.0.610.tgz
Now, Unzip it:
$ tar -zxf ldid-1.0.610.tgz
Move to the result folder:
$ cd ldid-1.0.610
Compile it:
$ g++ -I . -o util/ldid{,.cpp} -x c util/{lookup2,sha1}.c
And put it in the bin folder:
$ sudo cp -a util/ldid /usr/bin
Now, to sign a binary, just do:
$ ldid -S FILE
错误的提示都是说对Swap的调用有歧义(有多个重载函数,不知道该调用哪一个),好久不写C代码了,还好仔细看了看,使用在提到歧义的地方定义的常量宏或者常量值前边加上(uint32_t),就是说强制其定义为uint32_t类型,这样就没有歧义了,大概有七八个地方需要这样的修改(ldid.cpp),修改后按照文章说的指令编译通过。