Loading ...
Sorry, an error occurred while loading the content.
 

Re: vim for OS X/Intel?

Expand Messages
  • Jussi Hagman
    ... Good to hear that you take your job seriously! :) ... Yes. ... I doubt it, haven t tried for a while though. ... I don t have an intel mac yet (and won t
    Message 1 of 11 , Feb 18, 2006
      On 12.1.2006, at 8:06, Benji Fisher wrote:

      > As the maintainer of the binaries on http://macvim.org/OSX/ I guess
      > it is my job to compile for OS X on Intel-based Macs.

      Good to hear that you take your job seriously! :)

      > Does anyone know how to cross-compile, or make a "universal"
      > binary, without using the XCode GUI?

      Yes.

      > Is it currently possible to compile vim *with* XCode?

      I doubt it, haven't tried for a while though.

      > Who is going to be the first on the block to buy an Intel-based Mac and
      > test it?

      I don't have an intel mac yet (and won't have one for a while I guess)
      but I've just used a few hours for a good cause in a bar drinking wine
      and tweaking+compiling manually an universal binary of vim 6.4. A friend
      tried it briefly on an intel-iMac he has loaned from Apple for a review.
      He unfortunately does not know vim well so he was unable to do any real
      testing.

      I'll try to find time later this weekend to document the (stupid) way I
      did it. :)

      I'm not claiming that this is a properly working version but if anyone
      has an intel mac please test it and Benji, if you like you can add it to
      macvim.org but only with a note that it is not a properly tested
      version.

      You can find the universal version of vim 6.4 here:

      http://infa.abo.fi/~jhagman/vim-universal-test.zip

      Greetings,
      Jussi


      --
      Jussi Hagman, jhagman@..., iChat/AIM: jussihagman, ICQ: 54004113
      Studentbyn 4 D 33, 20540 Åbo, Finland +358 50 56 51 170
    • Bernhard Prümmer
      ... I do own an iMac Core-Duo; I decided it was time for a new Mac at the beginning of this year, and thought it should be wise to wait for Steve s keynote on
      Message 2 of 11 , Feb 18, 2006
        Am 18.02.2006 um 21:20 schrieb Jussi Hagman:

        >
        >> Who is going to be the first on the block to buy an Intel-based
        >> Mac and
        >> test it?
        >
        > I don't have an intel mac yet (and won't have one for a while I guess)
        > but I've just used a few hours for a good cause in a bar drinking wine
        > and tweaking+compiling manually an universal binary of vim 6.4. A
        > friend
        > tried it briefly on an intel-iMac he has loaned from Apple for a
        > review.
        > He unfortunately does not know vim well so he was unable to do any
        > real
        > testing.
        >
        > I'll try to find time later this weekend to document the (stupid)
        > way I
        > did it. :)
        >
        I do own an iMac Core-Duo; I decided it was time for a new Mac at the
        beginning
        of this year, and thought it should be wise to wait for Steve's
        keynote on
        Jan. 10th. So, now it's an Intel-based iMac instead of an iMac G5.
        And of course, I am willing to do some testing because the PowerPC
        version
        from the macvim homepage shows some serious misbehaviour on my intel
        mac:
        At first sight, it runs well under Rosetta, but when you try to save
        a file
        you edit, vim is VERY likely to crash (with the system wishing to
        report this to Apple
        the usual way). Interestingly, vim has no problems to create and use
        swap files
        in the same directory while you edit. [ ??? :-( ]
        Anyway, it was so annoying that I decided to download the sources
        from macvim.org and
        build a native version myself. To my surprise, the source code has no
        mac-specific stuff,
        so I created an X11 version that runs quite well, except for some
        lack in comfort.

        > I'm not claiming that this is a properly working version but if anyone
        > has an intel mac please test it and Benji, if you like you can add
        > it to
        > macvim.org but only with a note that it is not a properly tested
        > version.
        >
        > You can find the universal version of vim 6.4 here:
        >
        > http://infa.abo.fi/~jhagman/vim-universal-test.zip
        >
        I'll download it and let you know how it works. If you tell me how
        you built
        this version, I'm going try it on my machine and see if this makes a
        difference.

        > Greetings,
        > Jussi
        >
        Cheers
        Bernhard
      • Jussi Hagman
        ... Great! ... Could you provide me with the relevant entry in the crashlog[1]? I probably won t be able to fix it but it would be interesting to see what is
        Message 3 of 11 , Feb 18, 2006
          On 18.2.2006, at 23:39, Bernhard Prümmer wrote:
          >
          > I do own an iMac Core-Duo;

          Great!

          > And of course, I am willing to do some testing because the PowerPC
          > version
          > from the macvim homepage shows some serious misbehaviour on my
          > intel mac:
          > At first sight, it runs well under Rosetta, but when you try to
          > save a file
          > you edit, vim is VERY likely to crash (with the system wishing to
          > report this to Apple the usual way).

          Could you provide me with the relevant entry in the crashlog[1]? I
          probably won't be able to fix it but it would be interesting to see
          what is happening.

          > Anyway, it was so annoying that I decided to download the sources
          > from macvim.org and build a native version myself. To my surprise,
          > the source code has no mac-specific stuff, so I created an X11
          > version that runs quite well, except for some lack in comfort.

          Mac specific stuff should be there (os_mac.c, gui_mac.c :) maybe the
          configure script did not understand that you are running a mac.

          > I'll download it and let you know how it works. If you tell me how
          > you built
          > this version, I'm going try it on my machine and see if this makes
          > a difference.

          The process was following: (I hope the commands do not break in wrong
          places, I've got no control over that with Apple's mail:(

          Get the latest vim source from CVS:
          cvs -z3 -d:pserver:anonymous@...:80/cvsroot/vim
          checkout vim

          cd vim

          Edit src/os_mac.h by removing lines 97-99:

          # if !__option(enumsalwaysint)
          # error "You must compile with enums always int!"
          # endif

          THIS IS A DIRTY HACK! The whole file should be checked for
          assumptions that !PPC == 68k.

          Run configure and make
          export CFLAGS="-O -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch
          i386 -arch ppc"
          ./configure --disable-dependency-tracking --enable-multibyte --
          enable-gui=carbon
          make

          (there are quite many warnings but let's ignore them for now)

          Removethe binary as it links only for PPC (or probably Intel on your
          machine) and link it by hand:
          cd src
          rm vim

          (the next is one command and it is unindented for easier copy+paste)

          gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 \
          -arch ppc -L/usr/local/lib -o Vim objects/buffer.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/if_cscope.o objects/if_xcmdsrv.o objects/
          main.o \
          objects/mark.o objects/memfile.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/quickfix.o objects/
          regexp.o \
          objects/screen.o objects/search.o objects/syntax.o objects/tag.o
          objects/term.o \
          objects/ui.o objects/undo.o objects/window.o objects/gui.o objects/
          gui_mac.o \
          objects/pty.o objects/os_macosx.o objects/netbeans.o objects/version.o \
          -framework Carbon -lncurses -liconv

          This is also a HACK. I copied the command from the make output (it's
          right in the end) and I added a few flags.

          check that the file is indeed an universal (optional step :)
          $ file vim
          vim: Mach-O fat file with 2 architectures
          vim (for architecture i386): Mach-O executable i386
          vim (for architecture ppc): Mach-O executable ppc

          make the application bundle

          cd ..
          make install

          The application bundle is in src directory as Vim.app

          I hope this helps you and others. If there are any problems feel free
          to contact me by mail, IM or Skype. It would be great to fix the
          compilation, some other things and make a patch for Bram.

          Greetings,
          Jussi

          [1] The file is in ~/Library/Logs/CrashReporter/Vim.crash.log and
          send it to me, preferably only the relevant entry but if there are
          different things you could send the whole file. You can also use /
          Applications/Utilities/Console.app or your favourite editor to look
          at the file.


          --
          Jussi Hagman, jhagman@..., iChat/AIM: jussihagman, ICQ: 54004113
          Studentbyn 4 D 33, 20540 Åbo, Finland +358 50 56 51 170
        • Bernhard Prümmer
          ... Ah-ha! I just tried to reproduce the effects I saw last month but was unable to get them again. Hmm, I updated the iMac to 10.4.5 recently ... could it
          Message 4 of 11 , Feb 18, 2006
            Am 19.02.2006 um 01:00 schrieb Jussi Hagman:

            >
            > On 18.2.2006, at 23:39, Bernhard Prümmer wrote:
            >>
            >> I do own an iMac Core-Duo;
            >
            > Great!
            >
            >> And of course, I am willing to do some testing because the PowerPC
            >> version
            >> from the macvim homepage shows some serious misbehaviour on my
            >> intel mac:
            >> At first sight, it runs well under Rosetta, but when you try to
            >> save a file
            >> you edit, vim is VERY likely to crash (with the system wishing to
            >> report this to Apple the usual way).
            >
            > Could you provide me with the relevant entry in the crashlog[1]? I
            > probably won't be able to fix it but it would be interesting to see
            > what is happening.
            >
            Ah-ha! I just tried to reproduce the effects I saw last month but was
            unable to get them again.
            Hmm, I updated the iMac to 10.4.5 recently ... could it have been a
            kind of rosetta bug?
            Anyway, I'll send you the requested files, still might be useful.

            >> Anyway, it was so annoying that I decided to download the sources
            >> from macvim.org and build a native version myself. To my surprise,
            >> the source code has no mac-specific stuff, so I created an X11
            >> version that runs quite well, except for some lack in comfort.
            >
            > Mac specific stuff should be there (os_mac.c, gui_mac.c :) maybe
            > the configure script did not understand that you are running a mac.
            >
            I checked the origin of the source files again: http://www.vim.org/
            download.php (section "version 6.x")
            So, they were not from the macvim homepage.

            >> I'll download it and let you know how it works. If you tell me how
            >> you built
            >> this version, I'm going try it on my machine and see if this makes
            >> a difference.
            >
            I tinkered with a few text files the way I usually do - nothing
            strange encountered.
            Even the "About VIM" item from the "Vim" menu does not work - exactly
            like the PowerPC version.
            The only deviation from Benji's version so far is that your Vim icon
            lacks the "im" ... ;-)
            >
            > [1] The file is in ~/Library/Logs/CrashReporter/Vim.crash.log and
            > send it to me, preferably only the relevant entry but if there are
            > different things you could send the whole file. You can also use /
            > Applications/Utilities/Console.app or your favourite editor to look
            > at the file.
            Guess what editor this might be ... ;-)

            Regards
            Bernhard
          • Jussi Hagman
            ... I looked at the file and firstly it is quite hard to say anything, Rosetta does make them harder to interpret, but I guess you are correct. It is quite
            Message 5 of 11 , Feb 19, 2006
              On 19.2.2006, at 2:39, Bernhard Prümmer wrote:

              >
              > Am 19.02.2006 um 01:00 schrieb Jussi Hagman:
              >
              >>
              >> On 18.2.2006, at 23:39, Bernhard Prümmer wrote:
              >>
              > Ah-ha! I just tried to reproduce the effects I saw last month but
              > was unable to get them again.
              > Hmm, I updated the iMac to 10.4.5 recently ... could it have been a
              > kind of rosetta bug?
              > Anyway, I'll send you the requested files, still might be useful.

              I looked at the file and firstly it is quite hard to say anything,
              Rosetta does make them harder to interpret, but I guess you are
              correct. It is quite likely a Rosetta bug.

              > I checked the origin of the source files again: http://www.vim.org/
              > download.php (section "version 6.x")
              > So, they were not from the macvim homepage.

              OK. The unix archive of sources does apparently not include the
              files, CVS is the way to go. :)

              > I tinkered with a few text files the way I usually do - nothing
              > strange encountered.
              > Even the "About VIM" item from the "Vim" menu does not work -
              > exactly like the PowerPC version.
              > The only deviation from Benji's version so far is that your Vim
              > icon lacks the "im" ... ;-)

              OK :) Good to hear. If you have the time it would be nice (from a mac
              user's point of view, not vim user's) if you could test how much
              faster the the native code is compared to Rosetta. But then again, I
              rarely have any problems with vim speed (apart from some OS X
              specific issues that probably are not affected that much by Rosetta)

              I could try to make some patches to allow the compilation on intel
              macs later today or tomorrow. I'd be grateful if you could be my
              guinea pig to try to compile vim on intel mac after the changes.

              I guess the compilation (of the mac gui version) does not work at the
              moment even on intel based mac without removing the lines I talked
              about earlier.

              >>
              >> [1] The file is in ~/Library/Logs/CrashReporter/Vim.crash.log and
              >> send it to me, preferably only the relevant entry but if there are
              >> different things you could send the whole file. You can also use /
              >> Applications/Utilities/Console.app or your favourite editor to
              >> look at the file.
              > Guess what editor this might be ... ;-)

              Hmm... emacs? :)

              Greetings,
              Jussi

              --
              Jussi Hagman, jhagman@..., iChat/AIM: jussihagman, ICQ: 54004113
              Studentbyn 4 D 33, 20540 Åbo, Finland +358 50 56 51 170
            Your message has been successfully submitted and would be delivered to recipients shortly.