gpt4 book ai didi

c - Pdcurses 的 libpdcurses.a 设置

转载 作者:行者123 更新时间:2023-11-30 16:35:49 27 4
gpt4 key购买 nike

我正在开发一个程序,其中使用 i686-w64-mingw32-gcc.exe 使用 PDCurses3.5 函数。当我编译程序时,我不断收到诸如 "undefined reference to 'COLS'" 之类的错误。 , "undefined reference to 'lines'" 。我检查过<curses.h> header 和库包已正确安装。这是我的输入行:

> i686-w64-mingw32-gcc.exe set.o read.o elements.o random.o
> -L../standard/test -lplotfit -lplotget -lgfortran -Wl,--subsystem,console -mwindows -o runtime/mingw/result -lm -static -lws2_32 -lpdcurses

错误的第一部分是:

../standard/bin/mingw/menu.o:menu.c:(.text+0xb): undefined reference to `COLS' 
../standard/bin/mingw/menu.o:menu.c:(.text+0x16): undefined reference to `COLS'
../standard/bin/mingw/menu.o:menu.c:(.text+0x33): undefined reference to `LINES'
../standard/bin/mingw/menu.o:menu.c:(.text+0x47): undefined reference to `MOVE'
../standard/bin/mingw/menu.o:menu.c:(.text+0x74): undefined reference to `initscr'
...

程序似乎无法引用其库文件中的 libpdcurses.a。我做错了什么?

最佳答案

当您使用-lpdcurses时,链接器会在某些预定义位置以及通过-L指定的位置查找libpdcurses.a。但是,默认情况下,该库构建为 pdcurses.a。要链接它,可以直接指定它的位置;例如:

gcc -oprogname.exe progname.c pdcurses.a

gcc -oprog2.exe prog2.c /pdcurses/win32/pdcurses.a

或者,您可以将该库重命名为 libpdcurses.a,然后将其复制到现有搜索路径中的某个位置,或使用 -L:

gcc -oprogname.exe progname.c -lpdcurses

gcc -oprog2.exe prog2.c -L/pdcurses/win32 -lpdcurses

关于c - Pdcurses 的 libpdcurses.a 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48736097/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com