0

是否可以在 NaCl中禁用特定于 CPU 的自动调整?

我想在适用的情况下编译参考.c忽略任何 x86 .s(来自 qhasm)等。

设置-marchand -mtuneor-mcpu似乎是不够的。

4

2 回答 2

1

libsodium 支持交叉编译。

--host=...运行configure脚本时使用标准开关。

每个版本都经过验证,可以交叉编译(并通过实际平台或模拟器上的所有测试)至少到 iOS、linux/mips、linux/mipsel 和 linux/arm,以及 javascript。

事实上,如果您在将问题交叉编译到另一个目标时遇到困难,请随时打开一个问题。

于 2014-07-03T07:04:40.780 回答
0

nacl 中的所有相关构建逻辑都在 bourne shell 脚本 ./do 中

要编译可移植的实现并且只有那些:

sed -i.original '
# use reference implementations only
/implementationdir=`dirname \$doth`/a\
  case "$implementationdir" in\
  */ref|*/portable) ;;\
  *) echo "SKIPPING $implementationdir"; continue ;;\
  esac
' ./do

(作者在 aetey.se,上面这段代码特此放到公共领域)

为了能够交叉编译,您必须删除编译和运行 ./try 和 ./measure 的部分(在类似 sed/ex 的表示法中,给定 ./do 从 nacl-20110221 开始,类似于:352,358d ; 347d; 275,326d;)。

为避免运行测试:

/for bintype in commandline tests/s/tests//

.

于 2015-09-07T13:05:42.040 回答