首页 > 解决方案 > 在 CodeBlocks 中使用 libnoise

问题描述

我正在尝试libnoise在 CodeBlocks 项目中使用,但在链接库时遇到问题。

这是我的 main.cpp:

#include <iostream>
#include <noise/noise.h>

using namespace noise;

int main(int argv, char *argc[]) {

    module::Perlin myModule;

    return 0;

}

和构建日志:

mingw32-g++.exe -LD:\Development\libnoise\bin -o bin\Debug\NoiseTest.exe obj\Debug\main.o  -m32 -lmingw32  D:\Development\libnoise\bin\libnoise.lib -mwindows
obj\Debug\main.o: In function `main':
D:/Development/NoiseTest/main.cpp:8: undefined reference to `noise::module::Perlin::Perlin()'
obj\Debug\main.o: In function `ZN5noise6module6PerlinD1Ev':
D:/Development/libnoise/include/noise/module/perlin.h:160: undefined reference to `vtable for noise::module::Perlin'
D:/Development/libnoise/include/noise/module/perlin.h:160: undefined reference to `noise::module::Module::~Module()'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
4 error(s), 0 warning(s) (0 minute(s), 0 second(s))

我已libnoise.lib添加到Linker Settings > Link Libraries,我的libnoise.dll项目目录中有,并且我在Search Directories > Linker下添加了 bin 目录,所以我不确定我缺少什么。

标签: c++linkercodeblockslibraries

解决方案


推荐阅读