在Linux中一鍵編譯你的C程式

2021-07-24 21:40:01 字數 1663 閱讀 5198

在linux中,除去ide外,最常見的就是使用vim編寫c程式,然後用gcc編譯鏈結成可執行檔案。這樣的話需要在vim,shell中來回切換,還要輸入gcc不同的引數,比較複雜。所以筆者用一下方法一鍵編譯c程式,在這個過程中也學習makefile的編寫以及指令碼的編寫,收穫還是很多的。

編寫makefile是為了省去編譯時輸入的gcc引數,讓make進行自動化編譯。具體makefile的作用和用法,再次就不多做介紹。

cflags := -i$(shell pwd) -wall 

cflags += -o2

obj = $(target).o

obj += $(inc:%.h=%.o)

$(target):$(obj)

gcc $(cflags) $(obj) -o $(target)

%.o : %.c

gcc -c $(cflags) $< #-o $@

.phony:clean

clean:

rm -f *.o *.out

makefile的編寫不是本篇的重點,所以就大致說一下該makefile的作用:target是要生成的二進位制可執行檔案,obj是目標檔案,inc是可能需要的標頭檔案,cflags是c編譯器的引數,target、inc由make指令碼給出。makefile描述了target是怎麼生成的,以及定義了模式規則。make通過這個makefile,就可以用來編譯乙個.c檔案。

make指令碼是方便make編譯。

#!/bin/sh

export target="process_attribute"

echo

$target

export inc="lib.h"

pwd=$pwd

clear

echo

"clean ..."

make clean

echo

-e"\n****** ..."

make

ret=$?

check

()check $ret

exec=$pwd/$target

$exec;

echo

"--------------------------------------------"

make指令碼的作用:在make指令碼中設定要編譯的檔案,以及所需要的標頭檔案,然後就可以執行make命令,如果make成功的話,再列印執行結果。

在vim中輸入:!就可以執行shell命令,所以如果將make指令碼儲存為」make.sh」的話,在vim中輸入」#!./make.sh」,就可以執行make指令碼了。你還可以將」#!./make.sh」設定成快捷鍵,那樣的話,直接按快捷鍵就可以直接編譯,是不是有種在ide中編譯的感覺呢?筆者是在xshell中設定的快捷鍵

這是在vim中執行make.sh指令碼:

這是執行指令碼的結果:

Vim C C 的一鍵編譯

開始用vim差不多有兩個月的時間,一開始用makefile 編譯一整個專案無壓力,但是當寫到單個檔案的時候,編譯就比較麻煩了,每次都得 w gcc o 1.exe 1.c 1非常麻煩.所以我都直接用的code blocks.其實比vim快多了哈哈.但是昨晚折騰病發作,想好好來配置一下,於是花了乙個晚...

在ubuntu16 04中一鍵建立LAMP環境

步驟 1 執行命令apt get update。步驟 2 執行命令apt get install lamp server 步驟 3 在安裝過程中會跳出mysql資料庫 root 使用者密碼設定視窗,按要求輸入密碼 123,按 tab鍵選擇 步驟 4 重複輸入密碼 123,按 tab鍵選中 ok 按回...

Rabbitmq在Linux安裝一鍵部署

首先在linux系統連線好源,然後用root許可權安裝和設定 安裝rabbitmq sudo apt get install rabbitmq server sudo rabbitmqctl list users 檢視使用者 sudo rabbitmqctl list vhosts 檢視虛擬主機 s...