我只想知道我需要在Makefile.am
中寫入什麼內容才能在Makefile.am
所在的同一目錄中創建一個名爲build
的目錄。如何使用Automake創建一個特定的目錄?
回答
你需要寫:
build:
test -d ${srcdir}/build || mkdir ${srcdir}/build
,但你真的不想這樣做。源目錄應該被認爲是隻讀的。如果你只是想創建一個build目錄命名爲build目錄,只是做
build:
test -d build || mkdir build
仔細想想你的問題:你真的想在同一目錄下創建build
作爲Makefile.am
,或者在當前工作目錄當configure
被調用?這些並不總是相同的事情:GNU編譯系統的目的是支持外的樹構建(有可能只讀$srcdir
),所以最終用戶應該期待以下工作:
$ tar xf autofoo-1.2.tar.gz
$ mkdir autofoo-build
$ cd autofoo-build
$ ../autofoo-1.2/configure
$ make
$ sudo make install
現在,我發現創建目錄的最簡單方法是根本不使用Makefile.am,而是使config.status
這樣做(這是在configure
末尾執行所有模板替換的shell腳本,轉到Makefile.in
分成Makefile
,config.h.in
分成config.h
等等)。在configure.ac
,把以下內容:
AC_CONFIG_COMMANDS([mkdir], [$MKDIR_P build])
優秀的答案,但你可以使用一個比'[mkdir]'更好的*標記*,這是令人困惑的,看起來像一個命令。對於讀者,文檔在那裏:https://www.gnu.org/software/autoconf/manual/autoconf-2.60/html_node/Configuration-Commands.html – fjardon
如果你想要在安裝時創建一個目錄,你該怎麼做?例如,您想要在/ usr/local/lib/mypackagelibdir中創建一個目錄並將其複製到此處。這個目錄不同於普通的對象庫,比如你想拷貝到/ usr/local/lib/site_perl的一些perl模塊boo.pm –
- 1. 如何使用make在特定目錄中創建目標?
- 2. 使用PHP創建一個目錄
- 3. (的automake,libtool的)建立的automake在不同的目錄
- 4. 如何創建將特定文件從一個目錄複製到另一個目錄的程序?
- 5. 如何使用pkginclude_HEADERS和Automake獲取第二個包含目錄?
- 6. 創建一個automake目標,這是一個硬鏈接到另一個目標
- 7. 用c創建一個.txt文件到一個特定的目錄#
- 8. 我如何創建一個目錄?
- 9. 如何創建一個隱藏目錄
- 10. 如何使用put方法使用HTTPURLConnection創建目錄。它總是創建一個不是目錄的文件
- 11. 指定使用automake構建哪個Makefiles
- 12. 使用南特創建目錄
- 13. 如何創建一個特定於燼版本的項目?
- 14. automake創建一個庫和使用它的程序
- 15. 如何創建一個將使用特定類路徑的ClassLoader?
- 16. 使用Ffmpeg從特定目錄寫入另一個特定目錄
- 17. 如何使用Web客戶端創建一個目錄在asp.net
- 18. 如何使用Java在TOMCAT中創建一個目錄?
- 19. 如何使用nerdtree創建一個目錄
- 20. Java:如何使用java.nio.file.FileSystem創建一個zip目錄
- 21. 如何使用fs.mkdir在節點js中創建一個目錄?
- 22. 使用git bundle創建備份到特定目錄的repos?
- 23. 如何在當前工作目錄中創建一個目錄,使用Java
- 24. 如何使用Django的`authenticate()`爲特定的組創建特定的登錄?
- 25. 創建一個目錄
- 26. 如何在Android中的特定目錄中創建.txt文件?
- 27. 如何使用特定的GUID創建新記錄
- 28. 如何使用getDir()創建目錄
- 29. 如何使用StreamWriter創建目錄?
- 30. 如何使用URI(Android)創建目錄?
事情是,我已經嘗試過,所以我不明白爲什麼我無法做到這一點。如我錯了請糾正我。我運行: 1)./autogen.sh 2)運行./configure 3)使 但我剛剛得到這個:「對象目錄‘構建/’無法找到」 – makeMonday
什麼是你的autogen.sh ?試圖引用'build'目錄的Makefile.am中有什麼?通常,用戶會用'mkdir build;光盤建立;/path/to/configure && make'。 –
在Autogen中沒有什麼特別的。但在Makefile.am中,我試圖編譯我所有的files.c,並將它們放在這個新的構建目錄中,並且像二進制文件的共享庫一樣。 事情是我手動創建「build」dir,這很容易,但我認爲我可以在AM上做到。 – makeMonday