页次: 1
想静态编译一个aria2c放到nas上用用。
然后编译链接出错
```
CXXLD aria2c
/usr/bin/ld: cannot find -lexpat
/usr/bin/ld: cannot find -lnettle
/usr/bin/ld: cannot find -lgmp
./.libs/libaria2.a(util.o): In function `aria2::util::getHomeDir[abi:cxx11]()':
/root/project/aria2-1.24.0/src/util.cc:1393: warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
./.libs/libaria2.a(SocketCore.o): In function `aria2::callGetaddrinfo(addrinfo**, char const*, char const*, int, int, int, int)':
/root/project/aria2-1.24.0/src/SocketCore.cc:1446: warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1862: aria2c] Error 1
make[3]: Leaving directory '/root/project/aria2-1.24.0/src'
make[2]: *** [Makefile:2410: all-recursive] Error 1
make[2]: Leaving directory '/root/project/aria2-1.24.0/src'
make[1]: *** [Makefile:560: all-recursive] Error 1
make[1]: Leaving directory '/root/project/aria2-1.24.0'
make: *** [Makefile:471: all] Error 2
```
在arch上面遇到这种情况你们一般怎么办?
好像arch上面好多东西都没有提供.a的链接库
比如其它人也会遇到类似这样的问题
见 这里
离线
看到这里 , 好像都要去找源码然后编译。
找了几个帖子,貌似解决方法大多都是disable 静态编译。想要编译静态的之能够一个个找源码吗?
有没有像debian之类的 apt-get insatll libxxx-dev 之类简单的解决方法呢?
最近编辑记录 messyidea (2016-07-10 00:28:04)
离线
Arch 大部分官方包已经不再包含静态库了。如果需要,你可以自己重新打包这些库,把 staticlibs 加到 options 中。
不如把动态链接然后把需要的动态库拷过去方便。
离线
Arch 大部分官方包已经不再包含静态库了。如果需要,你可以自己重新打包这些库,把 staticlibs 加到 options 中。
不如把动态链接然后把需要的动态库拷过去方便。
谢啦。还是准备去digitalocean临时开一台debian的vps编译好了。
离线
你也可以用 lxc 弄一个 Debian 或者 CentOS 之类的用啦。
lxc-create -t download -n 名字
然后按提示操作就好。
离线
你也可以用 lxc 弄一个 Debian 或者 CentOS 之类的用啦。
lxc-create -t download -n 名字
然后按提示操作就好。
还没玩过lxc,有空去试试~
离线
页次: 1