Hi folks,
I've just been trying to install Retro68, but it fell over somewhere when trying to link. As per the instructions, the first thing I did was:
Then there were some more commands ending in:
etc until it got to:
Usually this happens when some of the building process expects Arm64, but instead x64 stuff (or nothing) has been installed. Here it implies it's boost. There's certainly lots of
Julians-MacBook-Pro: PceMacCP julianskidmore$ which -a brew
/opt/homebrew/bin/brew (this means it's ARM64)
/usr/local/bin/brew
Julians-MacBook-Pro: PceMacCP julianskidmore$ brew config
<snip1>
CPU: octa-core 64-bit arm_blizzard_avalanche (seems to think it's installing for ARM64)
<snip1>
macOS: 15.5-arm64 (seems to think it's installing for ARM64)
<snip1>
Rosetta 2: false
Julians-MacBook-Pro: PceMacCP julianskidmore$ ld -v
<snip2>. (ld seems to think it can link for ARM)
configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em
<snip2>
Julians-MacBook-Pro: PceMacCP julianskidmore$ g++ -v
Apple clang version 17.0.0 (clang-1700.0.13.5)
Target: arm64-apple-darwin24.5.0 (g++ compiles to ARM64)
<snip3>
Julians-MacBook-Pro: PceMacCP julianskidmore$ gcc -v
Apple clang version 17.0.0 (clang-1700.0.13.5)
Target: arm64-apple-darwin24.5.0 (gcc will compile to ARM64)
However, it looks like some ARM64 support is missing for the build, and that
OK, so I tried re-running
Any idea what's wrong?
<Snip1
HOMEBREW_VERSION: 4.5.12
ORIGIN: https://github.com/Homebrew/brew
HEAD: 50fa89e96bccedeca21287427eb7db12289f57ea
Last commit: 3 days ago
Branch: stable
Core tap JSON: 26 Jul 12:00 UTC
Core cask tap JSON: 26 Jul 12:00 UTC
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: /private/tmp/com.apple.launchd.eZzpRYSkib/org.xquartz:0
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 3.4.5 => /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.4.5/bin/ruby
..
CLT: 16.4.0.0.1.1747106510
Xcode: 16.4
..
CLT: 16.4.0.0.1.1747106510
Xcode: 16.4>
<snip2
@(#)PROGRAM:ld PROJECT:ld-1167.5
BUILD 01:45:05 Apr 30 2025
..
LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29)
TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.5)>
<snip3
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
>
I've just been trying to install Retro68, but it fell over somewhere when trying to link. As per the instructions, the first thing I did was:
brew install boost cmake gmp mpfr libmpc bison texinfoThen there were some more commands ending in:
../Retro68/build-toolchain.bash . There was lots of spew from the build process, which eventually ended in:
Code:
[ 71%] Linking CXX executable ResInfo
Undefined symbols for architecture arm64:
"boost::filesystem::path::append_v3(char const*, char const*)", referenced from:
Code:
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
Usually this happens when some of the building process expects Arm64, but instead x64 stuff (or nothing) has been installed. Here it implies it's boost. There's certainly lots of
.o files in the build directories, so it's getting quite a long way. I figured I should check whether my tools are ARM64 (I ran these commands after I cd'd to the PceMacCP directory)..Julians-MacBook-Pro: PceMacCP julianskidmore$ which -a brew
/opt/homebrew/bin/brew (this means it's ARM64)
/usr/local/bin/brew
Julians-MacBook-Pro: PceMacCP julianskidmore$ brew config
<snip1>
CPU: octa-core 64-bit arm_blizzard_avalanche (seems to think it's installing for ARM64)
<snip1>
macOS: 15.5-arm64 (seems to think it's installing for ARM64)
<snip1>
Rosetta 2: false
Julians-MacBook-Pro: PceMacCP julianskidmore$ ld -v
<snip2>. (ld seems to think it can link for ARM)
configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em
will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em
<snip2>
Julians-MacBook-Pro: PceMacCP julianskidmore$ g++ -v
Apple clang version 17.0.0 (clang-1700.0.13.5)
Target: arm64-apple-darwin24.5.0 (g++ compiles to ARM64)
<snip3>
Julians-MacBook-Pro: PceMacCP julianskidmore$ gcc -v
Apple clang version 17.0.0 (clang-1700.0.13.5)
Target: arm64-apple-darwin24.5.0 (gcc will compile to ARM64)
However, it looks like some ARM64 support is missing for the build, and that
boost is at least one of the libraries not properly installed. After some trawling I found that typing brew info boost told me it was in /opt/homebrew/Cellar/boost/1.88.0. OK, I know that I've installed an ARM64 version of Boost, by uninstalling it and re-installing it whereupon it said:Pouring boost--1.88.0.arm64_sequoia.bottle.tar.gzOK, so I tried re-running
../Retro68/build-toolchain.bash and a million lines of spew appeared as expected. Amongst all the sick I could occasionally see that it was trying to build for aarch64 (or arm64, it sped by so fast it was hard to tell) and after several minutes, just as before it vomited the same error message.Any idea what's wrong?
<Snip1
HOMEBREW_VERSION: 4.5.12
ORIGIN: https://github.com/Homebrew/brew
HEAD: 50fa89e96bccedeca21287427eb7db12289f57ea
Last commit: 3 days ago
Branch: stable
Core tap JSON: 26 Jul 12:00 UTC
Core cask tap JSON: 26 Jul 12:00 UTC
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_DISPLAY: /private/tmp/com.apple.launchd.eZzpRYSkib/org.xquartz:0
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 3.4.5 => /opt/homebrew/Library/Homebrew/vendor/portable-ruby/3.4.5/bin/ruby
..
CLT: 16.4.0.0.1.1747106510
Xcode: 16.4
..
CLT: 16.4.0.0.1.1747106510
Xcode: 16.4>
<snip2
@(#)PROGRAM:ld PROJECT:ld-1167.5
BUILD 01:45:05 Apr 30 2025
..
LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29)
TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.5)>
<snip3
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
>


