我认为在Linux上没有将版本号放入可执行文件的通用标准,而Windows需要某些结构来处理这些细节。
对于Linux可执行文件,FreePascal has made its own standard和Delphi lets you define Version information。
如果我们可以提供版本信息,我们必须能够将其恢复出去吗?怎么样?特别是在Linux64上?
我在Studio \ 19.0 \ source \ rtl \ posix中搜索了* .pas和* .inc,但我没有在'version'或'fileinfo'上找到任何可能有帮助的内容。
回到Kylix,我曾经使用libc的argp_program_version。
在一个干净的新DUnitX项目上,在向DPR添加{$ * .res}以便版本信息会坚持下去之后,我可以查看Linux64的项目选项,我可以看到他们有一个CFBundleVersion数字默认为1.0 .0为项目。如何在Linux64可执行文件中获得运行时的CFBundleVersion?
或者,如果那是不可能的,Delphi是否/应该匹配FreePascal标准并将fileinfo放入Lazarus和Delphi可以在运行时查看的内容?