我正在尝试编译以下代码:
#include <cstdlib>
#define HAVE_STRUCT_TIMESPEC
#include <mgl2/mgl.h>
using namespace std;
int main() {
mglGraph gr;
gr.FPlot("sin(pi*x)");
gr.WriteFrame("test.png");
return 0;
}
我正在使用Netbeans IDE,Win 10 64x ....但一直出现此错误:
感谢您的帮助。
cd'C:\ Users \ SAQERpc \ Documents \ NetBeansProjects \ Plotting'
C:\ MinGW \ msys \ 1.0 \ bin \ make.exe -f Makefile CONF =调试
“ /C/MinGW/msys/1.0/bin/make.exe” -f nbproject / Makefile-Debug.mk QMAKE = SUBPROJECTS = .build-conf
make.exe [1]:输入目录/c/Users/SAQERpc/Documents/NetBeansProjects/Plotting'
"/C/MinGW/msys/1.0/bin/make.exe" -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/plotting.exe
make.exe[2]: Entering directory
/ c / Users / SAQERpc / Documents / NetBeansProjects / Plotting'
mkdir -p build / Debug / MinGW-Windows
rm -f“构建/调试/MinGW-Windows/main.o.d”
g ++ -c -g -MMD -MP -MF“ build / Debug / MinGW-Windows / main.o.d” -o build / Debug / MinGW-Windows / main.o main.cpp
mkdir -p dist / Debug / MinGW-Windows
g ++ -o dist / Debug / MinGW-Windows / plotting build / Debug / MinGW-Windows / main.o -lmgl
build / Debug / MinGW-Windows / main.o:在函数ZN8mglGraphC1Eiii':
c:/mingw/include/mgl2/mgl.h:39: undefined reference to
_ imp___ZTV8mglGraph'中
c:/mingw/include/mgl2/mgl.h:42:对_imp__mgl_create_graph_gl'
c:/mingw/include/mgl2/mgl.h:48: undefined reference to
_ imp__mgl_create_graph'的未定义引用
build / Debug / MinGW-Windows / main.o:在函数ZN8mglGraphD1Ev':
c:/mingw/include/mgl2/mgl.h:53: undefined reference to
_ imp___ZTV8mglGraph'中
c:/mingw/include/mgl2/mgl.h:53:对_imp__mgl_use_graph'
c:/mingw/include/mgl2/mgl.h:53: undefined reference to
_ imp__mgl_delete_graph'的未定义引用
build / Debug / MinGW-Windows / main.o:在函数ZN8mglGraph11SetFontSizeEd':
c:/mingw/include/mgl2/mgl.h:122: undefined reference to
_ imp__mgl_set_font_size'中
build / Debug / MinGW-Windows / main.o:在函数ZN8mglGraph10WriteFrameEPKcS1_':
c:/mingw/include/mgl2/mgl.h:399: undefined reference to
_ imp__mgl_write_frame'中
build / Debug / MinGW-Windows / main.o:在函数ZN8mglGraph5FPlotEPKcS1_S1_':
c:/mingw/include/mgl2/mgl.h:1973: undefined reference to
_ imp__mgl_fplot'中
collect2.exe:错误:ld返回1退出状态
make.exe [2]: * [dist / Debug / MinGW-Windows / plotting.exe]错误1
make.exe [2]:离开目录/c/Users/SAQERpc/Documents/NetBeansProjects/Plotting'
make.exe[1]: *** [.build-conf] Error 2
make.exe[1]: Leaving directory
/ c / Users / SAQERpc / Documents / NetBeansProjects / Plotting'
make.exe“:* [.build-impl]错误2
建立失败(退出值2,总时间:2秒)
答案 0 :(得分:1)
您需要告诉链接程序一个包含所有mathGL函数的库名称。在Netbeans 8.2中,您可以通过以下方式进行操作(我假设您的项目是“ C / C ++应用程序”):
最后一个名为“选择选项”的弹出窗口应如下所示:
答案 1 :(得分:0)
也尝试
Open your project properties
Click "Linker" in the left pane
Find "Libraries" line and click button with "..." on its right side
Click "Add option..." in the right pane
Select "Other Option" and type "-lodbc"
Click "Ok"
Rebuild your project