我想使用苹果或RedHat的内置Apache,但我想使用Perl5.10和mod_perl。完成这一任务的最小干扰方式是什么?我希望为供应商的Apache、dav、php等提供免费的安全补丁,但我非常关心我使用的Perl版本以及@INC路径中的内容。我不介意编译我自己的mod_perl。
发布于 2008-09-17 13:19:38
/usr/ APXS=/usr/bin/apxs
在完成第一步之后,更改路径可能会有所帮助,这样您就不会意外地搞不清楚您使用的是哪个版本的Perl:
export PATH=/usr/local/perl/5.10.0/bin:$PATH发布于 2008-09-17 03:36:08
你会想要研究一下mod_so
发布于 2008-09-17 04:34:34
我以前也这么做过。它不是很漂亮,但它是有效的,特别是因为供应商perl通常有2-3年的历史。
我从创建自己的perl RPM开始,它将perl安装到不同的位置,比如/opt/。这是非常直接的。我之所以开始这样做,主要是因为我不希望在升级/安装新模块时,使用perl的系统实用程序崩溃。我不得不修改所有脚本以在顶部指定#!/opt/bin/perl,有时我甚至尝试使用路径以确保我的perl排在第一位。
接下来,我抓取了一个mod_perl源代码RPM,并将其修改为使用我的/opt/bin/perl而不是/usr/bin/perl。我无法访问我所做的更改,因为它是在不同的演唱会上。我花了点时间才弄明白。
它确实起作用了,但我不是一个RPM向导,所以依赖检查并没有那么好地工作。例如,我可以卸载我的自定义RPM并破坏所有东西。这对我来说不是什么大事,所以我离开了。
我还混合了RPM和CPAN安装的模块(我提到过我们用自己的代码构建了自己的自定义CPAN镜像吗?)这也有点脆弱。再说一次,我没有足够的资源(例如,时间)来弄清楚如何使cpan2rpm使用我的perl,而不会导致RPM冲突。
如果我可以再做一次,我会创建一个自定义的5.10Perl RPM,并替换掉系统perl。然后,我将使用cpan2rpm为我的软件创建所需的RPM包,并编译我自己的mod_perl RPM。
https://stackoverflow.com/questions/79493
复制相似问题