• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            麒麟子

            ~~

            導航

            <2009年2月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            1234567

            統計

            常用鏈接

            留言簿(12)

            隨筆分類

            隨筆檔案

            Friends

            WebSites

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            FlasCC例子研究之HelloWorld

            打開samples/01_HelloWorld,你會發現,只有一個hello.c和Makefile文件。

            打開hello.c,你會更加吃驚,因為只有

            #include <stdio.h>

            int main(int argc, char **argv)

            {

                printf(“Hello World”);

                //這是我加上的,原文沒有。

                return 0;

            }

             

            這完全就是一個普普通通的C語言HELLO WORLD程序。

            在程序中,夾雜著一段注釋

            // flascc comes with a normal BSD libc so everything you would expect to
            // be present should work out-of-the-box. This example just shows a
            // simple message formatted using printf.
            //
            // When compiled as a projector this message will be to stdout just like
            // a normal commandline application. When compiled to a SWF it will be
            // displayed in a textfield on the stage. This behavior is overrideable
            // as you will see in later samples.

             

            大概就是說FLASCC使用的是常規的BSD libc。如果是使用普通的C庫,那你的代碼編寫起來,沒有任何區別。

             

            使用FLASCC編譯時,可以編譯成三種東西, 一種是Projector程序,這種程序是在Cygwin下可以執行的EXE文件。

            一種是swf,這種就是直接可以用FP播放的了。 還有一種是SWC,可以提供給AS3調用。

            代碼本身沒有太多特別的。 我們來看看Makefile的內容。

             

            T01: check
                @echo "-------- Sample 1 --------"
                @echo && echo "First let's compile it as a projector:"
                "$(FLASCC)/usr/bin/gcc" $(BASE_CFLAGS) hello.c -o hello.exe

                @echo && echo "Now lets compile it as a SWF:"
                "$(FLASCC)/usr/bin/gcc" $(BASE_CFLAGS) hello.c -emit-swf -swf-size=200x200 -o hello.swf

            include ../Makefile.common

            clean:
                rm -f hello.swf hello *.bc *.exe

             

            這個Makefile中,第一次是將這個編譯為hello.exe,即剛剛說到的Projector程序。 第二次是編譯為hello.swf.

            可以看出,二者都使用了相同的CFLAGS標記。 我們打開Makefile.common可以看到,BASE_CFLAGS實際上是

            -Werror -Wno-write-strings -Wno-trigraphs

            我們暫時不關注這個。 我們來看看,如果想生成一個projector程序,則和GCC下編譯一個普通的EXE程序沒有區別。而如果是想編譯為SWF,則需要手動指定一些額外的參數。

            -emit-swf -swf-size=200x200

            -emit-swf表示告訴編譯器,目標文件是swf

            -swf-size=200x200則告訴編譯器,最終生成的目標SWF的舞臺大小。

            總的來說,這個比較簡單,雖然沒有什么可看的。還是貼一下效果圖。

            image

            posted on 2013-05-14 00:40 麒麟子 閱讀(452) 評論(0)  編輯 收藏 引用

            国产午夜久久影院| 久久成人精品| 精品多毛少妇人妻AV免费久久 | 久久国产精品一区二区| 国产成人精品久久二区二区| 2021久久精品国产99国产精品| 久久国产亚洲高清观看| 亚洲午夜精品久久久久久人妖| 欧美精品福利视频一区二区三区久久久精品| 精品熟女少妇aⅴ免费久久| 国色天香久久久久久久小说| 精品久久久久久亚洲| 久久亚洲天堂| 国产精品久久久久久影院 | 国产精品久久久久一区二区三区| 国产精品午夜久久| 亚洲狠狠婷婷综合久久久久| 久久99精品久久久久久水蜜桃| 欧美噜噜久久久XXX| 亚洲AV伊人久久青青草原| 九九久久99综合一区二区| 久久久久亚洲av成人网人人软件| 91精品国产高清91久久久久久| 国产精品久久婷婷六月丁香| 99久久精品九九亚洲精品| 99久久人妻无码精品系列 | 久久中文字幕人妻熟av女| 久久精品视频免费| 伊人久久大香线蕉av不卡| 无码人妻少妇久久中文字幕| 国产精品日韩欧美久久综合| 777米奇久久最新地址| 色婷婷久久综合中文久久蜜桃av| 性欧美大战久久久久久久| 久久99精品久久久久久齐齐| 丁香五月综合久久激情| 91秦先生久久久久久久| 青青草原综合久久| 成人a毛片久久免费播放| 国内精品久久久久久中文字幕| 久久免费小视频|