Skip to content

cross build --target x86_64-pc-windows-gnu fails #1445

Open
@oscar6echo

Description

@oscar6echo

Checklist

Describe your issue

I have a pyo3 lib that compiles fine in linux.

I wanted to cross compile to windows, so I did:

cross build --target x86_64-pc-windows-gnu

with the following context:

  • Cargo.toml
[package]
name = "pyo3-poker-eval"
version = "0.1.0"
edition = "2021"


[dependencies]
pyo3 = { version = "0.20.2", features = ["extension-module"] }
serde = { version = "1.0.196", features = ["derive"] }
serde-pyobject = { version = "0.2.0" }
poker_eval = { version = "0.1.0", features = ["serde"] }

[lib]
name = "_rust"
# needs to match the name of the function with the `[#pymodule]` attribute
path = "rust/lib.rs"
crate-type = ["cdylib"]

[profile.release]
strip = true
lto = true
codegen-units = 1
  • Cross.toml
[target.x86_64-pc-windows-gnu]
image = "cross-pyo3:x86_64-pc-windows-gnu"


[target.x86_64-pc-windows-gnu.env]
passthrough = [
    "RUST_DEBUG",
    "RUST_BACKTRACE",
    "RUST_LOG",
    "PYO3_CROSS_LIB_DIR=/opt/python/cp310-cp310/lib",
    "PYO3_CROSS_PYTHON_VERSION=3.10",
    # "DIST_EXTRA_CONFIG",
]
  • Dockerfile
FROM quay.io/pypa/manylinux_2_28_x86_64 AS manylinux

FROM ghcr.io/cross-rs/x86_64-pc-windows-gnu:edge

# download python version - https://github.com/indygreg/python-build-standalone/releases
ENV DATE=20240107
ENV VERSION=cpython-3.10.13
ENV URL_ASSET=https://github.com/indygreg/python-build-standalone/releases/download/$DATE/$VERSION+$DATE-x86_64-unknown-linux-gnu-install_only.tar.gz

RUN curl -L $URL_ASSET | tar -xz -C /usr/local

ENV PATH=/usr/local/python/bin:$PATH

COPY --from=manylinux /opt/_internal /opt/_internal
COPY --from=manylinux /opt/python /opt/python

RUN cp /usr/local/python/bin/python3 /usr/local/python/bin/python

RUN python3 -V
RUN python -V
  • Note that for a full context, there is also a pyproject.toml file - not necessary to reproduce:
[build-system]
requires = ["setuptools >= 69.0", "setuptools-rust >= 1.8", "wheel"]
build-backend = "setuptools.build_meta"


[project]
name = "pyo3-poker-eval"
version = "0.1.0"
authors = [{ name = "firstname lastname", email = "author@gmail.com" }]
description = "Poker eval library"
keywords = ["poker", "rust"]
license = { text = "MIT" }
readme = "README.md"
classifiers = [
    "Development Status :: 4 - Beta",
    "License :: OSI Approved :: MIT License",
    "Intended Audience :: Developers",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Operating System :: POSIX",
    "Operating System :: MacOS :: MacOS X",
    "Operating System :: Microsoft :: Windows",
]
requires-python = ">=3.10"
dependencies = [
    # none
]

[project.optional-dependencies]
dev = ["pytest"]

[project.urls]
repository = "https://github.com/oscar6echo/pyo3-poker-eval.git"
# homepage = ""
# documentation = ""
# issues = ""
# changelog = ""


# [tool.setuptools.packages.find]
# where = ["."]
# include = ["*"]
# exclude = ["tests"]

[tool.setuptools]
packages = ["pyo3_poker_eval"]

# Cf. https://setuptools-rust.readthedocs.io/en/v1.1.2/reference.html
[[tool.setuptools-rust.ext-modules]]
# Private Rust extension module to be nested into the Python package
target = "pyo3_poker_eval._rust"
# IMPORTANT: build with --release -> large impact on speed
debug = false
# reduce wheel size
strip = "All"
# used for cross compile
# args = ...

And it fails with a very specific miss:

cross build --target x86_64-pc-windows-gnu         
   Compiling pyo3-poker-eval v0.1.0 (/project)
