vpath

    1熱度

    1回答

    我試過編寫簡單的makefile進行練習。 我有兩個目錄1.索馬里紅新月會(.C),2.include( .H) ,並試圖定義變量SRCS將包含當前目錄下的所有.c文件 和srcs目錄。 以下是我的Makefile CURDIR = $(shell pwd) OBJDIR = $(CURDIR)/objdir VPATH = $(CURDIR)/srcs SRCS = $(wildcard

    0熱度

    2回答

    有沒有人可以幫助我理解爲什麼GNU make會在下面的例子中考慮「循環依賴」。如果未指定VPATH並且源文件在當前目錄中顯示,則一切正常。 $ cat Makefile VPATH = src src%.o: %.cpp @echo ECHO: [email protected]: $< lib%.o: %.cpp @echo ECHO: [email prote

    1熱度

    1回答

    makefile中的VPATH變量用於指示搜索路徑。但是它的「V」究竟代表什麼? make變量VPATH的值指定了應該搜索的目錄列表。大多數情況下,這些目錄應包含不在當前目錄中的必備文件;但是,請使用VPATH作爲規則的先決條件和目標的搜索列表。

    2熱度

    2回答

    我在一個目錄中有源代碼並且在不同的目錄中有一個makefile。我可以使用make系統的vpath機制編譯代碼。 .o文件正在makefile所在的同一文件夾中創建。但我想將這些.o文件移動到名爲obj的不同目錄中。我試過如下: vpath %.o obj 然而,他們仍然在同一文件夾中生成文件創建。任何人都可以幫我解決這個問題嗎? 這裏是我的一些突出make文件的行: PATH_TO_OBJ: -

    0熱度

    1回答

    我已經VPATH設置如下: vpath %.cpp $(SRC) 現在,如果我要得到被創建的對象的文件列表,它應該不會與下面的工作嗎? COBJS=$(patsubst %.cpp,%.o,$(wildcard *.cpp)) 它不是。我沒有收到任何類型的文件列表,當我運行命令 make --just-print 只顯示目標文件的列表,如果我做到以下幾點: COBJS=$(patsub

    0熱度

    1回答

    我有點奇怪的大小寫,我正在努力弄清楚。我有一個C++項目,我以一些.cpp文件開始,我需要從多個應用程序使用的多個遠程目錄中編譯一些源文件。這並不理想,但這是我的開發組使用的傳統目錄/編譯結構。 其他項目利用VPATH來實現這一點。但是,它們最終會對所鏈接的所需對象列表進行硬編碼,而且這種方法對我來說看起來不夠優雅或靈活。我想動態編譯和鏈接所有內容。另一個潛在的複雜情況是,這些遠程VPATH目錄中

    0熱度

    1回答

    我添加另一條規則一個Makefile合作,試圖建立一個使用痛飲使用JNI 額外的規則是這樣的(從基本解除包功能的Java一個C共享庫的SWIG java的範例之一) java: $(program_C_SRCS) $(SWIG) -java $(SWIGOPT) $(INTERFACEPATH) $(CC) -c $(CFLAGS) $(JAVACFLAGS) $(progra

    0熱度

    1回答

    使用VPATH目前試圖端口Makefile到Android.mk文件,這樣我可以構建一個共享庫與ndk-build 我似乎無法得到VPATH來,雖然做任何事情。 例如 # File: Android.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := example MY_API_SRCS = \

    2熱度

    1回答

    下面的例子生成文件按預期工作,用vpath找到目標文件和源文件。但是,在最後一行,在這裏我告訴做出的另外一個目標文件的依賴,我需要指定目錄的前提文件$(objd)/,否則我得到一個錯誤(請參見下面的代碼中的錯誤消息)。最後一行vpath指令怎麼不足? # Program Name prog = avpar #dirs objd=obj modd=mod # extra places

    0熱度

    1回答

    如何使用AS_INIT_GENERATE生成與configure腳本不在同一目錄中的腳本,特別是如何使VPATH構建得到遵守? 例如,對於含 AC_PREREQ([2.68]) AC_INIT([example],[0.1]) AS_INIT_GENERATED([src/file.sh]) || AS_EXIT AC_OUTPUT 運行命令 ~ $ autoreconf . ~ $