../Thirdparty/DBoW2/lib/libDBoW2.so: undefined reference to `pow@GLIBC_2.29'
时间: 2023-10-01 08:03:39 浏览: 48
这个错误发生的原因是你在编译链接时没有将数学库链接到你的程序中。`pow` 函数是 math.h 头文件中的一个函数,它需要链接到数学库才能正常工作。
如果你使用的是 GCC 编译器,可以在链接参数中添加 `-lm` 来链接数学库,例如:
```
g++ your_program.cpp -lm
```
如果你使用的是 CMake 构建系统,可以在 CMakeLists.txt 文件中添加以下行来链接数学库:
```
target_link_libraries(your_program_name m)
```
这样就能解决这个问题了。
相关问题
error: undefined reference to `pow@GLIBC_2.29'
这个错误可能是因为你的代码中使用了 math.h 库中的 pow 函数,但是链接器找不到该函数的实现。你可以尝试在编译时加上 -lm 选项,告诉链接器链接数学库。例如,如果你使用 gcc 编译,可以这样写:
```
gcc -o your_program your_source.c -lm
```
如果问题仍然存在,可能是因为你的系统中缺少数学库文件,你可以尝试安装该库文件,具体方法取决于你的操作系统。
ntp-4.2.8p15/sntp/utilities.c:63: undefined reference to `pow'
这个错误信息表明在编译链接时找不到函数pow的实现。pow是一个数学函数,需要在使用时链接数学库libm。你可以在编译时加上"-lm"选项,来链接数学库,例如:
```
gcc -o your_program your_source.c -lm
```
如果你使用了Makefile,可以在对应的链接命令中加上"-lm"选项。
```
your_program: your_source.o
gcc -o your_program your_source.o -lm
```
这样就能正确链接数学库,解决问题。