[巴法络] 自己编译aria |
本帖最后由 weyoung 于 2013-3-27 10:20 编辑
http://www.gebi1.com/thread-26697-1-1.html这个帖子提供了aria 1.16.3的可执行文件下载,前两天我看到官网的版本是1.16.4,今天上来已经是1.16.5了。。 http://forum.buffalo.nas-central ... 3&view=previous,这个是老外论坛上找到的编译步骤,可以在ls-wvl上直接编译源码,简单说明下步骤(###是我添加的说明)。以下是1.16.5为例 ipkg install gcc make ipkg install gnutls zlib c-ares ###上面两步是安装编译环境 mkdir /mnt/disk1/share/aria ###创建一个临时文件夹 cd /mnt/disk1/share/aria wget http://sourceforge.net/projects/ ... .5.tar.bz2/download ###将最新版本的源代码下载到临时文件夹下。最新版本可以到官网(http://aria2.sourceforge.net/)去找。 tar xvfj *.bz2 ###将文件解压 cd aria2-1.16.5 ###进入解压后的目录 ###以下三个步骤的作用,google得到的: ###./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC ###make是用来编译的,它从Makefile中读取指令,然后编译。 ###make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。 ###另外请注意这几个步骤都比较慢,configure 要几分钟,make要十几分钟。 ./configure --with-libgcrypt-prefix make make install ###编译完成,将编译后的文件拷贝到opt目录下 cp /mnt/disk1/share/aria/src/aria2c /opt/bin/. 最后重启程序,通过aria2c -v可以查看版本号。 结束,希望对大家能有用。 |
本帖最后由 zal1412 于 2013-3-28 23:29 编辑
小白一名,升级了,结果不能开机自动启动了。。(原来的启动文件没动过) 希望LZ能帮忙解决一下,谢谢! |
你的这个问题,正是我要编译新版本aria用的原因之一,新版本有两个改进: 1). 支持将配置写在配置文件中,启动时不要再指定那些参数。 2). 支持将未完成的下载写到Session文件中保存,机器重启后会自动还原。 我的配置: 1. 配置一个aria2Start.sh启动文件,内容如下:
2. 配置一个aria2Shutdown.sh,用于关闭aria,内容如下:
|
make all-recursive make[1]: Entering directory `/volume1/temp/aria2-1.16.5' Making all in po make[2]: Entering directory `/volume1/temp/aria2-1.16.5/po' make[2]: Leaving directory `/volume1/temp/aria2-1.16.5/po' Making all in intl make[2]: Entering directory `/volume1/temp/aria2-1.16.5/intl' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/volume1/temp/aria2-1.16.5/intl' Making all in lib make[2]: Entering directory `/volume1/temp/aria2-1.16.5/lib' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/volume1/temp/aria2-1.16.5/lib' Making all in deps make[2]: Entering directory `/volume1/temp/aria2-1.16.5/deps' Making all in wslay make[3]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay' make all-recursive make[4]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay' Making all in lib make[5]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay/lib' Making all in includes make[6]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay/lib/includes' make[6]: Nothing to be done for `all'. make[6]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay/lib/includes' make[6]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay/lib' make[6]: Nothing to be done for `all-am'. make[6]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay/lib' make[5]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay/lib' Making all in tests make[5]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay/tests' make[5]: Nothing to be done for `all'. make[5]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay/tests' make[5]: Entering directory `/volume1/temp/aria2-1.16.5/deps/wslay' make[5]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay' make[4]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay' make[3]: Leaving directory `/volume1/temp/aria2-1.16.5/deps/wslay' make[3]: Entering directory `/volume1/temp/aria2-1.16.5/deps' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/volume1/temp/aria2-1.16.5/deps' make[2]: Leaving directory `/volume1/temp/aria2-1.16.5/deps' Making all in src make[2]: Entering directory `/volume1/temp/aria2-1.16.5/src' /bin/ash ../libtool --tag=CXX --mode=link g++ -g -O2 -o aria2c main.o optio n_processing.o version_usage.o libaria2c.a ../deps/wslay/lib/libwslay.la -lrt -L/opt/lib -lgcrypt -lgpg-error -L/opt/lib -lxml2 -lz -lm libtool: link: g++ -g -O2 -o aria2c main.o option_processing.o version_usage.o libaria2c.a ../deps/wslay/lib/.libs/libwslay.a -lrt -L/opt/lib /opt/lib/libgcryp t.so /opt/lib/libgpg-error.so -lxml2 -lz -lm -Wl,-rpath -Wl,/opt/lib -Wl,-rpath -Wl,/opt/lib main.o: In function `__exchange_and_add': /opt/lib/gcc/i686-linux-gnu/4.2.1/../../../../include/c++/4.2.1/ext/atomicity.h: 51: undefined reference to `__sync_fetch_and_add_4' /opt/lib/gcc/i686-linux-gnu/4.2.1/../../../../include/c++/4.2.1/ext/atomicity.h: 51: undefined reference to `__sync_fetch_and_add_4' /opt/lib/gcc/i686-linux-gnu/4.2.1/../../../../include/c++/4.2.1/ext/atomicity.h: 51: undefined reference to `__sync_fetch_and_add_4' /opt/lib/gcc/i686-linux-gnu/4.2.1/../../../../include/c++/4.2.1/ext/atomicity.h: 51: undefined reference to `__sync_fetch_and_add_4' main.o: In function `__exchange_and_add': /volume1/temp/aria2-1.16.5/src/SharedHandle.h:176: undefined reference to `__syn c_fetch_and_add_4' main.o:/opt/lib/gcc/i686-linux-gnu/4.2.1/../../../../include/c++/4.2.1/ext/atomi city.h:51: more undefined references to `__sync_fetch_and_add_4' follow collect2: ld returned 1 exit status make[2]: *** [aria2c] Error 1 make[2]: Leaving directory `/volume1/temp/aria2-1.16.5/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/volume1/temp/aria2-1.16.5' make: *** [all] Error 2 |