![]() |
1
6
如果你的问题是:
那么答案是“是”。自动工具的设计就是为了能够做到这一点。此外,它们在Unix、Linux、MacOS X和BSD上工作。
另一方面,我不会尝试发布一个适合所有客户机器和环境的makefile;有太多的可能性,这是不明智的。但autotools为我(和我的用户)处理细节。他们所做的只是:
这比解决如何编辑makefile更容易。(哦,在最初的10年里,程序是手工配置的。尽管我设置了相当好的默认设置,但人们很难这样做。这就是为什么我转向了自动配置:它让人们更容易安装。)
32位和64位版本的插件是否需要单独构建?(我想是的,但你可能会让我吃惊。)所以你需要提供一种机制让用户说
(其中tppkg是第三方软件包的代码,位置可由用户指定。)但是,请记住可用性:用户选择的此类选项越少
提供更好的服务;与此相反,不要硬编码应该是可选的东西,例如安装位置。无论如何,在默认位置查看-这很好。默认为你找到的东西的零碎部分。也许如果您同时找到32位和64位版本,那么您应该同时构建这两个版本——尽管这需要仔细构建。您可以始终回显“检查TP包…”,并指出您找到了什么以及在哪里找到的。然后安装程序可以更改选项。确保您的文档在'
不要做任何互动的事情;配置脚本应运行,并报告其功能。Perl
交叉编译是困难的。谢天谢地,我从来不需要这么做。 福兹先生还评论道:
嗯,我相信这是可以做到的;我不太确定与两个单独的配置运行(中间有一个完整的重建)相比是否值得这样做。您可能希望使用:
这表示两个单独的目录。您必须决定如何进行构建,但您可能会有两个子目录,例如'
这假设插件将是一个共享对象。这里的想法是,autotool将检测第三方软件包的32位或64位安装,然后进行替换。如果32位包是必需的,则BUILD_32宏将设置为BUILD_32,否则为空;BUILD_64宏的处理方式与此类似。
当用户运行
宏CFLAGS将包括处理位的${FLAGS}值(例如,
|
![]() |
2
5
|
![]() |
3
1
SCons . 编辑:
环境 ).别忘了 User Guide PyInstaller 或者类似的。
与之相比
|
![]() |
4
0
以下是可能的:
然后,您甚至可以通过运行
|
![]() |
user1202136 · HAVE_*宏的目的是什么? 7 年前 |
![]() |
Danny Lo · 嵌套文件夹的自动生成-递归是必须的吗? 9 年前 |
|
rich p · 链接器从哪里获得库名称? 9 年前 |
![]() |
Razican · 如何在程序的自动检查中设置常量? 9 年前 |
![]() |
Ender · 如何使用自动工具构建特定组件? 10 年前 |