在Travis CI Elixir Build期间编译C扩展

时间:2015-02-23 21:46:13

标签: erlang travis-ci elixir rebar

https://travis-ci.org/mmmries/sqlitex/builds/51889563#L96

我正在尝试为我的sqlite Elixir项目设置Travis CI集成。目前,在尝试编译作为esqlite依赖项的一部分的C扩展时,构建失败。

将返回错误消息
c_src/esqlite3_nif.o: file not recognized: File format not recognized

因此编译错误发生在钢筋层中,我不太了解。我无法在Travis之外复制这个构建错误,因此我不确定下一步该在哪里查看。

1 个答案:

答案 0 :(得分:1)

构建现在正常运行:https://travis-ci.org/mmmries/sqlitex/builds/52085658

问题是我搞砸了上游的esqlite依赖。我发布了一个rebar项目的副本到hex.pm,所以我可以指定它作为一个依赖,但我不小心包括在十六进制包中编译的“c_src / * .o”文件,但这些文件应该在客户端本地编译机。

travis上的ubuntu映像试图使用在OSX机器上编译的现有.o文件,这就是文件格式错误的原因。