New comment by not-chicken on void-packages repository https://github.com/void-linux/void-packages/pull/27787#issuecomment-762674195 Comment: > On crossbuild, tested via `./xbps-src pkg -a aarch64-musl mono-addins`, it complains about: > > ``` > Running autoconf ... > Running ./configure ... > checking for a BSD-compatible install... /builddir/.xbps-mono-addins/wrappers/install -c > checking whether build environment is sane... yes > 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 UID '1000' is supported by ustar format... yes > checking whether GID '1000' is supported by ustar format... yes > checking how to create a ustar tar archive... none > checking whether to enable maintainer-specific portions of Makefiles... yes > checking pkg-config is at least version 0.16... yes > checking for mcs... no > configure: error: mcs Not found > => ERROR: mono-addins-1.3_1: pre_configure: './autogen.sh' exited with 1 > => ERROR: in pre_configure() at srcpkgs/mono-addins/template:18 > ``` > > It's failing to find mcs? Doing `xlocate /usr/bin/mcs` returns `mono-6.12.0.107_1 /usr/bin/mcs`. Mono IS in `depends` and `mono-devel` is in `makedepends`. Is it appropriate to do something like `nocross="mcs not available on cross platform"`? You will need to reshuffle some dependencies, also look into difference between `hostmakedepends` and `makedepends` from manual.md. Usually `makedepends` contain only `-devel` packages, comprising of pkgconfig files,header files, etc. All the tools that are actually executed while buidling the package goes into `hostmakedepends` In this case `mono` needs to go in `hostmakedepends`, and `mono-devel` may or may not be needed in `makedepends`. It worked for native build since `mono-devel` automatically pulls `mono` package for the same arch.