xmake 在構建程式的時候,會去自動檢測系統環境,工程描述等來建立最合適的編譯配置來進行編譯。。
一般情況下,我們只需要執行:
$ xmake
就行了,並且如果工程描述沒有改變,就不會去重新檢測和生成配置。。
但是有時候,我們的編譯需求千奇百怪,不可能一行xmake
就能完全滿足我們的需求,例如:我要在macosx上編譯android程式了,怎麼辦
這個時候就需要手動修改配置:
$ xmake f -p android --ndk=~/file/android-ndk
上面是簡寫,這樣會少敲些字元,如果要可讀性更好些,可以寫全:
$ xmake config --plat=android --ndk=~/file/android-ndk
然後我們繼續執行編譯即可:
$ xmake
如果每次編譯都是相同配置的話,就不需要重新配置了
當然有時候系統環境發生改變,例如之前用的是 gcc, 現在gcc被解除安裝了,裝了clang,那麼快取配置就無效了,這種情況下,xmake還沒有那麼智慧,能夠檢測到進行重配,只能手動加上 -c
引數,強制清楚配置快取,進行重新檢測:
$ xmake f -c
如果有時候遇到些配置上的問題,都可以嘗試加上這個引數,重試下,一般都能解決。。
上述講的都是相對於工程的區域性配置,只對當前工程有效,配置的快取資料都被放置在了當前工程目錄下:
projectdir/.xmake
如果有些配置引數,每次都不變,那就不需要每次都手動輸入一遍了,只需要放置到全域性配置中區就行了,例如引數:--ndk=~/file/android-ndk
我們可以通過全域性配置命令:
$ xmake global --ndk=~/file/android-ndk
或者簡寫方式:
$ xmake g --ndk=~/file/android-ndk
之後每次編譯android的版本,就可以簡化為:
$ xmake f -p android
$ xmake
是不是更方便了哈。。嘿嘿。。
在比如,我要每次強行都使用vs2008這個特定版本,而不使用自動檢測出來的v2015,(如果你裝了兩個vs的話),就可以通過全域性配置,設定到vs2008上去:
$ xmake g --vs=2008
然後編譯的時候執行(注:這裡加上-c
,是因為全域性配置改了,最好強行重新檢測下):
$ xmake f -c
$ xmake
最後,如果需要了解配置的詳細引數,可以執行--help
來了解:
$ xmake f -h
$ xmake g -h