通常的做法是不包括源代碼控制庫中的二進制文件,我使用的是mercurial,並且想知道是否有人有嵌入版本的經驗(minor + major )在C二進制文件中,以便當它的分佈式,如果我使用像mybinaryApp - 版本的命令行參數,我會得到一個獨特的版本,我可以在構建時控制。我如何「版本」在Linux平臺上的C二進制文件
2
A
回答
0
我在代碼中嵌入版本號的方法是在單獨的頭文件中將#define _VERSION_MAJOR
包括在需要版本號的文件中,然後在需要的地方使用該宏。然後,您可以自由地在不同的源文件中控制版本號,而無需不斷修改原始文件。
這是大多數高級工具所做的事情的本質。
或者,如果您想要構建特定標記,則可以使用__DATE__
和__TIME__
來插入構建時間。
0
你在尋找類似KeywordExtension的東西嗎?
0
通常的方法是使用自動工具(autoconf & automake & autoheader &等)。他們使包含文件config.h可用,並且該文件定義了可以用--version打印的PACKAGE_VERSION宏。
此過程獨立於版本控制。原因很簡單,你需要將你的項目作爲源代碼壓縮包發佈,而且人們必須構建該壓縮包才能訪問你的版本控制。
相關問題
- 1. 如何在Android平臺上運行arm二進制文件?
- 2. 如何在x86/x64平臺上運行MIPS二進制文件?
- 3. 如何檢索二進制文件的二進制版本號
- 4. 構建多個平臺的Linux二進制文件
- 5. 什麼可以防止在不同的平臺上編譯的Linux發行版上運行二進制文件?
- 6. XUL在不同平臺上的二進制文件
- 7. 在Linux上旋轉二進制文件
- 8. gcc:在32位平臺上編譯64位二進制文件
- 9. 如何在Linux上看到(C和C++)二進制文件的符號?
- 10. C中的跨平臺網絡二進制文件比較?
- 11. 如何在Linux平臺上使用C++編寫臨時文件?
- 12. RenderScript包含所有平臺的本機二進制文件
- 13. 二進制文件中的GCC版本
- 14. 如何使qmake編譯多個跨平臺二進制文件
- 15. 如何編譯C++在Linux上進行,以使Windows二進制
- 16. 如何在Linux上編譯英特爾Mac二進制文件?
- 17. OSX上的版本控制二進制文件
- 18. 腳本命令來操縱二進制文件(在Linux上)
- 19. 管理二進制文件版本
- 20. 如何獲得Linux上的蘋果二進制文件的UUID
- 21. 如何使用C++ 11爲舊版Linux構建二進制文件?
- 22. 如何跨平臺複製C#文件?
- 23. Linux:如何將版本信息嵌入共享庫和二進制文件?
- 24. 冗餘二進制上載。已經有一個二進制上傳版本'1'的軟件版本'1.1.2'在Softwareassets
- 25. 涉及二進制和文本文件時的版本控制?
- 26. 用於平臺無關的二進制文件I/O的C/C++庫
- 27. 如何從二進制文件讀取C文本文件?
- 28. 使用Python C API版本2和3的二進制文件
- 29. 如何在C++中追加二進制文件與二進制文件
- 30. c上的二進制文件
您使用的是哪種C編譯器? –
@ Foo Bah我正在使用gcc – kamal