《自製編譯器》安裝cbc遇到的問題以及解決的方法

2021-09-03 08:40:05 字數 1325 閱讀 5229

最近在學習編譯原理內容,找到了一本不錯的書,自製編譯器。相對於龍書,這本書的更加的講述的更加的接地氣。

下面是在第一章安裝cbc編譯器時遇到的問題。

這裡使用的是32位的ubuntu16.04系統,64位的教程安裝教程,該編譯器使用的是的x86的指令集。樹莓派使用的為armhf,無法適用,想使用樹莓派的小夥伴無望了(心疼自己1秒)

sudo ./install.sh
顯示下面的資訊

prefix=/usr/local/cbc

mkdir -p /usr/local/cbc/bin

install -m755 bin/cbc /usr/local/cbc/bin

mkdir -p /usr/local/cbc/lib

cp lib/cbc.jar lib/libcbc.a /usr/local/cbc/lib

rm -rf /usr/local/cbc/import

cp -r import /usr/local/cbc/import

cbc successfully installed as /usr/local/cbc/bin/cbc

然後繼續按照書上的步驟進行cbc hello.cb,但是顯示cbc不存在。

需要進行下面的操作,cbc才能夠正常的使用,此處參考 ,但是按照這個教程仍是不可行。

下面為查閱相關的方法,解決的方案。

sudo ln -s [具體的位置]/cbc-1.0/bin/cbc   /usr/local/bin/cbc
執行命令cbc hello.cb,出現下面的錯誤

/usr/bin/ld: cannot find /usr/lib/crt1.o: no such file or directory

/usr/bin/ld: cannot find /usr/lib/crti.o: no such file or directory

cbc: error: /usr/bin/ld failed. (status 1)

cbc: error: compile error

通過查詢,發現crt*檔案位於/usr/lib/i386-linux-gnu資料夾下,所以

sudo cp /usr/lib/i386-linux-gnu/crt*  /usr/lib/

自製編譯器

這學期新開了一門編譯原理的課,為了提高動手能力,我決定自己動手做乙個編譯器 材料 自己動手寫編譯器鏈結器 優點 裡面的 是用 語言寫的,方便入手 看了之後發現好多不會的檔案操作函式。原始碼 編譯器 龍書,虎書不建議看,看了雲裡霧裡 心得 先說一些非技術的東西 自己動手做之後才發現這些小專案和平時做的...

自己安裝交叉編譯器遇到的問題

今天搭建開發環境,安裝交叉編譯器時遇到了點小問題 test error while loading shared libraries libexampleso.so.0 cannot open shared object file no such file or directory 這是因為沒有把動...

ubuntu安裝交叉編譯器 安裝交叉編譯器

2 安裝方法二 1 安裝方法一 開啟ubuntu終端 使用sudo apt list gcc arm 可以檢視所有的交叉編譯器,假設安裝gcc arm linux gnueabihf,則使用sudo apt get install gcc arm linux gnueabihf就裝好了。參考 2 安...