作者mikukonn (mikukon)
看板C_and_CPP
標題[問題] 實作編譯器
時間Fri Nov 13 22:07:32 2015
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Linux
問題(Question):
新手發問,如有言詞冒犯,請多多包涵
最近心血來潮想自己實作一個C compiler,於是去查了許多資料
找到最詳細的文章是以下這個
製作過程:
http://www.wilfred.me.uk/blog/2014/08/27/baby-steps-to-a-c-compiler/
我使用的example (babyc) :
https://github.com/Wilfred/babyc
我下載了裡面的專案,並且執行了裡面的Makefile這個檔案
所有的連結檔與 "babyc" 都正常出現
但是編譯後的 "babyc" 並沒有辦法如同文章裡面正常的return NUMBER
Makefile出來的一些警告訊息如下圖
http://imgur.com/35rAp3y
我很不信邪的把裡面的指令又輸入了一次
http://imgur.com/qzxe77C
看起來warning都出現在gcc的編譯階段
到最後echo $? 都是0
裡面原本的.s檔案出來都正常
是我的GCC需要更新
還是這個專案就只適用於windows呢
感謝各位大大抽空回答
P.S.如有言詞不妥或是問的方式,方法不對
請告訴我,我下次會改進。
*
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.216.210.210
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1447423657.A.E6A.html
推 suhorng: Makefile 的用法是: $ make 11/13 23:33
→ suhorng: 先試試看這樣會跑出什麼? 11/13 23:33
→ Neisseria: Makefile 使用方法錯了,是使用 make 這個指令 11/14 04:09
→ Neisseria: 要 compile 這個程式,要另外安裝 bison, flex, clang 11/14 04:10
→ Neisseria: 這本應該算比較好消化的 11/14 04:18
→ mikukonn: 謝謝大大們 11/14 08:13
推 suhorng: 你的電腦是 32 還是 64? 64 的話要用文章裡的指令 11/14 10:31
→ suhorng: 然後我不確定同 shell 檢查 exit status 有沒有差 11/14 10:36