Building MacVim with full Python EPD support

If you want to use the :python or :pyfile commands or the omnicompletion plugin of Vim on a Mac with EPD, you will most probably want to recompile it with the Python support linked on the EPD instllation in place of the Mac Python.

Here are the steps to follow (done on the latest stable 7.3 sources):

1. As EPD 6.x 64bit on MacOSX does not have the full ETS, you will have to compile it against the 32bit version. So, set the right flags to make it work :


export CFLAGS=-m32
export CPPFLAGS=-m32

Then configure it to use the EPD installation. If your PATH is update to point to EPD, it is straightforward :


./configure --enable-pythoninterp --with-macarchs=i386

The output should contains something like the following lines :


...
checking Python version... 2.6
checking Python is 1.4 or better... yep
checking Python's install prefix... /Library/Frameworks/Python.framework/Versions/6.3
checking Python's execution prefix... /Library/Frameworks/Python.framework/Versions/6.3
checking Python's configuration directory... /Library/Frameworks/Python.framework/Versions/6.3/lib/python2.6/config
...

Then calling make will result in an issue when generating the icons. It has to use the default Python installation to make them but the default Python installation works in 64bit mode. The EPD Python will miss some modules. To fix that, edit src/MacVim/icons/Makefile and prefix the python calls with the following :


arch -i386 /usr/bin/python make_icons.py $(OUTDIR)

This will ensure you use the default Mac installation in 32bit mode. Do the same for all the python calls in the Makefile.

After that, the app must build fine and you can benefit from the full EPD module list from within MacVim

