aria2编译安装make出错误缺少文件
Tofloor
poster avatar
ljbaaa
deepin
2018-06-21 10:07
Author
etrandom_linux.c:40:10: fatal error: sys/random.h: 没有那个文件或目录
#include
          ^~~~~~~~~~~~~~
compilation terminated.
Makefile:2276: recipe for target 'getrandom_linux.lo' failed
make[3]: *** [getrandom_linux.lo] Error 1
make[3]: Leaving directory '/home/long/aria2/src'
Makefile:2341: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/long/aria2/src'
Makefile:556: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/long/aria2'
Makefile:467: recipe for target 'all' failed
make: *** [all] Error 2
long@long-PC:~/aria2$


Reply Favorite View the author
All Replies
avatar
ljbaaa
deepin
2018-06-21 10:08
#1
http://aria2.github.io/manual/en/html/README.html#introduction  我是按照这个网络的教程安装的,求大神帮助解决。
Reply View the author
avatar
march_happy
deepin
2018-06-21 14:48
#2
本帖最后由 march_happy 于 2018-6-21 06:49 编辑

您用的是 Deepin 吗?应当 GCC 版本太低…这种问题我只在一个老掉牙的 openVZ 服务器上遇到过,因为内核版本是 2.8,没法升级 GCC…
Reply View the author
avatar
march_happy
deepin
2018-06-21 14:49
#3
这个预编译好的版本您不妨试试?  https://github.com/q3aql/aria2-static-builds  
Reply View the author
avatar
woodelf
deepin
2018-06-21 15:26
#4
march_happy 发表于 2018-6-21 06:48
您用的是 Deepin 吗?应当 GCC 版本太低…这种问题我只在一个老掉牙的 openVZ 服务器上遇到过,因为内核版 ...

没记错的话,deepin的gcc版本是7,而且Linux也从没有过2.8内核,2.6.39以后就直接是3.0了。
LZ的错误看起来是缺少头文件,先安装下与内核版本一致的linux-headers包,或者可用apt-file看下random.h属于哪个包。
Reply View the author
avatar
rainyl
deepin
2018-06-21 17:49
#5
巧了,这个问题我前几天编译也有,你直接把src目录下有个gettandom.c(应该是这个名字),里面的那一行注释掉,就可以了)
Reply View the author
avatar
rainyl
deepin
2018-06-21 17:50
#6
这个问题是缺少include/sys下的random.h头文件,找了这个头文件搞进去也是另一个方法,不过我直接注释掉也没问题,他的程序只要包涵一个random.h就可以了,这个在include下有
Reply View the author
avatar
ljbaaa
deepin
2018-06-22 06:30
#7
rainy_liu 发表于 2018-6-21 09:50
这个问题是缺少include/sys下的random.h头文件,找了这个头文件搞进去也是另一个方法,不过我直接注释掉也 ...

好专业啊,可是我还是不懂,我的理解是要忽略这个文件吗?注释就是在改行首添加#吗?
Reply View the author
avatar
ljbaaa
deepin
2018-06-22 06:31
#8
march_happy 发表于 2018-6-21 06:48
您用的是 Deepin 吗?应当 GCC 版本太低…这种问题我只在一个老掉牙的 openVZ 服务器上遇到过,因为内核版 ...

我的deepin已经升级到最新版的15.6了。
Reply View the author
avatar
rainyl
deepin
2018-06-27 19:38
#9
https://bbs.deepin.org/post/158665
好专业啊,可是我还是不懂,我的理解是要忽略这个文件吗?注释就是在改行首添加#吗? ...

使用C语言的注释方法,在那一行前面加两个斜线   //
Reply View the author