zoukankan      html  css  js  c++  java
  • 跨平台MakeFile生成的软件--PreMake

    出处:http://tomlau-2000.blog.sohu.com

    这款叫做PreMake的开源软件可以自动生成多个平台的MakeFile,比起其它的MakeFile生成软件(qmake, cmake),它最大的特点应该是它的工程文件其实是使用LUA语言编写的脚本,这样一来,它的工程文件可以拥有非常强大的表达能力。
    PreMake的官方网站是:http://premake.sourceforge.net。可以下载到它的最新版本,仅仅一个可执行文件,随便把它解压缩到一个目录就可以了。
    下面来个实例。
    使用文本编辑器编写下面一段C代码:
    #include <stdio.h>

    void main()
    {
     printf("Hello world! ");
    }
    保存为main.c文件。
    使用文本编辑器编写工程文件:
    project.name = "HelloWorld"
    project.config["Debug"].bindir   = "bin/debug"
    project.config["Release"].bindir = "bin/release"

    package = newpackage()
    package.name = "HelloWorldApp"
    package.kind = "exe"
    package.language = "c"
    package.files = {
      matchrecursive("*.h", "*.c")
    }
    保存为premake.lua文件。
    打开控制台,切换到这两个文件所在的目录,然后输入下面的命令:
    premake --target vs2005 --os windows --file premake.lua
    PreMake输出如下信息:
    Generating Visual Studio 2005 solution and project files:
    ...HelloWorldApp
    并在工程所在目录下生成了如图所示的文件:


     
    打开HelloWorld.sln,编译一下里面的HelloWorldApp工程。我们会看到,生成的obj和exe文件都放到了我们预先指定的目录内。其强大的matchrecursive()函数,使得我们无需为每一个新加入的文件都更改一下工程文件了,方便吧?

  • 相关阅读:
    javascript实现图片的淡入淡出
    javascript实现(分享到xxx)的小实例
    javascript中奇怪事件
    javascript方式实现无缝滚动(两种方式)
    jquery 函数的3种用法
    jquery方法的隔行变色
    DOM对象与jquery对象
    入口函数的标准
    真数组与伪数组的区别
    创建正则表达式对象
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13318319.html
Copyright © 2011-2022 走看看