forked from mathslinux/lwqq
-
Notifications
You must be signed in to change notification settings - Fork 25
Build From Source
xiehuc edited this page Jan 30, 2014
·
15 revisions
在linux上编译非常简单,在linux上可以任意的选择libev和libuv作为异步库,因为libuv一般还没有进入源中,需要自己编译.所以一般使用libev.
输入 sudo apt-get install libcurl4-openssl-dev libsqlite3-dev zlib-dev
安装依赖的库
$ mkdir build;cd build;
$ cmake ..
$ make
$ sudo make install
在Mac平台的编译方法和Linux的类似,
- 支持程序:安装windows版本的 cmake 和 mingw32 , 并且设置好环境变量.注意,在Cygwin中的mingw32和直接安装的mingw32是不一样的环境 。为了避免不必要的麻烦,推荐在后者的环境中编译。另外msys并不会直接找到mingw, 需要先在Windows的环境变量中加入X:/mingw/bin即可。
- 异步的支持:Windows平台上不支持libev,所以可以使用替代的libuv或者是完全禁用异 步。如果是要在其它程序中引用liblwqq库,还可以通过async_impl.h使用其它的异步库 。详见API。
使用一个文件夹作为编译的根目录,作为 lwqq_root
,并且,从github上下载lwqq的源代码
.放在 lwqq_root/lwqq
下面
建立 lwqq_root/win32-dev
文件夹作为存放依赖的目录。
- 下载 libcurl
,并且解压之后放在
win32-dev/libcurl
目录下面.并且将其中的lib/libcurldll.a
更改为lib/libcurl.dll.a
为了使得cmake能够顺利的找到 预编译的dll符号链接. - 下载 sqlite3 dll 和 sqlite3
header 分别下
并且解压之后放在
win32-dev/sqlite3
目录下面 - 下载 zlib dll 和 zlib header 并且解压之后放在`win32-dev/zlib`目录下面
为了方便大家,也可以直接下载 整理好的依赖 ,并且直接解压到 win32-dev文件夹
打开一个Mingw Shell(也被称作MSYS),然后打开 lwqq_root/lwqq
目录,输入:
mkdir build; cd build; cmake .. -G "MSYS Makefiles" -DWIN32_LIBS_DIR=`lwqq_root/win32-dev` -DWITHOUT_ASYNC=On -DWITH_LIBEV=Off -DWITH_LIBUV=Off make
然后就可以在 build/lib
目录下找到liblwqq.dll,以及在 build/src
目录下面找到lwqq-cli.exe了.
注意:因为cmake使用cache的方式记忆设置,所以容易出现混乱,可以删除CmakeCache.txt之后重头编译.
将各个依赖库中的dll文件复制到 build/src
目录下面,把 build/lib
目录下的
liblwqq.dll复制到 build/src
,输入 lwqq-cli -u[qqnum] -p[passwd]
运行简
单的登录程序测试是否正常工作.