scons

    0熱度

    1回答

    我試圖讓SCons的調用醜化了一系列的JavaScript文件,持續集成的理由...... 然而,即使「重複= False'標誌被傳遞給'env.SConscript'調用;防止scons將源複製到構建輸出文件夾。它將具有相同源和目標擴展名的文件標記爲依賴性循環。採取例如以下簡化項目結構: SConstruct applications/SConscript applications/fron

    0熱度

    3回答

    我正在研究一個C++項目,它有一些手工編碼的源文件,以及一些由命令行工具生成的源文件和頭文件。 生成的實際源文件和頭文件由工具讀取的JSON文件的內容決定,因此無法硬編碼到scons腳本中。 我想設置scons,這樣如果我清理項目,然後創建它,它會知道運行命令行工具來生成生成的源文件和頭文件作爲第一步,然後編譯我的手編碼的文件和生成的源文件並將它們鏈接起來以製作二進制文件。 這可能嗎?我不知道如何

    1熱度

    1回答

    我有一個C程序「add.c」,一個輸入文件「input.txt」。我希望使用SCons編譯該程序,並將標準輸出存儲到名爲「output.txt」的文件中。我如何使用SCons構建工具來實現這一點?我怎樣才能做一個Python腳本來完成這項工作? compute(input_source_code,input_file_for_input_source_code) {//generate outpu

    0熱度

    1回答

    假設我有目標A,只有在B或C已經構建時才能構建。建築物C比建築B貴得多。 如何編寫一個最佳的SConstruct文件,當我要求它建立A時,它滿足以下約束條件。 如果任B或C存在並且UPTODATE,直接建立A 如果既沒有B也不C存在並且UPTODATE,第一建立B然後生成A 如果scons不提供這個能力,還有其他的構建工具提供嗎?

    2熱度

    1回答

    我試圖在用SCons構建項目時添加事件前和事件後處理操作。 SConstruct和SConscript文件位於項目的頂部。 處理前的行動: 生成代碼(通過調用不同的工具): - >不知道將這個預處理(額外的預加工後產生的確切文件決定哪些生成的文件可以爲了與他們養活SCons的) 創建 - >運行外部腳本(蟒蛇,珍珠腳本),編譯前執行 後處理措施: - >運行外部工具,運行外部腳本,應該是聯 我試了

    1熱度

    1回答

    我想在Scons啓動時運行一些腳本/構建器(取決於目標),然後開始創建依賴關係。 實現它的最佳方式是什麼?

    0熱度

    1回答

    所以我想構建一個程序並鏈接到共享庫。共享庫本身有它們自己的依賴關係。我試圖做到這一點,所以我只需要在本程序的SConscript中指定直接共享庫的依賴關係,而不是共享庫本身所依賴的內容,而這些依賴項可以在自己的SConscript中捕獲。因此,如果一個基礎庫創建了一個依賴項,並且40個程序遍佈整個代碼庫,那麼所有40個SConscript文件都不必更新以反映新增的lib依賴項的添加。它應該被自動繼

    0熱度

    2回答

    我試圖建立與SCons的一個完整的編譯環境,我碰到這個問題來了: 我的項目可以通過兩種不同的編譯器(C或CPP編譯器)和相同的鏈接生成的目標文件進行編譯連接。 因此,我需要知道如何從鏈接部分拆分編譯部分。 此外,有些情況下我只需要.o文件,所以我想避免鏈接。 這可能使用相同的環境嗎?

    0熱度

    1回答

    嗨有一個Sconscript文件,用於構建兩個不同的目標 - 共享庫和動態庫。 發佈第一次發佈構建時,構建的靜態庫爲空。共享庫中沒有對象。 但是,如果我再次發出構建命令並且所有共享對象已經構建,則此時共享庫已正確構建。 包括對共享和動態的lib目標有一些共同文件 結構爲我Sconscript文件看起來如: Import('module_env') env = module_env.clone()

    1熱度

    2回答

    我可以defining $*COMSTR in my environment定義自定義生成命令輸出: env['CXXCOMSTR'] = compile_source_message 然而,這將覆蓋編譯命令顯示的消息。我想增加消息,例如通過在目標前添加它。我的目標是有這樣的消息: % scons Compiling foo.o cc -o foo.o -c foo.c 我試過如下: