XVim: Build failure using Xcode 8.3 beta 3

Operation

After self-signing Xcode:

sudo xcode-select -s <path-to-xcode-8.3-beta-3>
make

Expected behaviour

Should build XVim and install it to Xcode’s plugins.

Environments

  • Xcode Version: 8.3 beta 3, 8W132P
  • XVim branch and revision: Current develop branch, ec2c601
  • Keyboard Language: US English Dvorak
  • Input source language: US English Dvorak

Crash log (if any)

… (long build log) …

Ld build/Release/XVim.xcplugin/Contents/MacOS/XVim normal x86_64 cd /Users/kevinconner/src/XVimProject/XVim export MACOSX_DEPLOYMENT_TARGET=10.7 /Applications/Xcode-beta\ with\ XVim.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -bundle -isysroot /Applications/Xcode-beta\ with\ XVim.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -L/Users/kevinconner/src/XVimProject/XVim/build/Release -L/Applications/Xcode-beta\ with\ XVim.app/Contents/Developer/…/PlugIns/IDESourceEditor.ideplugin/Contents/MacOS -F/Users/kevinconner/src/XVimProject/XVim/build/Release -F/Applications/Xcode-beta\ with\ XVim.app/Contents/Developer/…/Frameworks -F/Applications/Xcode-beta\ with\ XVim.app/Contents/Developer/…/PlugIns -F/Applications/Xcode-beta\ with\ XVim.app/Contents/Developer/…/SharedFrameworks -filelist /Users/kevinconner/src/XVimProject/XVim/build/XVim.build/Release/XVim.build/Objects-normal/x86_64/XVim.LinkFileList -mmacosx-version-min=10.7 -Xlinker -object_path_lto -Xlinker /Users/kevinconner/src/XVimProject/XVim/build/XVim.build/Release/XVim.build/Objects-normal/x86_64/XVim_lto.o -fobjc-arc -fobjc-link-runtime -framework AppKit -framework Cocoa -framework IDEFoundation -framework IDEKit -framework DVTFoundation -framework DVTKit /Applications/Xcode-beta\ with\ XVim.app/Contents/PlugIns/IDELanguageSupportUI.ideplugin/Contents/MacOS/IDELanguageSupportUI /Applications/Xcode-beta\ with\ XVim.app/Contents/PlugIns/IDESourceEditor.ideplugin/Contents/MacOS/IDESourceEditor -Xlinker -dependency_info -Xlinker /Users/kevinconner/src/XVimProject/XVim/build/XVim.build/Release/XVim.build/Objects-normal/x86_64/XVim_dependency_info.dat -o /Users/kevinconner/src/XVimProject/XVim/build/Release/XVim.xcplugin/Contents/MacOS/XVim Undefined symbols for architecture x86_64: "OBJC_CLASS$IDEPlaygroundEditor", referenced from: anon in IDEPlaygroundEditor+XVim.o l_OBJC$CATEGORY_IDEPlaygroundEditor$_XVim in IDEPlaygroundEditor+XVim.o objc-class-ref in XVimHookManager.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

About this issue

  • Original URL
  • State: open
  • Created 7 years ago
  • Reactions: 16
  • Comments: 20 (4 by maintainers)

Commits related to this issue

Most upvoted comments

@jduan you need to build the develop branch to get support for Xcode 8.3.1 as IDEPlaygroundEditor has been removed. See #1055

Building @pebble8888’s commit solves the problem.

1.use Xcode to open xVim project! 2.entry “/XVim/Event Dispatchers” and then delete “IDEPlaygroundEditor+Xvim.h” and “IDEPlaygroundEditor+Xvim.m”
3.and entry “XVimHookManager.m” to delete the reference of them .

it works!

@tidbeck Thanks a lot! Switching to the develop branch made it work in Xcode 8.3.2 for me.

Sorry but I don’t have much time to merge it to master branch. The fix is already merged into develop branch.

It’s standard git operations:

  • git fetch origin
  • git checkout origin/develop

Also work in XCode8.3.2 , good job!

Got it working with Xcode 8.3 using the above, but now in Xcode 8.3.1, even though it builds, it doesn’t seem to load XVim when using Xcode.

Same for me (I ported the changes on XVim’s master because the fork had a few more diffs, and it worked). Nice workaround until the changes are merged.