热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Rebareunit运行非本机(非Hipe)代码-Rebareunitrunsnonnative(nonHipe)code

IhavecompiledmyErlangmoduleusing我使用了编译我的Erlang模块rebarcompileusingthefollowingoption

I have compiled my Erlang module using

我使用了编译我的Erlang模块

rebar compile

using the following option in rebar.config

在rebar.config中使用以下选项

{erl_opts, [native, {hipe, [verbose]}, warnings_as_errors, debug_info]}.
{eunit_compile_opts, [native, {hipe, [verbose]}, warnings_as_errors, debug_info]}.

I see that the code is indeed compiled to native since I see Hipe messages during compilation and the .beam file size are also larger than non-native compilation.

我看到代码确实编译为native,因为我在编译期间看到Hipe消息,而.beam文件大小也比非本机编译大。

However when I run

但是,当我跑

rebar eunit

which tests my module I always get false for

哪个测试我的模块我总是假的

 code:is_module_native(?MODULE)

within my module under test.

在我的测试模块中。

Why does rebar not run my eunit test as native code?

为什么rebar不能作为本机代码运行我的eunit测试?

I have additionally added this line to the reltool.config file,

我还在reltool.config文件中添加了这一行,

 {app, hipe, [{incl_cond, include}]},

rebar 2.1.0-pre 17 20140421_192321 git 2.1.0-pre-166-ged88055

螺纹钢2.1.0-pre 17 20140421_192321 git 2.1.0-pre-166-ged88055

1 个解决方案

#1


Your code is recompiled when you run "rebar eunit" using the compile options defined by

使用定义的编译选项运行“rebar eunit”时,将重新编译代码

  • {erl_opts, [native, {hipe, [verbose]}, warnings_as_errors, debug_info]}.
  • {erl_opts,[native,{hipe,[verbose]},warnings_as_errors,debug_info]}。

and modified by the compile options defined by

并由定义的编译选项修改

  • {eunit_compile_opts, [???]}.

Did you check these options?

你检查过这些选项了吗?


推荐阅读
author-avatar
留难龚_431
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有