Skip to content

zig cc needs to pass -m(no-)abicalls for 64-bit MIPS #23965

@nektro

Description

@nektro

Zig Version

0.14.0

Steps to Reproduce and Observed Behavior

  1. git clone https://github.com/nektro/zigmod
  2. cd zigmod
  3. git checkout nektro-patch-64774
  4. zig build
  5. zig build -Dtarget=mips64-linux-musl
[meghan@nixos:~/dev/zigmod]$ zig build -Dtarget=mips64-linux-musl
install
└─ install zigmod
   └─ zig build-exe zigmod Debug mips64-linux-musl
      └─ zig build-lib dummy Debug mips64-linux-musl 16 errors
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/reader.c:2:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/reader.c:2:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/dumper.c:2:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/dumper.c:2:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/writer.c:2:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/writer.c:2:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/loader.c:2:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/loader.c:2:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/parser.c:42:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/parser.c:42:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/api.c:2:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/api.c:2:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/emitter.c:2:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/emitter.c:2:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
:1:1: error: ignoring '-fno-PIC' option as it cannot be used with implicit usage of -mabicalls and the N64 ABI
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include/yaml.h:18:10: error: 'stdlib.h' file not found
#include <stdlib.h>
         ^~~~~~~~~~~
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/scanner.c:479:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/scanner.c:479:
#include "yaml_private.h"
         ^
/home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:10: note: in file included from /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/yaml_private.h:5:
#include <yaml.h>
         ^
error: warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/f30a96ade3b92412-reader.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/fa63000dc84a91bf-dumper.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/4678cae5be6a2535-writer.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/940271dc528d9f26-loader.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/ff4c73ffd8d472c0-parser.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/4071b89e663e386a-api.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/f114a56718d82bcc-emitter.o.d': FileNotFound
warning(compilation): failed to delete '/home/meghan/dev/zigmod/.zig-cache/tmp/59c088cca1f13ad8-scanner.o.d': FileNotFound

error: the following command failed with 16 compilation errors:
/home/meghan/.local/share/zig/0.14.0/zig build-lib -freference-trace=256 -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/api.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/dumper.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/emitter.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/loader.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/parser.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/reader.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/scanner.c -cflags -DYAML_VERSION_MAJOR=0 -DYAML_VERSION_MINOR=2 -DYAML_VERSION_PATCH=5 -DYAML_VERSION_STRING="0.2.5" -DYAML_DECLARE_STATIC=1 -- /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/src/writer.c -ODebug -target mips64-linux-musl -mcpu baseline -I /home/meghan/dev/zigmod/.zig-cache/zigmod/deps/git/github.com/yaml/libyaml/2c891fc7a770e8ba2fec34fc6b545c672beb37e6/include -Mroot -lc --cache-dir /home/meghan/dev/zigmod/.zig-cache --global-cache-dir /home/meghan/.cache/zig --name dummy -static --zig-lib-dir /home/meghan/.local/share/zig/0.14.0/lib/ --listen=- 
Build Summary: 23/27 steps succeeded; 1 failed
install transitive failure
└─ install zigmod transitive failure
   └─ zig build-exe zigmod Debug mips64-linux-musl transitive failure
      ├─ zig build-lib dummy Debug mips64-linux-musl 16 errors
      └─ zig build-lib dummy Debug mips64-linux-musl (+1 more reused dependencies)
error: the following build command failed with exit code 1:
/home/meghan/dev/zigmod/.zig-cache/o/95b5d2c8e921a6cb3fcc06a5454bb36e/build /home/meghan/.local/share/zig/0.14.0/zig /home/meghan/.local/share/zig/0.14.0/lib /home/meghan/dev/zigmod /home/meghan/dev/zigmod/.zig-cache /home/meghan/.cache/zig --seed 0xddab687e -Z680945d7cbcb0d8c -Dtarget=mips64-linux-musl

Expected Behavior

both builds to work

Metadata

Metadata

Assignees

No one assigned

    Labels

    arch-mips6464-bit MIPSbackend-llvmThe LLVM backend outputs an LLVM IR Module.bugObserved behavior contradicts documented or intended behaviorupstreamAn issue with a third party project that Zig uses.zig ccZig as a drop-in C compiler feature

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions