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

58976Re: Building vim72 on z/OS

Expand Messages
  • David Griffiths
    Sep 9, 2010
    • 0 Attachment
      Ok, downloaded vim73 and got this:

      creating auto/pathdef.c
      cc -c -I. -Iproto -DHAVE_CONFIG_H -g -D_ALL_SOURCE -Wc,float\(IEEE\) -o objects/pathdef.o auto/pathdef.c
      WARNING CCN3296 ./os_unix.h:60    #include file <libc.h> not found.
      WARNING CCN3296 ./os_unix.h:64    #include file <sys/param.h> not found.
      ERROR CCN3275 ./auto/pathdef.c:5     Unexpected text '/' encountered.
      ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier usr.
      ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier local.
      ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier share.
      ERROR CCN3045 ./auto/pathdef.c:5     Undeclared identifier vim.
      ERROR CCN3046 ./auto/pathdef.c:5     Syntax error.
      ERROR CCN3221 ./auto/pathdef.c:5     Initializer must be a valid constant expression.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier cc.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier c.
      ERROR CCN3275 ./auto/pathdef.c:7     Unexpected text '-' encountered.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier I.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier DHAVE_CONFIG_H.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier g.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier D_ALL_SOURCE.
      ERROR CCN3045 ./auto/pathdef.c:7     Undeclared identifier Wc.
      ERROR CCN3221 ./auto/pathdef.c:7     Initializer must be a valid constant expression.
      ERROR CCN3046 ./auto/pathdef.c:7     Syntax error.
      ERROR CCN3045 ./auto/pathdef.c:8     Undeclared identifier Wl.
      ERROR CCN3221 ./auto/pathdef.c:8     Initializer must be a valid constant expression.
      ERROR CCN3045 ./auto/pathdef.c:8     Undeclared identifier NO.
      ERROR CCN3045 ./auto/pathdef.c:8     Undeclared identifier o.
      ERROR CCN3221 ./auto/pathdef.c:8     Initializer must be a valid constant expression.
      ERROR CCN3277 ./auto/pathdef.c:8     Syntax error: possible missing ';' or ','?
      CCN0793(I) Compilation failed for file ./auto/pathdef.c.  Object file not created.
      FSUM3065 The COMPILE step ended with return code 12.
      FSUM3017 Could not compile auto/pathdef.c. Correct the errors and try again.
      FSUM8226 make: Error code 3

      That's because pathdef.c contains:

      /* pathdef.c */
      /* This file is automatically created by Makefile
       * DO NOT EDIT!  Change Makefile only. */
      #include "vim.h"
      char_u *default_vim_dir = (char_u *)&/usr/local/share/vim&;
      char_u *default_vimruntime_dir = (char_u *)&&;
      char_u *all_cflags = (char_u *)&cc -c -I. -Iproto -DHAVE_CONFIG_H -g -D_ALL_SOURCE -Wc,float&(IEEE&)&;
      char_u *all_lflags = (char_u *)&cc  -Wl,EDIT=NO -o vim             -lm -lcurses &;
      char_u *compiled_user = (char_u *)"DGRIFF";
      char_u *compiled_sys = (char_u *)"WINMVS3C.HURSLEY.IBM.COM";

      Makefile has (eg):

      echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' | $(QUOTESED) >> $@

      where

      QUOTESED = sed -e 's/[\\"]/\\&/g' -e 's/\\"/"/' -e 's/\\";$$/";/'

      no idea yet why it is replacing " with &.

      Cheers,

      Dave

      2010/9/8 Dominique Pellé <dominique.pelle@...>
      Dave Griffiths <david.griffiths@...> wrote:

      > Hi, just tried building vim on z/OS as described here:
      > http://vimdoc.sourceforge.net/htmldoc/os_390.html. It fails on
      > compiling regexp:
      >
      > cc -c -I. -Iproto -DHAVE_CONFIG_H -g -D_ALL_SOURCE -o objects/regexp.o
      > regexp.c
      > ERROR CCN3052 ./regexp.c:748   Duplicate case label for value 193.
      > Labels must be unique.
      > ERROR CCN3052 ./regexp.c:754   Duplicate case label for value 195.
      > Labels must be unique.
      > [etc]
      >
      > According to configure it has recognized that this is a z/OS (OS/390)
      > machine.
      >
      > It appears as though it is trying to compile in native ebcdic mode. So
      > when it sees this:
      >
      > case 'A': case '\300': case '\301': case '\302':
      >
      > 'A' in ebcdic is decimal 193, the same as octal 301. Is it intended
      > that vim is compiled using the ebcdic code page?
      >
      > Thanks,
      >
      > Dave

      This code (case 'A': case '\300': case '\301': case '\302':)
      in regex.c is in the #else section of #ifdef EBCDIC.

      On z/OS, I'm pretty sure EBCDIC should be #define/d so
      this line should not even be compiled.  Now the question
      is: why EBCDIC is not defined for you?

      What does configure say after...
      checking if character set is EBCDIC...
      ?

      Also, which version of Vim are you using?  I'm asking because
      your error message gives line regexp.c:748, but for me, using
      the latest version of Vim from Mercurial, the case 'A' (...) is
      at line regexp.c:789.

      You should download the the latest version of Vim (7.3.003)
      since patches for z/OS have been included in version-7.3.
      See ":help version-7.3" which says...

      Add patch to improve support of z/OS (OS/390). (Ralf Schandl)

      Regards
      -- Dominique

      --
      You received this message from the "vim_dev" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php

      --
      You received this message from the "vim_dev" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php
    • Show all 4 messages in this topic