You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Missing compatible architecture on Apple Silicon & macOS Ventura #481
After upgrading my MBP to macOS Ventura 13.0, proxychains4 fails to run and throws this erorr:
It's weird that error message said have 'x86_64,arm64e', need '', I have no idea why arm64e doesn't work again (see #453 ). My proxychain4 is x86_64 + arm64 and libproxychains4.dylib is x86_64 + arm64e.
A temprary solution to bypass this issue is use arch -x86_64, like arch -x86_64 /opt/homebrew/bin/proxychains4 curl -I https://www.google.com could normally run:
the need '' error message suggests this is a new bug in "ventura". maybe ask apple about it. you can also try to rebuild proxychains-ng with --fat-binary-m1.
what's interesting is that the fat binary "proxychains4" itself runs, but the dylib is considered inappropriate. i take it your MBP is x86_64 ?
... is a new bug in "ventura", agree. But I haven't find anyone else reports this issue on Google yet.
My compiling options is ./configure --prefix=/opt/homebrew/Cellar/proxychains-ng/4.16 --sysconfdir=/opt/homebrew/etc --fat-binary-m1 and my MBP's CPU is M1 Max. The arch -x86_64 could run because of Rosetta2.
Hi there, I found that different program is using different arch, for example, for curl, the default is working.
but using git, you'll need to specify the arch using arch -x86_64 prefix.
Don't know whether there's a fix, but anyway, it's usable.
Note: I'm building this using --fat-binary-m1.
but using git, you'll need to specify the arch using arch -x86_64 prefix.
is git from system or from homebrew ? if the latter, as i highly suspect, then probably homebrew is configured for the wrong architecture and what it produces works accidentally via rosetta.
Apple Silicon & macOS Monterey 12.3
I have the same problem. from homebrew
"arch -x86_64 /opt/homebrew/bin/proxychains4" is not suitable for me currently.
[proxychains] config file found: /opt/homebrew/etc/proxychains.conf [proxychains] preloading /opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib dyld[3012]: terminating because inserted dylib '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' could not be loaded: tried: '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'arm64e')), '/usr/local/lib/libproxychains4.dylib' (no such file), '/usr/lib/libproxychains4.dylib' (no such file) dyld[3012]: tried: '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'arm64e')), '/usr/local/lib/libproxychains4.dylib' (no such file), '/usr/lib/libproxychains4.dylib' (no such file) [1] 3012 abort proxychains4 curl ipinfo.io
Hello, after I tried to install proxychains-ng for the first time and closed csrutil, I ran a random command: proxychains4 brew install gedit. But it seems to be missing something, which may not be user-friendly for newbies. Please see:
peng@bogon etc % proxychains4 brew install gedit
[proxychains] config file found: /opt/homebrew/etc/proxychains.conf
[proxychains] preloading /opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib
[proxychains] DLL init: proxychains-ng 4.16
dyld[1571]: terminating because inserted dylib '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' could not be loaded: tried: '/opt/homebrew/Cellar/proxychains-ng/4.16/ lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need '')), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/Cellar/proxychains-ng /4.16/lib/libproxychains4.dylib' (no such file), '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64 ', need ''))
dyld[1571]: tried: '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need '')), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (no such file), '/opt/homebrew/Cellar/proxychains-ng/4.16/ lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need ''))
My system information is: Sonoma-14.1.2, M2-max
@pengweizhong: the error you're getting is precisely what this thread is about and solutions are presented. as far as "user-friendly" is concerned, the mess presented to us by OS X makes it almost impossible, and proxychains-ng isn't meant to be used by "newbies" anyway - see the big fat warning on top of the README.
So was the need '' part of a macOS bug? I have someone reporting the following error fat file, but missing compatible architecture (have 'x86_64,arm64,arm64e', need '')), and this was the only thread i found that mentioned a similar issue with the empty need statement. The odd thing is, this user has the following output for uname -a:
Darwin xxx-MBP.fios-router.home 22.6.0 Darwin Kernel Version 22.6.0: Mon Apr 22 20:50:39 PDT 2024; root:xnu-8796.141.3.705.2~1/RELEASE_ARM64_T8103 arm64
I find it interesting that the architecture shows arm64 when I could have sworn it would be arm64e for all Apple Silicon Macs. They are running the latest Ventura version on an original M1 Mac (SIP disabled)
Confirming --fat-binary-m2 (added in v4.17) works perfectly on macOS 26.2 with M4 Max and -arm64e_preview_abi enabled:
./configure --prefix=/usr/local --fat-binary-m2
make -j$(sysctl -n hw.ncpu)
sudo make install
file libproxychains4.dylib
# Mach-O universal binary with 3 architectures: [x86_64] [arm64] [arm64e]
proxychains4 curl -s ifconfig.me
# works
No need for the manual CFLAGS="-arch arm64e" workaround anymore; --fat-binary-m2 handles it cleanly.
The remaining issue is that Homebrew's bottle is arm64-only and doesn't pass --fat-binary-m2, so anyone installing via brew install proxychains-ng still gets a broken build on systems with -arm64e_preview_abi enabled.
If anyone feels up to it, filing a separate issue on homebrew-core for that would be the right move.
Activity
rofl0r commentedon Oct 28, 2022
the
need ''error message suggests this is a new bug in "ventura". maybe ask apple about it. you can also try to rebuild proxychains-ng with --fat-binary-m1.what's interesting is that the fat binary "proxychains4" itself runs, but the dylib is considered inappropriate. i take it your MBP is x86_64 ?
malash commentedon Oct 29, 2022
... is a new bug in "ventura", agree. But I haven't find anyone else reports this issue on Google yet.My compiling options is
./configure --prefix=/opt/homebrew/Cellar/proxychains-ng/4.16 --sysconfdir=/opt/homebrew/etc --fat-binary-m1and my MBP's CPU is M1 Max. Thearch -x86_64could run because of Rosetta2.rofl0r commentedon Oct 30, 2022
seems like we can't do anything here for the moment until more intel is gathered...
mr-m0nst3r commentedon Nov 20, 2022
Hi there, I found that different program is using different arch, for example, for curl, the default is working.
but using git, you'll need to specify the arch using
arch -x86_64prefix.Don't know whether there's a fix, but anyway, it's usable.
Note: I'm building this using
--fat-binary-m1.rofl0r commentedon Nov 20, 2022
is git from system or from homebrew ? if the latter, as i highly suspect, then probably homebrew is configured for the wrong architecture and what it produces works accidentally via rosetta.
bobshao commentedon Nov 22, 2022
Thanks @malash , your workaround "arch -x86_64 /opt/homebrew/bin/proxychains4" is also OK for me currently. Hope someone can fix this issue.
kingz40o commentedon Feb 21, 2023
Apple Silicon & macOS Monterey 12.3
I have the same problem. from homebrew
"arch -x86_64 /opt/homebrew/bin/proxychains4" is not suitable for me currently.
[proxychains] config file found: /opt/homebrew/etc/proxychains.conf [proxychains] preloading /opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib dyld[3012]: terminating because inserted dylib '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' could not be loaded: tried: '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'arm64e')), '/usr/local/lib/libproxychains4.dylib' (no such file), '/usr/lib/libproxychains4.dylib' (no such file) dyld[3012]: tried: '/opt/homebrew/Cellar/proxychains-ng/4.16/lib/libproxychains4.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'arm64e')), '/usr/local/lib/libproxychains4.dylib' (no such file), '/usr/lib/libproxychains4.dylib' (no such file) [1] 3012 abort proxychains4 curl ipinfo.iorofl0r commentedon Feb 21, 2023
@kingz40o use --fat-binary-m1
kingz40o commentedon Feb 22, 2023
is good
pich4ya commentedon Mar 6, 2023
Here we go.
Then,
gusechuisheng commentedon Mar 9, 2023
gusechuisheng commentedon Mar 9, 2023
rofl0r commentedon Mar 9, 2023
@gusechuisheng what's the point of your comments ?
malash commentedon Mar 11, 2023
@pich4ya Thank you, I tried your solution and it does work. cc @rofl0r
gusechuisheng commentedon Mar 13, 2023
我试着用他们的方式编译,直接报错。
urugang commentedon Apr 8, 2023
M1 + macOS 13.3.1 (22E261) + SIP enabled: all seems ok
longjiahui commentedon Jul 29, 2023
It worked
gavinchou commentedon Sep 16, 2023
Works.
pengweizhong commentedon Dec 3, 2023
Hello, after I tried to install
proxychains-ngfor the first time and closedcsrutil, I ran a random command:proxychains4 brew install gedit. But it seems to be missing something, which may not be user-friendly for newbies. Please see:rofl0r commentedon Dec 3, 2023
@pengweizhong: the error you're getting is precisely what this thread is about and solutions are presented. as far as "user-friendly" is concerned, the mess presented to us by OS X makes it almost impossible, and proxychains-ng isn't meant to be used by "newbies" anyway - see the big fat warning on top of the README.
healchow commentedon Jul 2, 2024
I used this method to install Proxychains on my
Apple M1 Prochip andSonoma 14.5operating system, but I ultimately failed.After my search and attempt, I finally used the method here to successfully install Proxychains on my computer🎉.
rofl0r commentedon Jul 2, 2024
did you also try the new --fat-binary-m2 switch ?
zlshames commentedon Jul 12, 2024
So was the
need ''part of a macOS bug? I have someone reporting the following errorfat file, but missing compatible architecture (have 'x86_64,arm64,arm64e', need '')), and this was the only thread i found that mentioned a similar issue with the emptyneedstatement. The odd thing is, this user has the following output foruname -a:I find it interesting that the architecture shows arm64 when I could have sworn it would be arm64e for all Apple Silicon Macs. They are running the latest Ventura version on an original M1 Mac (SIP disabled)
rofl0r commentedon Jul 13, 2024
looks definitely like a bug to me. whether it is fixed these days is unknown.
partoneplay commentedon Nov 20, 2024
Still not fixed on Apple Silicon
s0k commentedon Feb 15, 2025
M4芯片参考here完成,具体可看m4 安装 proxychains-ng 问题。
ylluminate commentedon Dec 30, 2025
Confirming
--fat-binary-m2(added in v4.17) works perfectly on macOS 26.2 with M4 Max and-arm64e_preview_abienabled:No need for the manual
CFLAGS="-arch arm64e"workaround anymore;--fat-binary-m2handles it cleanly.The remaining issue is that Homebrew's bottle is arm64-only and doesn't pass
--fat-binary-m2, so anyone installing viabrew install proxychains-ngstill gets a broken build on systems with-arm64e_preview_abienabled.If anyone feels up to it, filing a separate issue on homebrew-core for that would be the right move.