小编Nic*_*ean的帖子

交叉编译为armv5te时,整数格式不正确

在我的计算机上编译以下程序时,它会输出预期值:

fn main() {
    let number = 42;
    println!("number is {}", number);
}
Run Code Online (Sandbox Code Playgroud)

号码是42

当为armv5te交叉编译并在目标上运行时,它会输出以下结果:

号码是14

我认为Displayfor 的实现i32没有按预期工作.特别是,似乎打印的字符取自以下数组中的错误索引(在libcore/fmt/num.rs中找到):

const DEC_DIGITS_LUT: &'static[u8] =
    b"0001020304050607080910111213141516171819\
      2021222324252627282930313233343536373839\
      4041424344454647484950515253545556575859\
      6061626364656667686970717273747576777879\
      8081828384858687888990919293949596979899";
Run Code Online (Sandbox Code Playgroud)

显示的两个数字在表格上以左边1个字节的偏移量与正确的位置进行比较.我通过测试一些其他数字(例如10 - > 91,11 - > 01)验证了这一假设.

其他格式({:b},{:o},{:x})都给予我的电脑上,并在目标期望的结果.


我正在使用Rust的自编译版本(1.13.0,2c6933acc 2016-11-07),以便在我的计算机上成功进行测试,并在我的ARM设备上进行不成功的测试.以下是我必须做的修改的差异:

diff --git a/mk/cfg/arm-unknown-linux-gnueabi.mk b/mk/cfg/arm-unknown-linux-gnueabi.mk
index f66ad04..b9e4157 100644
--- a/mk/cfg/arm-unknown-linux-gnueabi.mk
+++ b/mk/cfg/arm-unknown-linux-gnueabi.mk
@@ -1,5 +1,5 @@
 # arm-unknown-linux-gnueabi configuration
-CROSS_PREFIX_arm-unknown-linux-gnueabi=arm-linux-gnueabi-
+CROSS_PREFIX_arm-unknown-linux-gnueabi=arm-unknown-linux-uclibcgnueabi-
 CC_arm-unknown-linux-gnueabi=gcc
 CXX_arm-unknown-linux-gnueabi=g++
 CPP_arm-unknown-linux-gnueabi=gcc -E
@@ -8,8 +8,8 @@ CFG_LIB_NAME_arm-unknown-linux-gnueabi=lib$(1).so
 CFG_STATIC_LIB_NAME_arm-unknown-linux-gnueabi=lib$(1).a
 CFG_LIB_GLOB_arm-unknown-linux-gnueabi=lib$(1)-*.so …
Run Code Online (Sandbox Code Playgroud)

cross-compiling rust

11
推荐指数
1
解决办法
148
查看次数

更改 docker 映像时更新 Sagemaker 端点

我正在寻找更新 Sagemaker 端点的最简单的解决方案。我唯一想要更改的是 docker 映像(以更新代码)。

我正在计算机上构建新的 Docker 映像,然后将其上传到 ECR(我计划在不久的将来在 CI/CD 中执行此操作)。

根据我的理解,最简单的方法似乎是创建一个新的EndpointConfig,然后调用UpdateEndpointAPI将端点切换到新的配置,然后删除旧的EndpointConfig。有谁知道更简单的方法吗?或者任何人都可以确认这是最简单的方法吗?

amazon-web-services amazon-sagemaker

10
推荐指数
1
解决办法
1581
查看次数

如何在C中等待文件创建

如何停止线程的执行,直到创建文件?
我想避免在繁忙的循环中执行此操作,并使用行为类似于 select() 的东西。这样的事情可能吗?
我只找到了检查文件在给定时间是否存在的方法。

c

6
推荐指数
1
解决办法
4171
查看次数

为什么在WebRTC中选择DTLS-SRTP?


我想知道导致DTLS-SRTP成为保护WebRTC中媒体的方法的原因.
我认为最好在信令平面之外交换SRTP密钥材料,但为什么不允许其他方法如SDES呢?对我来说,它似乎比通过DTLS握手更快,并且如果你可以保证信令通道是安全的那样,就像DTLS-SRTP一样安全......

standards rtp dtls webrtc

2
推荐指数
1
解决办法
652
查看次数