One Response to Building MacVim with full Python EPD support

  1. smoh says:

    hi, I want to use “ropevim” with macvim.
    I installed macvim ‘out-of-the-box’ version which does have python support. But I noticed that I need to tell macvim to use the EPD python interpreter to use ropevim not the /usr/bin/python that is shipped with mac. So I’m compiling macvim, but having problems.

    The result of ./configure –enable-pythoninterp –with-macarchs=i386 is as follows:

    checking whether make sets $(MAKE)… yes
    checking for gcc… gcc
    checking for C compiler default output file name… a.out
    checking whether the C compiler works… yes
    checking whether we are cross compiling… no
    checking for suffix of executables…
    checking for suffix of object files… o
    checking whether we are using the GNU C compiler… yes
    checking whether gcc accepts -g… yes
    checking for gcc option to accept ISO C89… none needed
    checking how to run the C preprocessor… gcc -E
    checking for grep that handles long lines and -e… /usr/bin/grep
    checking for egrep… /usr/bin/grep -E
    checking for library containing strerror… none required
    checking for gawk… no
    checking for mawk… no
    checking for nawk… no
    checking for awk… awk
    checking for strip… strip
    checking for ANSI C header files… yes
    checking for sys/wait.h that is POSIX.1 compatible… yes
    checking –enable-fail-if-missing argument… no
    configure: checking for buggy tools…
    – sh is ‘GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin11)
    Copyright (C) 2007 Free Software Foundation, Inc.’ – probably OK.
    checking for BeOS… no
    checking for QNX… no
    checking for Darwin (Mac OS X)… yes
    checking –disable-darwin argument… no
    checking if Darwin files are there… yes
    checking –with-developer-dir argument… not present
    checking for xcode-select… /usr/bin/xcode-select
    checking for developer dir using xcode-select… /Developer
    checking –with-macsdk argument… using default
    checking –with-macarchs argument… i386
    checking if architectures are supported… yes
    checking for sys/types.h… yes
    checking for sys/stat.h… yes
    checking for stdlib.h… yes
    checking for string.h… yes
    checking for memory.h… yes
    checking for strings.h… yes
    checking for inttypes.h… yes
    checking for stdint.h… yes
    checking for unistd.h… yes
    checking Carbon/Carbon.h usability… yes
    checking Carbon/Carbon.h presence… yes
    checking for Carbon/Carbon.h… yes
    checking Cocoa/Cocoa.h usability… yes
    checking Cocoa/Cocoa.h presence… yes
    checking for Cocoa/Cocoa.h… yes
    checking –with-local-dir argument… Defaulting to /usr/local
    checking –with-vim-name argument… Defaulting to vim
    checking –with-ex-name argument… Defaulting to ex
    checking –with-view-name argument… Defaulting to view
    checking –with-global-runtime argument… no
    checking –with-modified-by argument… no
    checking if character set is EBCDIC… no
    checking –disable-selinux argument… no
    checking for is_selinux_enabled in -lselinux… no
    checking –with-features argument… Defaulting to normal
    checking –with-compiledby argument… no
    checking –disable-xsmp argument… no
    checking –disable-xsmp-interact argument… no
    checking –enable-luainterp argument… no
    checking –enable-mzschemeinterp argument… no
    checking –enable-perlinterp argument… no
    checking –enable-pythoninterp argument… yes
    checking for python… /Library/Frameworks/Python.framework/Versions/Current/bin/python
    checking Python version… 2.7
    checking Python is 1.4 or better… yep
    checking Python’s install prefix… /Library/Frameworks/Python.framework/Versions/7.2
    checking Python’s execution prefix… /Library/Frameworks/Python.framework/Versions/7.2
    checking Python’s configuration directory… /Library/Frameworks/Python.framework/Versions/7.2/lib/python2.7/config
    checking if -pthread should be used… no
    checking if compile and link flags for Python are sane… yes
    checking –enable-python3interp argument… no
    checking –enable-tclinterp argument… no
    checking –enable-rubyinterp argument… no
    checking –enable-cscope argument… no
    checking –enable-workshop argument… no
    checking –disable-netbeans argument… no
    checking for socket in -lsocket… no
    checking for gethostbyname in -lnsl… no
    checking whether compiling netbeans integration is possible… yes
    checking –enable-sniff argument… no
    checking –enable-multibyte argument… no
    checking –enable-hangulinput argument… no
    checking –enable-xim argument… defaulting to auto
    checking –enable-fontset argument… no
    defaulting to: don’t HAVE_X11
    checking –enable-gui argument… yes/auto – automatic GUI support
    checking whether or not to look for MacVim… yes
    checking for MacVim GUI… yes
    checking X11/SM/SMlib.h usability… yes
    checking X11/SM/SMlib.h presence… yes
    checking for X11/SM/SMlib.h… yes
    checking whether toupper is broken… no
    checking whether __DATE__ and __TIME__ work… yes
    checking whether __attribute__((unused)) is allowed… yes
    checking elf.h usability… no
    checking elf.h presence… no
    checking for elf.h… no
    checking for dirent.h that defines DIR… yes
    checking for library containing opendir… none required
    checking stdarg.h usability… yes
    checking stdarg.h presence… yes
    checking for stdarg.h… yes
    checking for stdint.h… (cached) yes
    checking for stdlib.h… (cached) yes
    checking for string.h… (cached) yes
    checking sys/select.h usability… yes
    checking sys/select.h presence… yes
    checking for sys/select.h… yes
    checking sys/utsname.h usability… yes
    checking sys/utsname.h presence… yes
    checking for sys/utsname.h… yes
    checking termcap.h usability… yes
    checking termcap.h presence… yes
    checking for termcap.h… yes
    checking fcntl.h usability… yes
    checking fcntl.h presence… yes
    checking for fcntl.h… yes
    checking sgtty.h usability… yes
    checking sgtty.h presence… yes
    checking for sgtty.h… yes
    checking sys/ioctl.h usability… yes
    checking sys/ioctl.h presence… yes
    checking for sys/ioctl.h… yes
    checking sys/time.h usability… yes
    checking sys/time.h presence… yes
    checking for sys/time.h… yes
    checking for sys/types.h… (cached) yes
    checking termio.h usability… no
    checking termio.h presence… no
    checking for termio.h… no
    checking iconv.h usability… yes
    checking iconv.h presence… yes
    checking for iconv.h… yes
    checking for inttypes.h… (cached) yes
    checking langinfo.h usability… yes
    checking langinfo.h presence… yes
    checking for langinfo.h… yes
    checking math.h usability… yes
    checking math.h presence… yes
    checking for math.h… yes
    checking for unistd.h… (cached) yes
    checking stropts.h usability… no
    checking stropts.h presence… no
    checking for stropts.h… no
    checking errno.h usability… yes
    checking errno.h presence… yes
    checking for errno.h… yes
    checking sys/resource.h usability… yes
    checking sys/resource.h presence… yes
    checking for sys/resource.h… yes
    checking sys/systeminfo.h usability… no
    checking sys/systeminfo.h presence… no
    checking for sys/systeminfo.h… no
    checking locale.h usability… yes
    checking locale.h presence… yes
    checking for locale.h… yes
    checking sys/stream.h usability… no
    checking sys/stream.h presence… no
    checking for sys/stream.h… no
    checking termios.h usability… yes
    checking termios.h presence… yes
    checking for termios.h… yes
    checking libc.h usability… yes
    checking libc.h presence… yes
    checking for libc.h… yes
    checking sys/statfs.h usability… no
    checking sys/statfs.h presence… no
    checking for sys/statfs.h… no
    checking poll.h usability… yes
    checking poll.h presence… yes
    checking for poll.h… yes
    checking sys/poll.h usability… yes
    checking sys/poll.h presence… yes
    checking for sys/poll.h… yes
    checking pwd.h usability… yes
    checking pwd.h presence… yes
    checking for pwd.h… yes
    checking utime.h usability… yes
    checking utime.h presence… yes
    checking for utime.h… yes
    checking sys/param.h usability… yes
    checking sys/param.h presence… yes
    checking for sys/param.h… yes
    checking libintl.h usability… no
    checking libintl.h presence… no
    checking for libintl.h… no
    checking libgen.h usability… yes
    checking libgen.h presence… yes
    checking for libgen.h… yes
    checking util/debug.h usability… no
    checking util/debug.h presence… no
    checking for util/debug.h… no
    checking util/msg18n.h usability… no
    checking util/msg18n.h presence… no
    checking for util/msg18n.h… no
    checking frame.h usability… no
    checking frame.h presence… no
    checking for frame.h… no
    checking sys/acl.h usability… yes
    checking sys/acl.h presence… yes
    checking for sys/acl.h… yes
    checking sys/access.h usability… no
    checking sys/access.h presence… no
    checking for sys/access.h… no
    checking sys/sysinfo.h usability… no
    checking sys/sysinfo.h presence… no
    checking for sys/sysinfo.h… no
    checking wchar.h usability… yes
    checking wchar.h presence… yes
    checking for wchar.h… yes
    checking wctype.h usability… yes
    checking wctype.h presence… yes
    checking for wctype.h… yes
    checking for sys/ptem.h… no
    checking for sys/sysctl.h… yes
    checking for pthread_np.h… no
    checking for strings.h… (cached) yes
    checking whether gcc needs -traditional… no
    checking for an ANSI C-conforming const… yes
    checking for working volatile… yes
    checking for mode_t… yes
    checking for off_t… yes
    checking for pid_t… yes
    checking for size_t… yes
    checking for uid_t in sys/types.h… yes
    checking for uint32_t… yes
    checking whether time.h and sys/time.h may both be included… yes
    checking for ino_t… yes
    checking for dev_t… yes
    checking whether byte ordering is bigendian… no
    checking for rlim_t… yes
    checking for stack_t… yes
    checking whether stack_t has an ss_base field… no
    checking –with-tlib argument… empty: automatic terminal library selection
    checking for tgetent in -ltinfo… no
    checking for tgetent in -lncurses… yes
    checking whether we talk terminfo… yes
    checking what tgetent() returns for an unknown terminal… non-zero
    checking whether termcap.h contains ospeed… yes
    checking whether termcap.h contains UP, BC and PC… yes
    checking whether tputs() uses outfuntype… no
    checking whether sys/select.h and sys/time.h may both be included… yes
    checking for /dev/ptc… no
    checking for SVR4 ptys… yes
    checking for ptyranges… pqrstuvw / 0123456789abcdef
    checking default tty permissions/group… can’t determine – assume ptys are world accessible
    world
    checking return type of signal handlers… void
    checking for struct sigcontext… yes
    checking getcwd implementation is broken… no
    checking for bcmp… yes
    checking for fchdir… yes
    checking for fchown… yes
    checking for fsync… yes
    checking for getcwd… yes
    checking for getpseudotty… no
    checking for getpwnam… yes
    checking for getpwuid… yes
    checking for getrlimit… yes
    checking for gettimeofday… yes
    checking for getwd… yes
    checking for lstat… yes
    checking for memcmp… yes
    checking for memset… yes
    checking for mkdtemp… yes
    checking for nanosleep… yes
    checking for opendir… yes
    checking for putenv… yes
    checking for qsort… yes
    checking for readlink… yes
    checking for select… yes
    checking for setenv… yes
    checking for setpgid… yes
    checking for setsid… yes
    checking for sigaltstack… yes
    checking for sigstack… no
    checking for sigset… yes
    checking for sigsetjmp… yes
    checking for sigaction… yes
    checking for sigvec… yes
    checking for strcasecmp… yes
    checking for strerror… yes
    checking for strftime… yes
    checking for stricmp… no
    checking for strncasecmp… yes
    checking for strnicmp… no
    checking for strpbrk… yes
    checking for strtol… yes
    checking for tgetent… yes
    checking for towlower… yes
    checking for towupper… yes
    checking for iswupper… yes
    checking for usleep… yes
    checking for utime… yes
    checking for utimes… yes
    checking for _LARGEFILE_SOURCE value needed for large files… no
    checking for special C compiler options needed for large files… no
    checking for _FILE_OFFSET_BITS value needed for large files… no
    checking for st_blksize… yes
    checking whether stat() ignores a trailing slash… no
    checking for iconv_open()… yes; with -liconv
    checking for nl_langinfo(CODESET)… yes
    checking for strtod in -lm… yes
    checking for strtod() and other floating point functions… yes
    checking –disable-acl argument… no
    checking for acl_get_file in -lposix1e… no
    checking for acl_get_file in -lacl… no
    checking for POSIX ACL support… yes
    checking for Solaris ACL support… no
    checking for AIX ACL support… no
    checking –disable-gpm argument… no
    checking for gpm… no
    checking –disable-sysmouse argument… no
    checking for sysmouse… no
    checking for FD_CLOEXEC… yes
    checking for rename… yes
    checking for sysctl… yes
    checking for sysinfo… not usable
    checking for sysinfo.mem_unit… no
    checking for sysconf… not usable
    checking for int… yes
    checking size of int… 4
    checking for long… yes
    checking size of long… 4
    checking for time_t… yes
    checking size of time_t… 4
    checking for off_t… (cached) yes
    checking size of off_t… 8
    checking uint32_t is 32 bits… ok
    checking whether memmove handles overlaps… yes
    checking for _xpg4_setrunelocale in -lxpg4… no
    checking how to create tags… ctags -I INIT+ –fields=+S
    checking how to run man with a section nr… man -s
    checking –disable-nls argument… no
    checking for msgfmt… msgfmt
    checking for NLS… gettext() doesn’t work
    checking dlfcn.h usability… yes
    checking dlfcn.h presence… yes
    checking for dlfcn.h… yes
    checking for dlopen()… yes
    checking for dlsym()… yes
    checking setjmp.h usability… yes
    checking setjmp.h presence… yes
    checking for setjmp.h… yes
    checking whether we need -framework Cocoa… yes
    checking –with-xcodecfg argument… using default
    checking for GCC 3 or later… yes
    checking whether we need -D_FORTIFY_SOURCE=1… yes
    checking linker –as-needed support… no
    configure: creating ./config.status
    config.status: creating auto/config.mk
    config.status: creating auto/config.h
    config.status: auto/config.h is unchanged


    It seems that the appropriate python interpreter and config is being referenced.

    But when I run make command:

    Starting make in the src directory.
    If there are problems, cd to the src directory and run make there
    cd src && make first
    gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_MACVIM -Wall -Wno-unknown-pragmas -pipe -m32 -DMACOS_X_UNIX -no-cpp-precomp -m32 -arch i386 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 version.c -o objects/version.o
    link.sh: The file ‘auto/link.sed’ exists, which is going to be used now.
    link.sh: If linking fails, try deleting the auto/link.sed file.
    link.sh: If this fails too, try creating an empty auto/link.sed file.
    link.sh: Using unmodified link command
    gcc -arch i386 -L/usr/local/lib -o Vim objects/buffer.o objects/blowfish.o objects/charset.o objects/diff.o objects/digraph.o objects/edit.o objects/eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/getchar.o objects/hardcopy.o objects/hashtab.o objects/if_cscope.o objects/if_xcmdsrv.o objects/mark.o objects/memline.o objects/menu.o objects/message.o objects/misc1.o objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/screen.o objects/search.o objects/sha256.o objects/spell.o objects/syntax.o objects/tag.o objects/term.o objects/ui.o objects/undo.o objects/version.o objects/window.o objects/gui.o objects/gui_beval.o objects/pty.o objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o objects/if_python.o objects/os_macosx.o objects/os_mac_conv.o objects/netbeans.o objects/main.o objects/memfile.o -framework Cocoa -framework Carbon -lm -lncurses -liconv -framework Cocoa -framework Python
    ld: warning: ignoring file objects/gui_macvim.o, file was built for unsupported file format which is not the architecture being linked (i386)
    ld: warning: ignoring file objects/MMBackend.o, file was built for unsupported file format which is not the architecture being linked (i386)
    ld: warning: ignoring file objects/MacVim.o, file was built for unsupported file format which is not the architecture being linked (i386)
    ld: warning: ignoring file objects/os_macosx.o, file was built for unsupported file format which is not the architecture being linked (i386)
    ld: warning: ignoring file objects/os_mac_conv.o, file was built for unsupported file format which is not the architecture being linked (i386)
    Undefined symbols for architecture i386:
    “_gui_macvim_update_modified_flag”, referenced from:
    _maketitle in buffer.o
    “_odb_buffer_close”, referenced from:
    _close_buffer in buffer.o
    “_im_set_active”, referenced from:
    _edit in edit.o
    _getcmdline in ex_getln.o
    _normal_cmd in normal.o
    _set_bool_option in option.o
    “_im_get_status”, referenced from:
    _edit in edit.o
    _getcmdline in ex_getln.o
    _vgetorpeek in getchar.o
    _gui_update_cursor in gui.o
    “_gui_mch_set_foreground”, referenced from:
    _f_foreground in eval.o
    _nb_do_cmd in netbeans.o
    “_gui_mch_get_font”, referenced from:
    _f_getfontname in eval.o
    _gui_do_one_color in syntax.o
    _do_highlight in syntax.o
    _gui_get_wide_font in gui.o
    _gui_init_font in gui.o
    “_gui_mch_get_fontname”, referenced from:
    _f_getfontname in eval.o
    “_gui_mch_free_font”, referenced from:
    _f_getfontname in eval.o
    _free_highlight_fonts in syntax.o
    _highlight_clear in syntax.o
    _do_highlight in syntax.o
    _gui_get_wide_font in gui.o
    _gui_init_font in gui.o
    “_gui_mch_get_winpos”, referenced from:
    _f_getwinposx in eval.o
    _f_getwinposy in eval.o
    _ex_mkrc in ex_docmd.o
    _ex_winpos in ex_docmd.o
    _gui_set_shellsize in gui.o
    “_serverStrToPort”, referenced from:
    _f_remote_peek in eval.o
    _f_remote_read in eval.o
    “_serverPeekReply”, referenced from:
    _f_remote_peek in eval.o
    “_serverReadReply”, referenced from:
    _f_remote_read in eval.o
    _main in main.o
    “_serverSendReply”, referenced from:
    _f_server2client in eval.o
    “_serverGetVimNames”, referenced from:
    _f_serverlist in eval.o
    _main in main.o
    “_serverSendToVim”, referenced from:
    _remote_common in eval.o
    _main in main.o
    “_gui_mch_register_sign”, referenced from:
    _sign_gui_started in ex_cmds.o
    _ex_sign in ex_cmds.o
    “_gui_mch_destroy_sign”, referenced from:
    _ex_sign in ex_cmds.o
    “_gui_make_popup”, referenced from:
    _ex_popup in ex_docmd.o
    “_gui_mch_set_winpos”, referenced from:
    _ex_winpos in ex_docmd.o
    _gui_set_shellsize in gui.o
    “_ex_macaction”, referenced from:
    _cmdnames in ex_docmd.o
    _ex_emenu in menu.o
    “_gui_mch_find_dialog”, referenced from:
    _cmdnames in ex_docmd.o
    “_gui_mch_replace_dialog”, referenced from:
    _cmdnames in ex_docmd.o
    “_gui_mch_set_curtab”, referenced from:
    _getcmdline in ex_getln.o
    _goto_tabpage_win in window.o
    _goto_tabpage in window.o
    _send_tabline_event in gui.o
    “_get_macaction_name”, referenced from:
    _tab.18194 in ex_getln.o
    “_gui_mch_enable_scrollbar”, referenced from:
    _aucmd_restbuf in fileio.o
    _gui_do_scrollbar in gui.o
    _gui_update_scrollbars in gui.o
    _gui_remove_scrollbars in gui.o
    _gui_init_which_components in gui.o
    “_enc2macroman”, referenced from:
    _buf_write_bytes in fileio.o
    “_odb_post_buffer_write”, referenced from:
    _buf_write in fileio.o
    “_macroman2enc”, referenced from:
    _readfile in fileio.o
    “_is_valid_macaction”, referenced from:
    _ex_macmenu in menu.o
    “_gui_mch_show_popupmenu”, referenced from:
    _gui_show_popupmenu in menu.o
    “_gui_mch_menu_grey”, referenced from:
    _gui_update_menus_recurse in menu.o
    “_gui_mch_menu_hidden”, referenced from:
    _gui_update_menus_recurse in menu.o
    “_gui_mch_draw_menubar”, referenced from:
    _gui_update_menus in menu.o
    “_gui_mch_add_menu”, referenced from:
    _gui_create_initial_menus in menu.o
    _add_menu_path in menu.o
    “_gui_mch_add_menu_item”, referenced from:
    _gui_create_initial_menus in menu.o
    _add_menu_path in menu.o
    “_gui_mch_destroy_menu”, referenced from:
    _free_menu in menu.o
    “_gui_mch_dialog”, referenced from:
    _do_dialog in message.o
    “_gui_mch_update”, referenced from:
    _do_dialog in message.o
    _fill_input_buf in ui.o
    _ui_breakcheck in ui.o
    _ui_char_avail in ui.o
    _gui_start in gui.o
    _gui_wait_for_chars in gui.o
    _gui_set_shellsize in gui.o

    “_gui_mch_browse”, referenced from:
    _do_browse in message.o
    “_mac_precompose_path”, referenced from:
    _unix_expandpath in misc1.o
    “_gui_mch_getmouse”, referenced from:
    _get_shape_idx in misc2.o
    _gui_mouse_correct in gui.o
    “_mch_set_mouse_shape”, referenced from:
    _update_mouseshape in misc2.o
    “_mac_string_convert”, referenced from:
    _string_convert_ext in mbyte.o
    “_gui_mch_fuopt_update”, referenced from:
    _check_fuoptions in option.o
    “_gui_mch_enter_fullscreen”, referenced from:
    _set_bool_option in option.o
    “_gui_mch_leave_fullscreen”, referenced from:
    _set_bool_option in option.o
    “_gui_macvim_set_antialias”, referenced from:
    _set_bool_option in option.o
    “_gui_mch_enable_beval_area”, referenced from:
    _set_bool_option in option.o
    “_gui_mch_disable_beval_area”, referenced from:
    _set_bool_option in option.o
    _gui_init in gui.o
    “_im_set_control”, referenced from:
    _set_bool_option in option.o
    “_gui_mch_show_toolbar”, referenced from:
    _did_set_string_option in option.o
    _gui_init_which_components in gui.o
    “_gui_mch_adjust_charheight”, referenced from:
    _set_num_option in option.o
    “_gui_mch_new_colors”, referenced from:
    _set_num_option in option.o
    _set_normal_colors in syntax.o
    “_mac_lang_init”, referenced from:
    _set_init_1 in option.o
    “_gui_macvim_force_flush”, referenced from:
    _mch_call_shell in os_unix.o
    _ui_delay in ui.o
    “_gui_macvim_flush”, referenced from:
    _mch_call_shell in os_unix.o
    _find_pattern_in_path in search.o
    “_macvim_early_init”, referenced from:
    _mch_early_init in os_unix.o
    “_gui_mch_settitle”, referenced from:
    _mch_settitle in os_unix.o
    “_mac_conv_cleanup”, referenced from:
    _mch_exit in os_unix.o
    “_mac_conv_init”, referenced from:
    _mch_init in os_unix.o
    “_gui_macvim_add_to_find_pboard”, referenced from:
    _search_regcomp in search.o
    _set_last_search_pat in search.o
    “_gui_mch_flush”, referenced from:
    _showmatch in search.o
    _gui_wait_for_chars in gui.o
    _gui_update_tabline in gui.o
    _gui_handle_drop in gui.o
    _gui_update_screen in gui.o
    _gui_write in gui.o
    _netbeans_open in netbeans.o

    “_gui_mch_get_rgb”, referenced from:
    _highlight_gui_color_rgb in syntax.o
    _highlight_color in syntax.o
    _gui_get_lightness in gui.o
    “_gui_mch_def_colors”, referenced from:
    _do_highlight in syntax.o
    “_gui_mch_haskey”, referenced from:
    _add_termcap_entry in term.o
    “_clip_mch_request_selection”, referenced from:
    _clip_gen_request_selection in ui.o
    “_clip_mch_set_selection”, referenced from:
    _clip_gen_set_selection in ui.o
    _clip_copy_modeless_selection in ui.o
    _clip_update_selection in ui.o
    _clip_copy_selection in ui.o
    “_clip_mch_lose_selection”, referenced from:
    _clip_gen_lose_selection in ui.o
    _clip_lose_selection in ui.o
    “_clip_mch_own_selection”, referenced from:
    _clip_gen_own_selection in ui.o
    _clip_own_selection in ui.o
    _clip_copy_modeless_selection in ui.o
    _clip_update_selection in ui.o
    _clip_copy_selection in ui.o
    “_gui_mch_invert_rectangle”, referenced from:
    _clip_invert_area in ui.o
    “_gui_mch_iconify”, referenced from:
    _ui_suspend in ui.o
    “_gui_mch_destroy_scrollbar”, referenced from:
    _win_free in window.o
    “_gui_mch_setmouse”, referenced from:
    _gui_mouse_correct in gui.o
    “_gui_mch_get_color”, referenced from:
    _gui_get_color in gui.o
    _gui_check_colors in gui.o
    “_gui_mch_set_scrollbar_thumb”, referenced from:
    _gui_update_horiz_scrollbar in gui.o
    _gui_update_scrollbars in gui.o
    _gui_drag_scrollbar in gui.o
    “_gui_mch_set_scrollbar_pos”, referenced from:
    _gui_update_scrollbars in gui.o
    _gui_position_components in gui.o
    “_gui_mch_create_scrollbar”, referenced from:
    _gui_create_scrollbar in gui.o
    _gui_init in gui.o
    “_gui_mch_start_blink”, referenced from:
    _gui_wait_for_chars in gui.o
    “_gui_mch_wait_for_chars”, referenced from:
    _gui_wait_for_chars in gui.o
    “_gui_mch_stop_blink”, referenced from:
    _gui_wait_for_chars in gui.o
    “_gui_mch_set_font”, referenced from:
    _gui_outstr_nowrap in gui.o
    _gui_init_font in gui.o
    “_gui_mch_set_fg_color”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_mch_set_bg_color”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_mch_set_sp_color”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_macvim_draw_string”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_mch_draw_string”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_mch_drawsign”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_mch_clear_block”, referenced from:
    _gui_clear_block in gui.o
    _gui_insert_lines in gui.o
    _gui_delete_lines in gui.o
    _gui_write in gui.o
    “_gui_mch_insert_lines”, referenced from:
    _gui_insert_lines in gui.o
    “_gui_mch_delete_lines”, referenced from:
    _gui_delete_lines in gui.o
    “_gui_mch_set_text_area_pos”, referenced from:
    _gui_position_components in gui.o
    “_gui_mch_get_screen_dimensions”, referenced from:
    _gui_set_shellsize in gui.o
    “_gui_mch_set_shellsize”, referenced from:
    _gui_set_shellsize in gui.o
    “_gui_mch_showing_tabline”, referenced from:
    _gui_update_tabline in gui.o
    _gui_init_which_components in gui.o
    “_gui_mch_show_tabline”, referenced from:
    _gui_update_tabline in gui.o
    “_gui_mch_update_tabline”, referenced from:
    _gui_update_tabline in gui.o
    “_gui_mch_enable_menu”, referenced from:
    _gui_init_which_components in gui.o
    “_gui_mch_toggle_tearoffs”, referenced from:
    _gui_init_which_components in gui.o
    “_im_set_position”, referenced from:
    _gui_update_cursor in gui.o
    “_gui_mch_set_blinking”, referenced from:
    _gui_update_cursor in gui.o
    “_gui_mch_draw_hollow_cursor”, referenced from:
    _gui_update_cursor in gui.o
    “_gui_mch_draw_part_cursor”, referenced from:
    _gui_update_cursor in gui.o
    “_gui_mch_clear_all”, referenced from:
    _gui_write in gui.o
    “_gui_mch_flash”, referenced from:
    _gui_write in gui.o
    “_gui_mch_beep”, referenced from:
    _gui_write in gui.o
    “_gui_mch_init_font”, referenced from:
    _gui_init_font in gui.o
    “_gui_mch_exit”, referenced from:
    _gui_exit in gui.o
    “_gui_mch_init_check”, referenced from:
    _gui_init_check in gui.o
    “_gui_mch_init”, referenced from:
    _gui_init in gui.o
    “_gui_mch_open”, referenced from:
    _gui_init in gui.o
    “_gui_mch_create_beval_area”, referenced from:
    _gui_init in gui.o
    “_gui_mch_prepare”, referenced from:
    _gui_prepare in gui.o
    “_use_gui_macvim_draw_string”, referenced from:
    _gui_outstr_nowrap in gui.o
    “_gui_mch_post_balloon”, referenced from:
    _general_beval_cb in gui_beval.o
    _nb_do_cmd in netbeans.o
    “_gui_macvim_set_netbeans_socket”, referenced from:
    _netbeans_gui_register in netbeans.o
    _netbeans_open in netbeans.o
    _netbeans_close in netbeans.o
    _netbeans_read in netbeans.o
    “_odb_end”, referenced from:
    _getout in main.o
    “_macosx_fork”, referenced from:
    _main in main.o
    “_gui_macvim_after_fork_init”, referenced from:
    _main in main.o
    “_gui_macvim_wait_for_startup”, referenced from:
    _main in main.o
    “_gui_macvim_get_window_layout”, referenced from:
    _main in main.o
    “_serverRegisterName”, referenced from:
    _main in main.o
    ld: symbol(s) not found for architecture i386
    collect2: ld returned 1 exit status
    make[1]: *** [Vim] Error 1
    make: *** [first] Error 2

    Can you give me any hints as to how to resolve this issue?
    This doesn’t seem to go away even after I modify the src/Macvim/icon/Makefile as you mentioned above.
    Any pointers would be appreciated.

    p.s. I installed EPD-python 32bit version

Leave a comment