perl6 – Perl 6 NativeCall和C源文件
发布时间:2020-12-16 06:21:07 所属栏目:大数据 来源:网络整理
导读:使用NativeCall为 Windows和 Linux发布用于C库的Perl 6绑定的最佳策略是什么? 开发人员是否需要编译.dll和.so文件并将它们与perl6代码一起上传到github?或者perl6上有一个选项,比如perl5可以将C源文件与Perl 6代码捆绑在一起,C编译器将作为make和make inst
使用NativeCall为
Windows和
Linux发布用于C库的Perl 6绑定的最佳策略是什么?
开发人员是否需要编译.dll和.so文件并将它们与perl6代码一起上传到github?或者perl6上有一个选项,比如perl5可以将C源文件与Perl 6代码捆绑在一起,C编译器将作为make和make install的一部分运行吗? 解决方法
不需要首先编译库(尽管它们可能是).要完成此任务,首先需要在发行版的根目录中使用Build.pm文件:
class Builder { method build($dist-path) { # do build stuff to your module # which is located at $dist-path } # Only needed for panda compatability method isa($what) { return True if $what.^name eq 'Panda::Builder'; callsame; } } 然后你会想要使用像LibraryMake这样的模块.这里我们在构建方法中使用它的make例程: use LibraryMake; class Builder { method build($dist-path) { make($dist-path,"$dist-path/resources"); # or you could do the appropriate `shell` calls # yourself and have no extra dependencies } ... 包管理器zef和panda支持此方法,并且还允许通过perl6 -I手动运行它. -MBuild -e’Builder.new.build($* CWD)’ Here是一个工作的例子 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |