我正在寻找一种简单的方法来确定系统是否是Perl 5中的32位或64位.我已经向后和向前阅读了perlvar手册页,并且没有发现包含系统cpu架构的变量( cpu架构Perl被编译为将足够接近).这是我最接近的:
chomp (my $arch = `uname -m`);

我想知道是否有更优雅的方法来确定这一点;我讨厌依赖反引号表达式,因为它们都是瓶颈,往往是不安全的,并且经常(特别是这个例子)打破了跨平台的兼容性. Perl没有理由不应该有这些信息.

解决方法

请参见 Config模块.

也许检查是否设置$Config {‘archname64’}就足够了.

在Perl中优雅地确定系统架构的更多相关文章

  1. ios – Xcode 9架构x86_64的未定义符号

    先谢谢你的帮助.解决方法陷入类似的问题.只需在此处发布,以防它可以帮助任何人.在我们的应用程序的Objective-c类B中使用来自框架的类AbcService.从Xcode8/Swift3升级到Xcode9/Swift4后,由于未定义的符号,它无法为发布配置构建存档链接期间此类的错误:奇怪的是,它可以存档调试配置,并在模拟器中运行.花了差不多1天才找出根本原因:框架中的Swift类AbcService缺少一个公共修饰符.

  2. ios – Xcode 7.1 PrototypeTools链接器错误(仅限模拟器)

    我正在尝试使用Xcode7.1在iOS模拟器中运行我的应用程序,但我收到链接器错误.这是错误:clang:错误:链接器命令失败,退出代码为1这似乎是一个新问题,因为我在升级到新的Xcode之前没有它.我在Google上搜索过,但是这个问题几乎没有相关主题.有趣的是,该应用程序在设备上运行良好.我已经尝试重置模拟器并再次清洁/建造,但两者都没有奏效.有没有其他人遇到过这个问题,你能提供什么建议吗?

  3. xcode – 这是什么意思:架构的未定义符号x86_64“_main”

    在Xcode上构建我的应用程序时,我不断收到错误:我的代码没有错误,错误是奇怪的错误,我做的任何事情都无法解决.我不认为该代码与问题相关,因为它在错误中未被引用.这是错误的屏幕截图.解决方法链接器无法在主swift入口点的链接过程中找到任何文件.这可能是由于文件在项目中根本不存在,或者它存在但尚未包含在编译或链接构建阶段.在Swift中,主要的快速入口点在主要的SWF模块中定义,或者在AppDel

  4. ios – 当架构设置为64位时,图像不显示

    任何线索?

  5. iOS,ld:framework没有找到适用于架构arm64的GoogleMaps

    Podfile看起来像这个Cocoapodsv1.0beta6):解决方法更新请检查您是否在架构中具有相同的构建设置,并仅构建活动体系结构中的目标键你的podfile应该是这样的在您启动ProjectTest目标之前结束项目目标,也是为什么添加继承!

  6. ios – Zbar SDK – 缺少必需的架构x86_64

    在最近的Xcode5.1中,我在构建应用程序时遇到了一个问题.编译失败,出现“未定义的架构x86_64符号”错误.我使用有效架构构建我的项目:armv7,armv7s和arm64.在切换到最新的环境(Xcode)后,我在同一个架构中重新构建了libzbar.a库(我已经根据在LinkerErrorinXcode-5处找到的解决方案)也许有人也有同样的问题,最后他解决了,请分享解决方案:)解决方法我

  7. ios – Appstore FailureNo架构在二进制文件中. Lipo未能检测到bundle可执行文件中的任何架构.“在SoftwareAssets / SoftwareAsset

    嗨,我刚刚尝试将我的应用程式上传到应用程式商店,但失败了.****解决方法嗨,我很高兴我找到了答案.问题实际上是在info.plist中的“Productname”.在我的第一个版本是不同的.

  8. Xcode 8警告:没有规则处理类型为net.daringfireball.markdown的架构x86_64的文件

    我在Xcode8中得到上述警告,用于我的可可卡源源码中的CHANGELOG.md文件.如何清除?解决方法>选择ProjectNavigator>选择你的项目>选择您的目标>选择构建阶段>移动文件,您不希望编译器从编译源处理以复制捆绑资源

  9. iOS可用架构问题

    我对iOS构建设置中可用的体系结构有点困惑.我发现有4种类型:>i386>armv6>armv7>armv7s.我知道i386用于模拟器,armv6用于iOS设备.但我对armv7和armv7s感到困惑.1)armv7和armv7s有什么区别?2)基于armv7和armv7s架构的应用程序是否支持较旧的iOS版本?

  10. ios – ld:xx架构armv7 Xcode项目的重复符号

    大家好我有一个Xcode项目,每次我尝试构建项目时都会给我这个错误:ld:xx架构armv7Xcode项目的重复符号clang:错误:链接器命令失败,退出代码1…我已经google了,大多数解决方案说要摆脱在中的重复文件构建阶段–>编译项目的资源部分或在某些文件中将导入.m更改为.h.问题是编译资源列表甚至没有排序,我甚至不知道要修复哪些文件,因为我的项目中有很多文件.关于如何清理它的任何建议?

随机推荐

  1. 数组 – Perl中有什么神奇的数组?

    在Perldocumentationforreverse中,我发现:“请注意,将数组反转到自身(如@a=reverse@a)将尽可能保留不存在的元素;即对于非魔法数组或具有EXISTS和DELETE方法的绑定数组.什么属性区分神奇和非魔法阵列?解决方法一个神奇的阵列是一个执行它的操作不仅仅是改变内容.只有内置的魔术阵列是@ISA,而且这是非常不明显的.正如句子所暗示的,魔术阵列主要是一个绑定的阵列

  2. perl – 使用“isa”方法的最佳方式?

    什么是“最好的”使用方式“isa()”可靠?解决方法Scalar::Util实现明确更好.它避免了eval{}的开销,它总是导致设置一个附加变量.Scalar::Util实现更容易阅读.如果eval也失败了,我相信发生的是你在树之前向后走到eval之前的状态–这是如何实现复位状态.这带来了额外的故障开销.基准根本不是一个对象对象传递isa检查对象出现故障现象检查测试代码:我使用这是为i486-linux-gnu-thread-multi建立的perl,v5.10.1(*),以及Scalar::Util,1

  3. 在CORE :: GLOBAL中哪些Perl内置函数不能被覆盖?

    解决方法toke.c中任何值为负的值都可以被覆盖;所有其他人可能不会.你可以看源码here.例如,我们来看看第10,396行的waitpid:由于waitpid为负数,因此可能会被覆盖.grep怎么样?这是积极的,所以不能被覆盖.这意味着以下关键字不能被覆盖:chop,defined,delete,do,dump,each,else,elsif,eval,exists,for,foreach,format,glob,goto,grep,if,keys,last,local,m,map,my,next,no

  4. 如何在Perl中打印由换行符分隔的列表元素?

    什么是最简单的打印所有列表的元素以Perl中的换行符分隔的元素?解决方法在Perl5.10中:其他方式:或:或者怎么样?

  5. 使用Perl如何获取文件大小(以兆字节为单位)?

    我想以磁盘的形式获取磁盘上的文件大小.使用-s运算符给出了以字节为单位的大小,但是我将假设,然后将其除以魔术数字是一个坏主意:我应该使用只读变量来定义1024,还是有一种编程方式来获取一千字节的字节数?

  6. perl – 如何测试/分类CPAN模块的utf8正确性

    例如:File::Slurp,如果你将读取该文件您将根据命令行开关获得不同的结果,并且perl-CSDA将无法正常工作.伤心.(是的,我知道比Encode::decode(“utf8”,read_file($file,binmode=>’:raw’));将帮助,但是SAD.我的问题:>在这里任何首选方式,如何测试/分类什么CPAN模块是utf8安全/准备/正确?>这里是像Perl::Criticforutf8这样的东西–什么将检查模块源可能的utf8不正确?总结以上是DEVMAX为你收集整理的perl–如

  7. 如何删除Perl字符串中的空格?

    如果我声明一个值为’3’的变量$myString.是否有任何功能来删除返回值的空格.有点像SomeFun然后返回’3′.输出:你可以注意到’vid’=>‘0’,上面的代码从theanswer.我正在研究它.总结以上是DEVMAX为你收集整理的如何删除Perl字符串中的空格?如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  8. 如何在mod_perl2下运行Devel :: Cover?

    Unfortunately,Devel::Coverdoesnotyetworkwiththreads.它也不适用于prefork.在startup.pl中使用,Devel::Cover问题perl5.8.9,Apache2.2.13.我的操作系统是FreeBSD,如果重要.同样的问题是reportedforwin32.更新:PerlTrace全部输出解决方法邪恶之源似乎是Apache::DBI.

  9. 如何使用Perl中的C类?

    我有一套用C写的课.从Perl脚本中调用它们的最佳方法是什么?

  10. perl – 在Emacs中以双模式更好的缩进

    我正在使用Emacs来修改Perl和Verilog交织的代码.我正在使用two-mode-mode在两者之间切换,这样可以预期.问题是perl代码与//一行一行地表示;如下图所示:而双模式则认识到它是Perl,它是逐行的,所以缩进等在线上无意义.我想做的是使Perl代码像往常一样格式化,但忽略//;字符.有什么想法吗?我刚刚开始偷看模式文件,它们是可以理解的复杂的,所以任何提示都不会感激!

返回
顶部