我想從git.Tried bbappend下載軟件包之後添加新的c文件來代替文件,但原始文件仍然存在。也修改了src_uri + = file://fileone.c但那也不是覆蓋文件。 任何建議將是很大的幫助在yocto環境中添加新文件來代替現有文件
問候 Mayank
我想從git.Tried bbappend下載軟件包之後添加新的c文件來代替文件,但原始文件仍然存在。也修改了src_uri + = file://fileone.c但那也不是覆蓋文件。 任何建議將是很大的幫助在yocto環境中添加新文件來代替現有文件
問候 Mayank
所以原來的C文件是發行tar包(或混帳,或任何釋放來自)的一部分,並且要替換該文件與你自己配置和編譯之前發生?
替換整個文件只是您可能想要執行源文件的任何較小更改的特例,因此請執行以下操作:創建補丁替換文件並添加補丁SRC_URI += file://replace-file-with-my-file.patch
。
我用這個工作流程(在項目源目錄,例如狹小/建設/ tmp目錄/工作/ corei7-64-狹小Linux的/我的項目):
# initialize git (only if this is not a git repo already)
git init
git add *
git commit -m "original code"
# <--- here you should replace the file
git commit -a -m "Replace file with a better file"
git format-patch -1
現在你應該有一個補丁文件,您可以將其複製到正確的配方目錄中。
這是devtool modify
可以是非常有用的,如果您使用的jethro(2.0)版本或更高版本。假設您已經採購的環境設置腳本:
devtool modify <recipename>
cd
到該目錄中。git commit -a
提交更改devtool update-recipe <recipename> -a /path/to/your/custom/layer
(假設你想創建一個自定義層bbappend,否則只是省略了-a
和路徑應用,而不是改變原有配方)。devtool reset <recipename>
將所有內容都從元數據中完全重新構建。