Skip to content

[mpir] Fix compile error for Linux x86 (Error: invalid instruction su…#49703

Draft
robbert-ef wants to merge 1 commit into
microsoft:masterfrom
easyflex:mpir_linux_x86
Draft

[mpir] Fix compile error for Linux x86 (Error: invalid instruction su…#49703
robbert-ef wants to merge 1 commit into
microsoft:masterfrom
easyflex:mpir_linux_x86

Conversation

@robbert-ef

Copy link
Copy Markdown
Contributor

Fixes compile errors on linux x86:

addmul_1.c: In function ‘__gmpn_addmul_1’:
addmul_1.c:58:1: warning: unsupported size for integer register
   58 | }
      | ^
submul_1.c: In function ‘__gmpn_submul_1’:
submul_1.c:58:1: warning: unsupported size for integer register
   58 | }
      | ^
mul_1.c: In function ‘__gmpn_mul_1’:
mul_1.c:53:1: warning: unsupported size for integer register
   53 | }
      | ^
addmul_1.c: Assembler messages:
addmul_1.c:45: Error: invalid instruction suffix for `mul'
make[2]: *** [Makefile:463: addmul_1.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
mul_1.c: Assembler messages:
mul_1.c:43: Error: invalid instruction suffix for `mul'
submul_1.c: Assembler messages:
submul_1.c:45: Error: invalid instruction suffix for `mul'
make[2]: *** [Makefile:463: submul_1.lo] Error 1
make[2]: *** [Makefile:463: mul_1.lo] Error 1
make[1]: *** [Makefile:953: all-recursive] Error 1
make: *** [Makefile:756: all] Error 2
  • Changes comply with the maintainer guide.
  • SHA512s are updated for each updated download.
  • The "supports" clause reflects platforms that may be fixed by this new version.
  • Any fixed CI baseline entries are removed from that file.
  • Any patches that are no longer applied are deleted from the port's directory.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Only one version is added to each modified port's versions file.

@dg0yt

dg0yt commented Jan 30, 2026

Copy link
Copy Markdown
Contributor

IDK about mpir in particular, but adding an explicit --host for linux would be the wrong fix for most ports. Unfortunately there is no complete issue report with compiler command line.

  • The port still uses the unversioned legacy vcpkg_configure_make. On Linux, combined with AUTOCONFIG, this function would already set --host if using a prefixed compiler.
  • The prefered functions live in port vcpkg-make. There is a different handling of the flags. IMO improvements should start from a port to these functions.

@BillyONeal BillyONeal marked this pull request as draft January 30, 2026 22:43
@BillyONeal

Copy link
Copy Markdown
Member

I agree with @dg0yt and builds aren't passing so I changed this to draft.

@dg0yt dg0yt mentioned this pull request Feb 4, 2026
@dg0yt

dg0yt commented Feb 4, 2026

Copy link
Copy Markdown
Contributor

Please try #49799.

@robbert-ef

Copy link
Copy Markdown
Contributor Author

I agree with @dg0yt and builds aren't passing so I changed this to draft.

Failing builds seems to be unrelated to code changes, build-x64-linux-dbg-err.log contains:

/mnt/vcpkg-ci/b/mpir/src/428702d56e-def7e839da.clean/missing: line 81: makeinfo: command not found
WARNING: 'makeinfo' is missing on your system.
         You should only need it if you modified a '.texi' file, or
         any other file indirectly affecting the aspect of the manual.
         You might want to install the Texinfo package:
         <https://www.gnu.org/software/texinfo/>
         The spurious makeinfo call might also be the consequence of
         using a buggy 'make' (AIX, DU, IRIX), in which case you might
         want to install GNU make:
         <https://www.gnu.org/software/make/>
make[2]: *** [Makefile:407: .././../src/428702d56e-def7e839da.clean/doc/mpir.info] Error 127
make[1]: *** [Makefile:956: all-recursive] Error 1
make: *** [Makefile:759: all] Error 2

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants