CrossでRustのコンパイル時のパラメタ制限解除

Rustのクロスコンパイル環境でCrossを使う

以前の記事で、cross使う時には

CROSS_CONTAINER_OPTS=”–platform linux/amd64″

を先頭に付加しないと動作しなかったけれども、今日使ってみると、

% CROSS_CONTAINER_OPTS="--platform linux/amd64" cross build --target arm-unknown-linux-gnueabihf  —release 
The application panicked (crashed).
Message:  byte index 1 is not a char boundary; it is inside '—' (bytes 0..3) of `—release`
Location: /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/str/mod.rs:659

のようなエラーが出て起動できない、単純に削除して$ cross build *********で動作するようになってました(そこに至るまでにはcrossで–releaseを付加するとなぜがエラーは継続して、–releaseを削除すると動いて、その後に–release追加というこれも不可思議な現象を経由してます)

ちなみにIntel MacでDockerで環境インストして動かしてみると、なぜかDockerのuser権限なくてもコンパイルできてしまいます

 

admin

コメントを残す