正在尝试将conio链接到我的makefile。无法找到生成返回-lconio
我正在写我的第一个makefile。我想把两个文件链接在一起。测试c和主测试c。c包括一个test.h以及一个头文件conio.h 到目前为止,我已经尝试将头文件添加到make命令失败后返回的路径中,以及将路径添加到命令本身的头文件中。作为参考,我使用gitbash。要将make命令添加到gitbash,我需要将其直接添加到gitsmingw的bin文件夹中,但它正在查找程序文件x86/mingw,其中也包含conio.h 我需要把它链接到某种图书馆吗。在这件事上任何帮助都将不胜感激正在尝试将conio链接到我的makefile。无法找到生成返回-lconio,c,makefile,C,Makefile,我正在写我的第一个makefile。我想把两个文件链接在一起。测试c和主测试c。c包括一个test.h以及一个头文件conio.h 到目前为止,我已经尝试将头文件添加到make命令失败后返回的路径中,以及将路径添加到命令本身的头文件中。作为参考,我使用gitbash。要将make命令添加到gitbash,我需要将其直接添加到gitsmingw的bin文件夹中,但它正在查找程序文件x86/mingw,其中也包含conio.h 我需要把它链接到某种图书馆吗。在这件事上任何帮助都将不胜感激 gcc m
gcc main.o test.o -o test -lconio
C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/bin/ld.exe: cannot find -lconio
collect2.exe: error: ld returned 1 exit status
make: *** [Makefile:7: main] Error 1
main.c
#include "test.h"
int main() {
char c = inputChar();
return 0;
}
测试c
#include "test.h"
#include <conio.h>
void printChar(char casd)
{
_putch(casd);
}
void printString(const char *c) {
for (const char* s = c; *s != 0; s++) {
printChar(*s);
}
printChar('\n');
}
char inputChar() {
char c = _getch();
printChar(c);
return c;
}
h(自从我使用Borland C之后,我想还没有看到过这一点;控制台输入输出)不是标准库的一部分。您应该考虑使用STDIO .h函数。在标准库中不需要-l任何东西;编译器已经做到了这一点,因为您不需要在Windows下链接任何东西来获取conio,或者至少它仍然支持什么。删除
-lconio
,让我们看看您真正收到了什么类型的错误消息。@user4581301谢谢!我是个白痴,一开始我不需要它。感谢conio.h的可能副本(自从我使用Borland C以来,我还没有看到过它;我想控制台输入输出)不是标准库的一部分。您应该考虑使用STDIO .h函数。在标准库中不需要-l任何东西;编译器已经做到了这一点,因为您不需要在Windows下链接任何东西来获取conio,或者至少它仍然支持什么。删除-lconio
,让我们看看您真正收到了什么类型的错误消息。@user4581301谢谢!我是个白痴,一开始我不需要它。谢谢,可能的副本可能的副本
void printChar(char);
void printString(const char *c);
char inputChar();