C语言Bug记录

作者: love至於终老 | 来源:发表于2018-02-23 09:47 被阅读48次

在学习用C语言写个简单的Lisp语言

源代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <editline/readline.h>
#include <editline/history.h>

int main(int argc, char *argv[]) {
    puts("Lispy Version 0.1");
    puts("Press Ctrl+c to Exit\n");
    while(1){
        char* input = readline("lispy> ");
        add_history(input);
        printf("no you're a %s\n",input);
        free(input);
    }
    return 0;
}

bug1:fatal error: 'editline/history.h' file not found

解决:

  1. 移除#include <editline/history.h>

出现:

Undefined symbols for architecture x86_64:
  "_add_history", referenced from:
      _main in Untitled 4-73916f.o
  "_readline", referenced from:
      _main in Untitled 4-73916f.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

解决:
增加编译参数:
-std=c99 -Wall -ledit

-Wall 是将产生尽可能多的警告信息 ,-ledit是链接edit库(猜测)

记录一个搜索问题,当我谷歌 gcc -Wall的时候没有搜到想要的信息,想起几天前看的搜索技巧,可能把-后的参数去除了,于是再次搜索"gcc -Wall",加了引号,搜到了结果,注:mac是用cc编译的,但是cc -Wall没有搜索想要的信息,于是换成了gcc

相关文章

  • C语言Bug记录

    在学习用C语言写个简单的Lisp语言 源代码如下: bug1:fatal error: 'editline/his...

  • c语言记录

    # c语言 ## 一 语法 ### 第一章 类型,运算符与表达式 #### 1.变量 ##### 1.1 变量名 ...

  • C语言基础知识记录

    C语言基础知识记录

  • C语言上课记录

    第一次晚自习的课程 第一大点: C语言的起源 语言的基本结构: 第二大点: 输入:scanf("控制字符",&接收...

  • C语言记录日志

    查日志一直是调试问题的重要途径,那么就需要详细完备的日志记录才能提供有用信息。最好包括哪个文件、哪行、哪个函数等信...

  • BUG :warning C4047: 'functio

    C语言初学遇到的bug: Compile(Ctrl+F7)出现警告: 运行崩溃: 解决方式://逆序输出数组处的 ...

  • 玄学Bug集合

    2、C语言中,用scanf 为 unsigned char 变量赋值引发的神奇bug。环境Win10,VS2019...

  • iOS使用小bug整理[持续更新]

    此篇文章是记录工作中出现的bug,以及bug的解决方法。 1、# iOS使用系统的地图定位时,手机系统语言为英文时...

  • C语言编程风格!风格决定Bug

    关于C语言的编程风格,不同的书上有不同的推荐,不同的公司有不同的要求。做了一下基本规范说明。 1、变量定义 在定义...

  • 原来你是这样的程序猿,只有程序猿懂得!!!!(哈哈哈哈哈)

    请各位猿类慢慢点开。。。。。。。。。。。。。。。。当年学C语言的过程 初次接触生产环境 敲代码,调bug的你 看自...

网友评论

    本文标题:C语言Bug记录

    本文链接:https://www.haomeiwen.com/subject/gnbtxftx.html