|
本帖最后由 0xCAFEBABE 于 2019-3-4 10:36 编辑
本来折腾着在 FreeBSD 上装了 BOINC,结果装好之后发现 Rosetta 和 WCG 都没包,就又把系统换成了 CentOS。
本打算直接用 yum 安装,结果试了诸如 boinc、boinc-client 之类的几个包名之后,发现在官方源里都不存在。然后又从官网下载了 sh 安装脚本,发现缺少一些老版本的依赖库,鉴于官网的二进制版本太低,于是只能手工源码编译了。
在坛子里搜索了下,也没有找到最近的在 CentOS 下编译 BOINC 的相关文章,于是只能自己动手丰衣足食了,并把过程记录下来,供其它有需要的小伙伴参考食用。
1) 首先是下载源码:
- >$ git clone https://github.com/BOINC/boinc boinc
复制代码 我们假设当前目录是 /home/user 将源码下载到 boinc 目录下,绝对路径即 /home/user/boinc。
然后切换分支到相应的版本上,我选择的是最新的版本 7.14.2。
- >$ cd boinc
- >$ git checkout -b client_release_7.14.2 client_release/7.14/7.14.2
复制代码
2) 安装相关的依赖库
- >$ sudo yum install -y openssl-devel
- >$ sudo yum install -y libcurl-devel
- >$ sudo yum install -y libnotify-devel
- >$ sudo yum install -y sqlite-devel
复制代码
上面是构建 boinc 所需要的依赖库,需在编译之前安装好。
3) 安装图形开发包 - wxWidgets
如果不需要编译图形管理界面,可以跳过此步骤。
在构建 boinc 时,为 configure 脚本添加 --disable-manager 参数即可禁用构建图形界面。
3.1) 安装 GTK2
由于 wxWidgets 依赖 GTK2,所以需要先安装 GTK2 相关的依赖。
- >$ sudo yum install -y gtk2-devel binutils-devel
复制代码
3.2) 构建 wxWidgets
- >$ wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.0.4/wxWidgets-3.0.4.tar.bz2
- >$ tar xjvf wxWidgets-3.0.4.tar.bz2
- >$ cd wxWidgets-3.0.4
- >$ ./autogen.sh
- >$ ./configure
- >$ make -j2
- >$ sudo make install
复制代码
4) 构建 BOINC
- >$ cd /home/user/boinc
- >$ ./_autosetup
- >$ ./configure --disable-server --enable-client CXXFLAGS="-O3 "
- >$ make -j2
复制代码 这里我们只编译客户端,不编译服务端,所以对 configure 脚本添加 --disable-server 参数。
接下来就是等待编译完成啦,然后把编译完成的二进制文件提取到 /home/user/boinc/out 文件夹下。
- >$ mkdir out
- >$ cp client/boinc out
- >$ cp client/boinccmd out
- >$ cp clientgui/boincmgr out
- >$ cp -r clientgui/skins out
- >$ cp -r locale out
复制代码
5) 运行 BOINC
最后一步就是运行 boinc,下面的命令各位要根据自己的 boinc 命令所在的路径自己做相应的修改,还要创建一个数据文件夹(在这里是/home/user/data_boinc)供 boinc 客户端存储任务数据等。
- >$ ./boinc --allow_remote_gui_rpc --daemon --dir /home/user/data_boinc
复制代码 通过 ps 命令确认客户端已启动之后,就可以查看 /home/user/data_boinc/gui_rpc_auth.cfg 文件里面的密码了,然后我们就可以使用这个密码远程管理这个 boinc 客户端啦。
教程就写到这里了,有什么问题欢迎回帖讨论。
参考文献:
获取源代码
构建BOINC
依赖库
GitHub
|
评分
-
查看全部评分
|