zoukankan      html  css  js  c++  java
  • Lua1.0 编译准备

    转载出处:http://my.oschina.net/xhan/blog/305943

    从官网 www.lua.org/ftp/lua-1.0.tar.gz 下代码。
    如何编译,ReadMe 里有这样的说明:

    The code compiles and runs in RedHat 5.2 with gcc 2.7.2.3. It may not run in
    newer systems, because it assumes that stdin and stdout are constants, though
    ANSI C does not promise they are. If make fails, try using the fixed modules
    provided in the "fixed" directory. To see the differences (which are really
    quite minor), do "make diff".

    注意最后一句,也就是把 fixed 目录中的三个文件拷贝到外面覆盖就好了。
    fixed 目录中的代码改动如下:
    ------------------------------
    lua.c:
    33 行
    void main (int argc, char *argv[])
    改为
    int main (int argc, char *argv[])

    52 行
    添加 return 0;
    ------------------------------
    iolib.c
    20 行
    static FILE *in=stdin, *out=stdout;
    改为
    static FILE *in=NULL, *out=NULL;

    395行
    添加  in=stdin; out=stdout;

    ------------------------------
    lex_yy.c
    20 行
    FILE *yyin = {stdin}, *yyout = {stdout};
    改为
    FILE *yyin = {NULL}, *yyout = {NULL};

    为什么这样改,ReadMe 里有说明“It may not run in
    newer systems, because it assumes that stdin and stdout are constants, though
    ANSI C does not promise they are. ”

    这里使用 VS2010 进行分析,建工程,把所有的源文件加入工程,编译,运行。
    准备工作完成。
    后来试了一下,在 Win7 里用 MinGW,在 Linux 里 gcc 也都可以以编译成功。

  • 相关阅读:
    在mvc中,使用a链接,怎么转到别的html中
    mvc中怎么读取值传到后台中方法之一(表单传值法)
    mvc中怎么带参传递
    sqlserver去掉字符串结尾的全角空格并用半角替换
    Ajax学习笔记
    Ajax级联实例
    [转]js导航栏处于选中状态
    asp.net GridView的使用
    keycode大全
    IsPostBack的使用
  • 原文地址:https://www.cnblogs.com/vd01/p/4931234.html
Copyright © 2011-2022 走看看