簡體   English   中英

如何使用.cpp文件的Makefile隱式規則?

[英]How to use Implicit rule for Makefile with .cpp files?

Makefile中的C ++文件中有一個隱含規則,它使用.C或.cc擴展名。 但我通常有C ++源代碼的.cpp文件擴展名。

如何使用.cpp文件的Makefile的隱式規則?

參見隱式規則目錄

編譯C ++程序

no是從n.cc,n.cpp或nC自動生成的,配方格式為'$(CXX)$(CPPFLAGS)$(CXXFLAGS)-c'。 我們建議您對C ++源文件使用后綴“.cc”而不是“.C”。

這是來自GNU make docs

模式規則先決條件中的'%'代表與目標中的'%'匹配的相同詞干。 為了應用模式規則,其目標模式必須與所考慮的文件名匹配,並且其所有先決條件(在模式替換之后)必須命名存在或可以生成的文件。 這些文件成為目標的先決條件。 因此,形式的規則

  %.o : %.c ; recipe... 

指定如何將文件設為no,並將另一個文件nc作為其先決條件,前提是存在或可以創建nc。

所以你可以嘗試類似的東西

%.o : %.cpp %.hpp
   $(CC) $(CFLAGS) $@

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM