我在Impish
,并安装了最新版本的,通过libcap-ng-dev
编译gcc 11.2
Visual Studio Remote Linux
以下程序无法静态链接
#include <cap-ng.h>
int main()
{
capng_have_capability(0, 0);
}
以下是构建输出:
1>/usr/bin/ld : error : really/long/path/main.o: in function `main':
1>main.c : error : (.text.startup+0xd): undefined reference to `capng_have_capability'
1>collect2 : error : ld returned 1 exit status
Here are the linker flags:
-o"really/long/path/out" "3600000" -Wl,-z,relro -Wl,-z,noexecstack -Wl,--no-undefined "g++ -static" -l"cap" -l"audit" -Wl,-L"/usr/lib/x86_64-linux-gnu" -Wl,-z,now
添加-lcap
不会改变输出。
答案1
发现问题,我只需添加-lcap-ng
。