简体   繁体   English

i386 架构在 MacOS 错误中被弃用

[英]i386 architecture deprecated in MacOS error

I'm completely new to the Mac environment and I've only been using it for a few hours.我对 Mac 环境完全陌生,而且我只使用了几个小时。 When I run a shell script, I get the following error-当我运行 shell 脚本时,出现以下错误 -

ld: warning: The i386 architecture is deprecated for macOS (remove from the Xcode build setting: ARCHS)
ld: warning: ignoring file /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd, missing required architecture i386 in file /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd
Undefined symbols for architecture i386:
  "_OSAtomicCompareAndSwapPtr", referenced from:
  ___darwintrace_setup in darwintrace.o
  "__DefaultRuneLocale", referenced from:
  _check_interpreter in proc.o
  "___error", referenced from:
      __dt_access in access.o
      __dt_close in close.o
  ___darwintrace_setup_tls in darwintrace.o
  ___darwintrace_setup in darwintrace.o
  __dt_dup2 in dup2.o
  __dt_mkdir in mkdir.o
  __dt_open in open.o
  ...
  "___getdirentries64", referenced from:
      __interpose___getdirentries64 in readdir.o
  "___maskrune", referenced from:
      _check_interpreter in proc.o
  "___snprintf_chk", referenced from:
      ___darwintrace_sandbox_check in darwintrace.o
      ___darwintrace_log_op in darwintrace.o
  "___stack_chk_fail", referenced from:
      ___darwintrace_setup in darwintrace.o
      ___darwintrace_is_in_sandbox in darwintrace.o
      ___darwintrace_sandbox_check in darwintrace.o
      ___darwintrace_log_op in darwintrace.o
      _check_interpreter in proc.o
      __dt_getdirentries64 in readdir.o
     __dt_getdirentries in readdir.o
  ...

  "_unlink", referenced from:
      __interpose_unlink in unlink.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [darwintrace.dylib] Error 1
make[1]: *** [all] Error 1
make: *** [all] Error 1

How do I remove i386 architecture from Xcode?如何从 Xcode 中删除 i386 架构? How do I resolve this error?如何解决此错误?

使用 xcode 9.4 或 9.4.1,这是支持 32 位构建并在 Mojave 上有效的最后一个版本。

So the issue is that apple has removed to ability to compile 32 bit programs on macos with xcode10所以问题是苹果已经取消了在 macos 上使用 xcode10 编译 32 位程序的能力

source: https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes来源: https : //developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM