windows下编译transmission
最近玩pt,决定改一点源码实现一些功能。utorrent闭源,那就用老朋友transmission好了。
babun尝试了半天没成功,最后还是重新用cygwin来编译。
64位系统,使用32位cygwin,目标32位exe。
首先是transmission源码:
https://github.com/cfpp2p/transmission/tree/cygwin
然后安装cygwin,安装部件参考 debian部分的dependence 。
bison
flex
gettext-devel
libtool
make
gcc g++
patch
pkg-config
wget
https://github.com/transmission/transmission/wiki/Building-Transmission
也可以参考cygwin版transmission作者写的比较老点的编译指导。顺便他解释了一下为什么采用2.7版本的transmission而不是更新的。
https://sourceforge.net/p/transmissiondaemon/discussion/general/thread/acc52fa2/
编译过程,先运行autogen.sh,然后make -j 4。成品在remote目录的.lib下。
当然了,这里有三方gui组件和编译成品。没有特殊需求可以直接使用这个。
https://sourceforge.net/projects/transmissiondaemon/files/?source=navbar
顺便贴一段代码
transmission/libtransmission/announcer-http.c
evbuffer_add_printf( buf, "%s"
"%c"
"info_hash=%s"
"&peer_id=%*.*s"
"&port=%d"
"&uploaded=%" PRIu64
"&downloaded=%" PRIu64
"&left=%" PRIu64
"&numwant=%d"
"&key=%x"
"&compact=1"
"&supportcrypto=1",
req->url,
strchr( req->url, '?' ) ? '&' : '?',
escaped_info_hash,
PEER_ID_LEN, PEER_ID_LEN, req->peer_id,
req->port,
req->up,
req->down,
req->left,
req->numwant,
req->key );
标签:
transmission