error: linking with `x86_64-w64-mingw32-gcc-posix` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/rust/lib/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/python/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/rust/bin" VSLANG="1033" "x86_64-w64-mingw32-gcc-posix" "-Wl,/tmp/rustcqa15dX/list.def" "-fno-use-linker-plugin" "-Wl,--dynamicbase" "-Wl,--disable-auto-image-base" "-m64" "-Wl,--high-entropy-va" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/rsbegin.o" "/tmp/rustcqa15dX/symbols.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.10wxfm37qgyfifw9.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.11fcft1udhftg0kg.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.13t6ffuyzl4nwjtv.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.143nteefwtw7jcgw.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.14geesjb5nt8t6hw.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.158pcnv4h5q8xsgs.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1aki2rpugq70t05z.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1cw377ptrlczian3.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1d3ycic638i1ukla.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1gpcn6iyea9ksqim.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1h0txerctlkdgylx.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1irbm8dxodxzoafg.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1jpt60kg73ysaaje.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1ls4f4utmpygh9b.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1mwzht1wgtkevpuj.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1pf54e6dnrdzm57x.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1pzqvmlrv5j8srbb.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1r0euvkdl8cofww2.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1r8lsumgeq3tdl2l.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1rcktkwuwhyrj49a.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1rmymc4wpwkcyifn.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1rtj4ofwjoetsb9s.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1vcwedrsz603eq8h.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1x7e2tgcz8px1p08.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1xag9xcy1i8lby10.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.1xdr2mg30lyj37r6.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.214igsdn9zqjdkcb.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.22f20qfe966n3a0t.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.26q3ne4ook35e3da.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.29lqs5vr2su6029b.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2agm1l1cdxf85o87.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2ay0g1g66tjwl7n7.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2b76reeyk7y9yzkp.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2b9rrqtwet46771n.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2dfmuhtah1416f8z.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2f4f10d6xgmbdkwu.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2fai9z5iamfgys5k.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2j9rwrzpi7duc8o0.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2jso62m4hcif5guq.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2k2zyfqwncn5dmct.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2mxgfhj0fpm6scaq.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2prscyvnh7vq1arr.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2tn66xum70yf43kd.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2tph60tnx8mof6xf.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2ufhe629zm0wbgok.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2vpf0gn9083ehxwf.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2za2gc8pyggpnr6c.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.2zw31m3iamxzwjjv.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.31iykyenbi54uc18.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.325q4ujao93fnwwb.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.32pqpfiey18upg8f.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.36jmd12ydd75hzad.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.37n0zgpk7cgznnle.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.39ab5vgqb1zl1qwl.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3bz29k80v5ewhxth.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3e5bbpy6fh8yygnm.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3f1g6zcs92zn1v9t.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3h7mie9e1pkrnjao.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3jt3qytawqkwef41.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3lh74mqt14k96cgx.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3rhhjlbfcioud3cr.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3ti9hgyca467prpq.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3uih6q9bqa2t1p54.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3vperrg3c7v0w7zs.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3xak1astqsoh19k5.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3xg9vp5s20xb2vod.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3zmwmuk1n2bswgma.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3zn547qxzo04v39u.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.408lpt6127usba77.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.41httixdtfrjyn25.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.42t0aegspra5q0qo.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.430rbs0n81gez5fq.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.454ofhzstaqvadp5.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.460xqcjtnp1tfd05.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.49ti17581m1rcj7w.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4cfc8iyhgfonuras.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4i63kuckvo2iv7y0.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4isxjmazn3q9pkpx.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4ji4cd97q4504pig.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4jor1kshfi2kp77r.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4nwjibg0pgcfenkq.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4rzqg3ix7as1khmr.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4sfkjd7b75q3td7t.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4uu0t41ghxmfkcnq.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4vyg1y0w5i2zsxis.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.4y7k2hi6zrzacn2.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.5213gr2k2mlcuigk.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.525uyssglrya7kb2.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.53ebd6ahwmqvn7dg.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.53leds8duhqyovor.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.5496d5zuvcppdkjw.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.56esy9hb1zu5jcqx.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.587zl75vz7we0os3.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.5975ejibswf6n48q.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.5kuftex6lkov90b.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.7g8gkfd1emle6qw.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.9guk9p04l61k7uf.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.amqt3axej2d9aqf.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.cc6faqrfqhpocv5.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.cysocvuwrgnawyv.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.e8ti4eqpwotmo35.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.gwymu49qnv2bd2x.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.hy1zr87ikivk0fr.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.jg38ajt919xmieh.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.joyyhsmk638o5a3.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.k0z55tw2hfks390.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.l71kekt97xzh17v.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.m9zlvtpgl500hdg.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.n8vpeyutbciarr5.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.obvvjkqiq2vj5k1.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.pzdy815o4r17aib.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.tpz7d83h3bhrs2.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.uew6iw5srk1wtt6.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.wn4hf19rt3lu5mi.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.wovmpbmkcmk58fr.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.wztx24tscvem81u.rcgu.o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.3l6wacw99y7t1i0v.rcgu.o" "-L" "/target/x86_64-pc-windows-gnu/debug/deps" "-L" "/target/debug/deps" "-L" "/cargo/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnu-0.48.5/lib" "-L" "/opt/python/cp310-cp310/lib" "-L" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib" "-Wl,-Bstatic" "/target/x86_64-pc-windows-gnu/debug/deps/libserde_pyobject-4c42e4314c161f97.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libpoker_eval-c36b538208a4baba.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libnum_format-bec9f450a57c573a.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libitoa-2a360f6b8295e32e.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libarrayvec-5d9763c331538160.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libserde_big_array-2bc9456f902ae29b.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/librand-6b9a43be3ab00fbb.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/librand_chacha-142f3a8da597db40.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libppv_lite86-3c52499b92d74fa2.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/librand_core-addcd20b9766fba3.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libgetrandom-d8b3cabee0a15a75.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libthiserror-78743b176776a071.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libserde-fdf1d2b71c87c06c.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libpyo3-6227715ee04b2b33.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libmemoffset-d5856625c1559773.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libparking_lot-e8fed4c6c64fa0f4.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libparking_lot_core-67d8989a90eb15c1.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libwindows_targets-d6cfc54fa21ccf49.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libcfg_if-8077ed9bff4860d7.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libsmallvec-2b18a3901389d67f.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/liblock_api-8ed4e464d93b5b54.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libscopeguard-d6a6f8c981aa494e.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libpyo3_ffi-6d61411ef66516f3.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/liblibc-89eda55cfee33f7c.rlib" "/target/x86_64-pc-windows-gnu/debug/deps/libunindent-39a0ac93858d00ff.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libstd-c39a33301a990d4c.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libpanic_unwind-cca52022a9e303e0.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libobject-87ab4ba6115beae7.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libmemchr-5cb7fa9a12663885.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libaddr2line-63721decd0530f88.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libgimli-f46ca0e8336ae9ce.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/librustc_demangle-eb7f3864ed6b2a68.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libstd_detect-7a1913f37e63e841.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libhashbrown-bc9416be95f71206.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/librustc_std_workspace_alloc-583427bdf1f371c2.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libminiz_oxide-cda0273dfc900176.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libadler-9e3a606a7eac348e.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libunwind-17b9231d7a9331b7.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libcfg_if-dcab4b455bc920a1.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/liblibc-9852f6e85c86dae7.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/liballoc-2b83ab5495098fa8.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/librustc_std_workspace_core-baa2c1aeb27e5083.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libcore-b5f8c582e1776c2a.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libcompiler_builtins-d13d1e3b0b541614.rlib" "-Wl,-Bdynamic" "-lbcrypt" "-ladvapi32" "-lwindows.0.48.5" "-lpython310" "-lkernel32" "-ladvapi32" "-lbcrypt" "-lkernel32" "-lntdll" "-luserenv" "-lws2_32" "-lkernel32" "-lws2_32" "-lkernel32" "-lntdll" "-lkernel32" "-lgcc_eh" "-l:libpthread.a" "-lmsvcrt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "-Wl,--nxcompat" "-L" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib" "-o" "/target/x86_64-pc-windows-gnu/debug/deps/_rust.dll" "-Wl,--gc-sections" "-shared" "-Wl,--out-implib=/target/x86_64-pc-windows-gnu/debug/deps/lib_rust.dll.a" "-nodefaultlibs" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/rsend.o"
  = note: /usr/bin/x86_64-w64-mingw32-ld: cannot find -lpython310
          collect2: error: ld returned 1 exit status
          
error: could not compile `pyo3-poker-eval` (lib) due to previous error

Note: I used the same cargo build --target x86_64-pc-windows-gnu on a a hello world project and it works fine.

Is this a bug ? Else what is missing to cross compile ?

What target(s) are you cross-compiling for?

No response

Which operating system is the host (e.g computer cross is on) running?

  • macOS
  • Windows
  • Linux / BSD
  • other OS (specify in description)

What architecture is the host?

  • x86_64 / AMD64
  • arm32
  • arm64 (including Mac M1)

What container engine is cross using?

  • docker
  • podman
  • other container engine (specify in description)

cross version

cross 0.2.5

Example

See above

Additional information / notes

Hopefully this is enough info.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions