描述
我的代码中使用了libcstl
库,在代码中声明:
#include <cstl/cmap.h>
可是出现这个问题,无法识别libcstl
库里调用的函数,如下图:
猜想
-
#include <cstl/cmap.h>
这句话不报错说明库已经装好,环境变量也没有问题。 - 可能是链接时的错误。
解决
查看Makefile
文件发现忘记添加cstl的链接库了。
-lcstl
原来的代码是:
mpicc -c main.c -std=c99 -lstdc++ -fopenmp -lm -o main.o
应该改为:
mpicc -c main.c -std=c99 -lcstl -lstdc++ -fopenmp -lm -o main.o
如上图,改好之后就解决了!