Closed cokia closed 6 years ago
Same issue.
@aquynh macOS 10.14 (Mojave) deprecated support for i386
so removing it from https://github.com/aquynh/capstone/blob/master/Makefile#L13 would fix this.
i386 LIBARCHS
in Your_PACKAGE PATH/src/MakeFile
just like @blacktop said.pip install Your_PACKAGE_PATH
will work perfectly. And same solution for unicorn
in Mojave. Pwntools installed 😄
Please send a pull req to remove i386, i will merge it, thanks.
I think this issue should close.. thanks for Contribution of all..!
Try this as a temporary solution: https://gist.github.com/Inndy/cc9f725c22f23fe87182fd895e7e7ff3
@Pr0phet Hi, I tried the same solution for unicorn but sadly it does not work for me. Could you please give me more details about what you removed from unicorn files ? Thank you !
@MichaelHalfon See this for unicorn: https://github.com/unicorn-engine/unicorn/issues/206
For me, this worked on Mojave:
brew install unicorn && UNICORN_QEMU_FLAGS="--python=`whereis python`" pip install unicorn`
We just released Capstone 4.0, which works for Mojave now. You can upgrade from older version with:
$ sudo pip install capstone --upgrade
I'm trying to use capstone==3.0.5rc2, but there is no LIBARCHS in the Makefile or in any file. Doesn't work either with changing MACOS_UNIVERSAL=no. Anyone had the same problem with this specific version? (I can't upgrade because I'm using roach 0.1.2 that needs capstone3.0.5rc2 only.)
I'm receiving the following error message:
LINK libcapstone.dylib
ld: warning: The i386 architecture is deprecated for macOS (remove from the Xcode build setting: ARCHS)
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd
Undefined symbols for architecture i386:
"___bzero", referenced from:
_Thumb_getInstruction in ARMDisassembler.o
_ARM_getInstruction in ARMDisassembler.o
_AArch64_getInstruction in AArch64Disassembler.o
_Mips_getInstruction in MipsDisassembler.o
_Mips64_getInstruction in MipsDisassembler.o
_PPC_getInstruction in PPCDisassembler.o
_Sparc_getInstruction in SparcDisassembler.o
...
"_vsnprintf", referenced from:
_cs_vsnprintf in cs.o
(maybe you meant: _cs_vsnprintf)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [libcapstone.dylib] Error 1
error: [Errno 2] No such file or directory: 'libcapstone.dylib'
----------------------------------------
Failed building wheel for capstone
Running setup.py clean for capstone
Failed to build capstone
we still keep the branch https://github.com/aquynh/capstone/tree/v3 for v3.
i can fix this Mojave issue in this branch if you want.
we still keep the branch https://github.com/aquynh/capstone/tree/v3 for v3. i can fix this Mojave issue in this branch if you want.
Thank you, I think it will be important for those who uses packages with depends on this specific version (I think there are a lot in this situation).
But, as a good workaround (It took me half of a day to realize that) is just to change the compiler from Xcode to gcc.
env CC=/usr/local/bin/gcc-8 pip install capstone-3.0.5rc2.tgz
I had some problems with libjpeg too. When I tryed to:
cmake -DCAPSTONE_X86_SUPPORT=0
to remove x86 build (but didn't work anyway, even with corret libraries, it still try to build to x86)
dyld: Symbol not found: __cg_jpeg_resync_to_restart
Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
Expected in: /usr/local/lib/libJPEG.dylib
in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
Abort trap: 6
It was using the home brew libraries. I had to do:
export DYLD_LIBRARY_PATH=/usr/lib/:ADDITION_LIBRARY_PATH_LOCATION
to avoid that.
I hope it help you to track bugs.
pip install --user capstone is not working at OSX Mojave (14.14 Beta (18A353D))