我正在尝试运行此代码,但编译器失败:对“readline”的 undefined reference 和对“add_history”的 undefined reference 。我正在使用 CodeBlocks。这是我的代码:
#include <stdio.h>
#include <stdlib.h>
#include <readline/readline.h>
#include <readline/history.h>
int main()
{
char *buf;
while((buf = readline("\n >> "))!=NULL)
{
if (strcmp(buf,"quit")==0)
break;
printf("[%s]\n",buf);
if (buf[0]!=0)
add_history(buf);
}
free(buf);
return 0;
}
最佳答案
好的,只需确保安装了 readline 的开发文件,您需要以 root 用户身份运行它
# apt-get install libreadline-dev
正如评论中提到的那样。
接下来,转到Project->Build Options
菜单,弹出一个对话框
然后转到链接器设置
选项卡
现在只需单击添加
按钮,然后在弹出的对话框中输入readline
单击Ok
,然后尝试构建,它应该可以工作。
关于C- Readline() undefined reference ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27493708/