我要編譯寫這一切命令行的一些mysql的C API代碼和疲憊:慶典串和位置參數
gcc main.c -o main `mysql_config --cflags --libs`
我在bash寫了一個shell腳本,並在bash傳遞位置參數:
gcc $1 -o ${"$1":0:2} 'mysql_config --cflags --libs'
但這不起作用。我收到錯誤消息:./compile: line 2: ${"$1":0:-2}: bad substitution
。有人可以告訴我我做錯了什麼嗎?
我得到這個工作的唯一方法是通過分配一個新的變量:
filename=$1;
gcc $filename -o ${filename:0:-2} `mysql_config --cflags --libs`
這是做到這一點的唯一方法或者是有辦法解決我在做什麼錯在第一種情況下?
時候開始學習'make' ......或任何其他構建管理工具... – twalberg
@ twalberg我認爲'make'只適合大型項目。這只是一個小測試程序。謝謝。 – user1527227
雖然它確實爲大型複雜構建提供了最大優勢,但它對於小型單源構建也能很好地工作...... – twalberg