Skip to content

Instantly share code, notes, and snippets.

@justinmoon
Last active July 29, 2020 00:42
Show Gist options
  • Save justinmoon/592080b0c6450f64c7ccf46a5e00752f to your computer and use it in GitHub Desktop.
Save justinmoon/592080b0c6450f64c7ccf46a5e00752f to your computer and use it in GitHub Desktop.
[target.x86_64-pc-windows-gnu]
linker = "x86_64-w64-mingw32-gcc"
[target.i686-pc-windows-gnu]
linker = "i686-w64-mingw32-gcc"
rustflags = "-C panic=abort"
$ RUST_BACKTRACE=1 cargo build --target i686-pc-windows-gnu --features vendored-openssl
Compiling libtor-sys v43.6.0+0.4.3.6 (/mnt/c/Users/justin/dev/libtor-sys)
error: failed to run custom build command for `libtor-sys v43.6.0+0.4.3.6 (/mnt/c/Users/justin/dev/libtor-sys)`
Caused by:
process didn't exit successfully: `/mnt/c/Users/justin/dev/libtor-sys/target/debug/build/libtor-sys-f519f91522c41b80/build-script-build` (exit code: 101)
--- stdout
OPT_LEVEL = Some("0")
CC_i686-pc-windows-gnu = None
CC_i686_pc_windows_gnu = None
TARGET_CC = None
CC = None
CROSS_COMPILE = None
CFLAGS_i686-pc-windows-gnu = None
CFLAGS_i686_pc_windows_gnu = None
TARGET_CFLAGS = None
CFLAGS = None
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some("true")
CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2")
running: "/mnt/c/Users/justin/dev/libtor-sys/target/i686-pc-windows-gnu/debug/build/libtor-sys-1e48e575498d39ad/out/libevent/libevent-src/configure" "--host=i686-pc-windows-gnu" "--prefix=/mnt/c/Users/justin/dev/libtor-sys/target/i686-pc-windows-gnu/debug/build/libtor-sys-1e48e575498d39ad/out/libevent" "--disable-shared" "--enable-static" "--with-pic" "--disable-samples" "--disable-openssl" "--disable-libevent-regress" "--disable-debug-mode" "--disable-dependency-tracking"
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for i686-pc-windows-gnu-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking whether make supports the include directive... yes (GNU style)
checking for i686-pc-windows-gnu-gcc... i686-w64-mingw32-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i686-w64-mingw32-gcc accepts -g... yes
checking for i686-w64-mingw32-gcc option to accept ISO C89... none needed
checking whether i686-w64-mingw32-gcc understands -c and -o together... yes
checking dependency style of i686-w64-mingw32-gcc... none
checking how to run the C preprocessor... i686-w64-mingw32-gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type...
--- stderr
Invalid configuration `i686-pc-windows-gnu': machine `i686-pc-windows' not recognized
configure: error: /bin/bash /mnt/c/Users/justin/dev/libtor-sys/target/i686-pc-windows-gnu/debug/build/libtor-sys-1e48e575498d39ad/out/libevent/libevent-src/config.sub i686-pc-windows-gnu failed
thread 'main' panicked at '
command did not execute successfully, got: exit code: 1
build script failed, must exit now', /home/justin/.cargo/registry/src/github.com-1ecc6299db9ec823/autotools-0.2.1/src/lib.rs:449:5
stack backtrace:
0: backtrace::backtrace::libunwind::trace
at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86
1: backtrace::backtrace::trace_unsynchronized
at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66
2: std::sys_common::backtrace::_print_fmt
at src/libstd/sys_common/backtrace.rs:78
3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
at src/libstd/sys_common/backtrace.rs:59
4: core::fmt::write
at src/libcore/fmt/mod.rs:1069
5: std::io::Write::write_fmt
at src/libstd/io/mod.rs:1504
6: std::sys_common::backtrace::_print
at src/libstd/sys_common/backtrace.rs:62
7: std::sys_common::backtrace::print
at src/libstd/sys_common/backtrace.rs:49
8: std::panicking::default_hook::{{closure}}
at src/libstd/panicking.rs:198
9: std::panicking::default_hook
at src/libstd/panicking.rs:218
10: std::panicking::rust_panic_with_hook
at src/libstd/panicking.rs:511
11: rust_begin_unwind
at src/libstd/panicking.rs:419
12: std::panicking::begin_panic_fmt
at src/libstd/panicking.rs:373
13: autotools::fail
at /home/justin/.cargo/registry/src/github.com-1ecc6299db9ec823/autotools-0.2.1/src/lib.rs:449
14: autotools::run
at /home/justin/.cargo/registry/src/github.com-1ecc6299db9ec823/autotools-0.2.1/src/lib.rs:437
15: autotools::Config::build
at /home/justin/.cargo/registry/src/github.com-1ecc6299db9ec823/autotools-0.2.1/src/lib.rs:373
16: build_script_build::build_libevent
at ./build.rs:86
17: build_script_build::main
at ./build.rs:339
18: std::rt::lang_start::{{closure}}
at /home/justin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libstd/rt.rs:67
19: std::rt::lang_start_internal::{{closure}}
at src/libstd/rt.rs:52
20: std::panicking::try::do_call
at src/libstd/panicking.rs:331
21: std::panicking::try
at src/libstd/panicking.rs:274
22: std::panic::catch_unwind
at src/libstd/panic.rs:394
23: std::rt::lang_start_internal
at src/libstd/rt.rs:51
24: std::rt::lang_start
at /home/justin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libstd/rt.rs:67
25: main
26: __libc_start_main
27: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
$ cargo build --target x86_64-pc-windows-gnu
Compiling cc v1.0.58
Compiling pkg-config v0.3.18
Compiling autocfg v1.0.0
Compiling libc v0.2.73
Compiling fs_extra v1.1.0
Compiling openssl-src v111.10.2+1.1.1g
Compiling autotools v0.2.1
Compiling libz-sys v1.0.25
Compiling openssl-sys v0.9.58
Compiling libtor-sys v43.6.0+0.4.3.6 (/mnt/c/Users/justin/dev/libtor-sys)
error: failed to run custom build command for `libtor-sys v43.6.0+0.4.3.6 (/mnt/c/Users/justin/dev/libtor-sys)`
Caused by:
process didn't exit successfully: `/mnt/c/Users/justin/dev/libtor-sys/target/debug/build/libtor-sys-06bf74317166871d/build-script-build` (exit code: 101)
--- stdout
OPT_LEVEL = Some("0")
CC_x86_64-pc-windows-gnu = None
CC_x86_64_pc_windows_gnu = None
TARGET_CC = None
CC = None
CROSS_COMPILE = None
CFLAGS_x86_64-pc-windows-gnu = None
CFLAGS_x86_64_pc_windows_gnu = None
TARGET_CFLAGS = None
CFLAGS = None
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some("true")
CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2")
running: "/mnt/c/Users/justin/dev/libtor-sys/target/x86_64-pc-windows-gnu/debug/build/libtor-sys-a35bdbf51f658f32/out/libevent/libevent-src/configure" "--host=x86_64-pc-windows-gnu" "--prefix=/mnt/c/Users/justin/dev/libtor-sys/target/x86_64-pc-windows-gnu/debug/build/libtor-sys-a35bdbf51f658f32/out/libevent" "--disable-shared" "--enable-static" "--with-pic" "--disable-samples" "--disable-openssl" "--disable-libevent-regress" "--disable-debug-mode" "--disable-dependency-tracking"
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for x86_64-pc-windows-gnu-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking whether make supports the include directive... yes (GNU style)
checking for x86_64-pc-windows-gnu-gcc... x86_64-w64-mingw32-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether x86_64-w64-mingw32-gcc accepts -g... yes
checking for x86_64-w64-mingw32-gcc option to accept ISO C89... none needed
checking whether x86_64-w64-mingw32-gcc understands -c and -o together... yes
checking dependency style of x86_64-w64-mingw32-gcc... none
checking how to run the C preprocessor... x86_64-w64-mingw32-gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type...
--- stderr
Invalid configuration `x86_64-pc-windows-gnu': machine `x86_64-pc-windows' not recognized
configure: error: /bin/bash /mnt/c/Users/justin/dev/libtor-sys/target/x86_64-pc-windows-gnu/debug/build/libtor-sys-a35bdbf51f658f32/out/libevent/libevent-src/config.sub x86_64-pc-windows-gnu failed
thread 'main' panicked at '
command did not execute successfully, got: exit code: 1
build script failed, must exit now', /home/justin/.cargo/registry/src/github.com-1ecc6299db9ec823/autotools-0.2.1/src/lib.rs:449:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
@justinmoon
Copy link
Author

I was able to build a hello world project on x86_64 but not i686: https://github.com/justinmoon/cross-compile

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment