首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更改MakeMaker的默认CFLAGS

如何更改MakeMaker的默认CFLAGS
EN

Stack Overflow用户
提问于 2012-01-05 09:50:36
回答 1查看 3K关注 0票数 3

如何使Perl MakeMaker更改它插入到Makefiles中的CFLAGS的默认值?基于这个职位,我尝试了这样的方法:

代码语言:javascript
复制
export CFLAGS=...

然后在cpan内部,我用

代码语言:javascript
复制
! print $ENV{CFLAGS}

但是它仍然使用CFLAGS Perl所用的任何东西。

按照这个职位的建议,我查看了lib/perl/./Config.pm,但这里似乎没有设置CFLAGS。

我有一个相关的问题得到了回答:如何告诉CPAN要创建和抄送的路径

我在CPAN/Config.pm上取得了一些进展。

代码语言:javascript
复制
'makepl_arg' => q[ CCFLAGS="-D_REENTRANT -O2 -m32  -I/opt/csw/bdb48/include -I/opt/csw/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -m32 -DVERSION=\"1.616\" -DXS_VERSION=\"1.616\" -fPIC -I/opt/csw/lib/perl/5.10.1/CORE"],

但这只会给CFLAGS中的任何东西附加价值,而gcc对此并不理解(比如"-x03“和"-KPIC")。

EN

回答 1

Stack Overflow用户

发布于 2012-01-06 08:47:59

我已经成功地修改了/opt/csw/lib/perl/5.10.1/Config_Heady.pl,以便MakeMaker能够生成在OpenCSW下的solaris系统上工作的Makefile。

其他有类似问题的人可以在这里下载:https://gist.github.com/1569718

我还将此反馈给了opencsw.org的维护人员,希望他们能够更新Perl的OpenCSW版本。我在文章中指出,正确的方法是使用属于OpenCSW发行版的工具完全重新构建Perl,因为我相信在构建任何给定的Perl发行版时,该文件都会由其他脚本自动生成(尽管我还没有验证它是如何生成的)。这个修补的文件只是一个权宜之计,我可以完成我的工作,这是在最后期限内。

我非常希望通过修改CPAN/Config.pm中的设置来实现我的目标。这样做可以为gcc和gmake设置正确的路径,但不适用于将命令行标志更改为gcc,因为CPAN会将这些标志附加到以前设置的参数字符串中。gcc会在遇到这些旗帜后退出,其中一些旗帜是不相容的(例如"-xO3“和"-KPIC")。

为了记录在案,CSWperl 5.10.1,REV=2011.01.15是我从OpenCSW安装的CSW的当前Perl版本。

希望这能帮到别人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8740443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档