Re: Error in installation of GNU Prolog

Daniel Diaz <[email protected]>
Newsgroups gmane.comp.gnu.prolog.bugs
Message-ID <[email protected]>
Hi,

it seems to me that the problem comes from the fact you installed the
source in a path containing a space (Program Files end GNU-Prolog
1.2.8). The win32 version of gprolog does not work with such path names.
Try to install it under something like c:\GNU-Prolog-1.2.8.

Sorry for this limitation but spaces in path names are really a
nightmare for compiler developpers...

"B. S. Skoda" wrote:
> 
> Dear Daniel,
> 
> Thank you for your prompt reply and your interest.
> 
> Following is the Cygwin console output of the test that you required.
> 
> I find this a bit surprising.
> 
> John Skoda <[email protected]>
> 
> john@MINT /cygdrive/c/Program Files/GNU-Prolog 1.2.8/gprolog-1.2.8/src
> $ make
> (cd EnginePl; make config)
> make[1]: Entering directory `/cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-
> 1.2.8/src/EnginePl'
> make[1]: Nothing to be done for `config'.
> make[1]: Leaving directory `/cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-1
> .2.8/src/EnginePl'
> . ./SETVARS;for i in TopComp EnginePl Wam2Ma Ma2Asm Linedit BipsPl Pl2Wam
> Fd2C E
> ngineFD BipsFD;do (cd $i; make) || exit 1; done;\
> (cd TopComp; make gprolog.exe)
> make[1]: Entering directory `/cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-
> 1.2.8/src/TopComp'
> make[1]: Nothing to be done for `first'.
> make[1]: Leaving directory `/cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-1
> .2.8/src/TopComp'
> make[1]: Entering directory `/cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-
> 1.2.8/src/EnginePl'
> gplc -c -C '-O3 ' atom.c
> gcc: cannot specify -o with -c or -S and multiple compilations
> compilation failed
> make[1]: *** [atom.o] Error 1
> make[1]: Leaving directory `/cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-1
> .2.8/src/EnginePl'
> make: *** [all] Error 1
> 
> $ cd EnginePl
> 
> john@MINT /cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-1.2.8/src/EnginePl
> $ ls
> Copy of Makefile.txt  engine.o        machine1.c   oper.h
> LINUX_SIGSEGV.c       engine1.c       machine1.h   pl_config.c
> Makefile              engine1.o       machine1.o   pl_config.exe
> Makefile.in           engine_pl.h     main.c       pl_params.h
> PPC_SIGSEGV.c         euclide.c       mem_alloc.c  pred.c
> SOLARIS_SIGSEGV.c     gp_config.h     mem_alloc.o  pred.h
> WIN32_SIGSEGV.c       gp_config.h.in  misc.c       test_oc.c
> arch_dep.h            gprolog.h       misc.h       test_oc_defs.h
> atom.c                hash.c          misc.o       test_oc_m1.c
> atom.h                hash.h          obj_begin.c  test_oc_m2.c
> bool.h                hash.o          obj_begin.o  unify.c
> cpp_headers.c         headers.h       obj_chain.c  wam_archi.def
> cpp_headers.exe       if_no_fd.c      obj_chain.h  wam_archi.h
> cpt_string.c          if_no_fd.h      obj_chain.o  wam_inst.c
> dl_malloc.c           machine.c       obj_end.c    wam_inst.h
> engine.c              machine.h       obj_end.o    wam_inst.o
> engine.h              machine.o       oper.c       wam_regs.h
> 
> john@MINT /cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-1.2.8/src/EnginePl
> $ make
> gplc -c -C '-O3 ' atom.c
> atom.c:38: linedit.h: No such file or directory
> compilation failed
> make: *** [atom.o] Error 1
> 
> john@MINT /cygdrive/c/Program Files/GNU-Prolog
> 1.2.8/gprolog-1.2.8/src/EnginePl
> $ gplc -v -c -C '-O3 ' atom.c
> Prolog compiler (GNU Prolog) 1.2.8
> By Daniel Diaz
> Copyright (C) 1999-2001 Daniel Diaz
> GNU Prolog comes with ABSOLUTELY NO WARRANTY.
> You may redistribute copies of GNU Prolog
> under the terms of the GNU General Public License.
> For more information about these matters, see the files named COPYING.
> 
> Path used: /usr/local/gprolog-1.2.8
> 
> *** Compiling
> 
> --- file: atom.c
> gcc -O3  -m486 -fomit-frame-pointer -ffixed-ebx -ffixed-ebp -c -I/usr/local/
> gpro
> log-1.2.8/include -o atom.o atom.c
> atom.c:38: linedit.h: No such file or directory
> compilation failed
> deleting temporary files before exit
> delete atom.o
> 
> john@MINT /cygdrive/c/Program Files/GNU-Prolog 1.2.8/gprolog-1.2.8/src
> $ ls -aR --color
> .:
> .              Copy of Makefile.txt  Ma2Asm       VERSION        configure
> ..             DEVELOPMENT           Makefile     W32GUICons
> configure.in
> .indent.pro    DISTRIB_FILES         Makefile.in  Wam2Ma         install-sh
> AUTOCONF-INFO  DOSSETVARS.BAT        PORTING      config.cache
> mkinstalldirs
> BipsFD         EngineFD              Pl2Wam       config.guess
> BipsPl         EnginePl              RPM          config.log
> CSHSETVARS     Fd2C                  SETVARS      config.status
> CYGWIN         Linedit               TopComp      config.sub
> 
> ./BipsFD:
> .               fd_bool.pl     fd_math_c.c     fd_symbolic.pl
> math_supp.c
> ..              fd_bool_c.c    fd_math_fd.fd   fd_symbolic_c.c
> math_supp.h
> Makefile        fd_bool_fd.fd  fd_optim.pl     fd_symbolic_fd.fd
> oper_supp.c
> Makefile.in     fd_infos.pl    fd_prime.pl     fd_values.pl
> oper_supp.h
> all_fd_bips.pl  fd_infos_c.c   fd_prime_c.c    fd_values_c.c
> bips_fd.h       fd_math.pl     fd_prime_fd.fd  fd_values_fd.fd
> 
> ./BipsPl:
> .                callinf_supp.h  flag.wam          pl_error.pl   stream_c.c
> ..               catch.pl        flag_c.c          pl_error.wam
> stream_supp.c
> BYTE_CODE        catch.wam       flag_supp.h       pred.pl
> stream_supp.h
> Makefile         char_io.pl      foreign.pl        pred.wam      t_c.c
> Makefile.in      char_io.wam     foreign.wam       pred_c.c      term_inl.pl
> all_pl_bips.pl   char_io_c.c     foreign_supp.c    pred_supp.c
> term_inl.wam
> all_pl_bips.wam  const_io.pl     foreign_supp.h    pred_supp.h
> term_inl_c.c
> all_solut.pl     const_io.wam    format.pl         pretty.pl     term_supp.c
> all_solut.wam    const_io_c.c    format.wam        pretty.wam    term_supp.h
> all_solut_c.c    consult.pl      format_c.c        pretty_c.c    throw.pl
> arith_inl.pl     consult.wam     g_var_inl.pl      print.pl      throw.wam
> arith_inl.wam    consult_c.c     g_var_inl.wam     print.wam     throw_c.c
> arith_inl_c.c    control.pl      g_var_inl_c.c     random.pl
> top_level.pl
> assert.pl        control.wam     inl_protos.h      random.wam
> top_level.wam
> assert.wam       control_c.c     le_interf.pl      random_c.c
> top_level_c.c
> assert_c.c       debugger.pl     le_interf.wam     read.pl       type_inl.pl
> atom.pl          debugger.wam    le_interf_c.c     read.wam
> type_inl.wam
> atom.wam         debugger_c.c    list.pl           read_c.c
> type_inl_c.c
> atom_c.c         dec10io.pl      list.wam          scan_supp.c   unify.pl
> b_params.h       dec10io.wam     no_le_interf.pl   scan_supp.h   unify.wam
> bc_supp.c        dynam_supp.c    no_le_interf.wam  sockets.pl    utils.pl
> bc_supp.h        dynam_supp.h    no_sockets.pl     sockets.wam   utils.wam
> bips_pl.h        error_supp.c    no_sockets.wam    sockets_c.c   write.pl
> c_supp.c         error_supp.h    oper.pl           sort.pl       write.wam
> c_supp.h         expand.pl       oper.wam          sort.wam      write_c.c
> call.pl          expand.wam      oper_c.c          sort_c.c
> write_supp.c
> call.wam         expand_c.c      os_interf.pl      stat.pl
> write_supp.h
> call_args.pl     file.pl         os_interf.wam     stat.wam
> call_args.wam    file.wam        os_interf_c.c     stat_c.c
> call_args_c.c    file_c.c        parse_supp.c      stream.pl
> callinf_supp.c   flag.pl         parse_supp.h      stream.wam
> 
> ./EngineFD:
> .   Makefile     engine_fd.h      fd_inst.c  fd_range.c  fd_to_c.h
> ..  Makefile.in  fd_hook_range.h  fd_inst.h  fd_range.h  fd_unify.fd
> 
> ./EnginePl:
> .                     engine.h        machine1.c   pl_config.c
> ..                    engine.o        machine1.h   pl_config.exe
> Copy of Makefile.txt  engine1.c       machine1.o   pl_params.h
> LINUX_SIGSEGV.c       engine1.o       main.c       pred.c
> Makefile              engine_pl.h     mem_alloc.c  pred.h
> Makefile.in           euclide.c       mem_alloc.o  test_oc.c
> PPC_SIGSEGV.c         gp_config.h     misc.c       test_oc_defs.h
> SOLARIS_SIGSEGV.c     gp_config.h.in  misc.h       test_oc_m1.c
> WIN32_SIGSEGV.c       gprolog.h       misc.o       test_oc_m2.c
> arch_dep.h            hash.c          obj_begin.c  unify.c
> atom.c                hash.h          obj_begin.o  wam_archi.def
> atom.h                hash.o          obj_chain.c  wam_archi.h
> bool.h                headers.h       obj_chain.h  wam_inst.c
> cpp_headers.c         if_no_fd.c      obj_chain.o  wam_inst.h
> cpp_headers.exe       if_no_fd.h      obj_end.c    wam_inst.o
> cpt_string.c          machine.c       obj_end.o    wam_regs.h
> dl_malloc.c           machine.h       oper.c
> engine.c              machine.o       oper.h
> 
> ./Fd2C:
> .   FD_SYNTAX  Makefile.in  fd2c.pl   read_file.pl
> ..  Makefile   compile.pl   parse.pl
> 
> ./Linedit:
> .   Makefile     char_io.c  linedit.c  stty.c  test_linedit.c
> ..  Makefile.in  char_io.h  linedit.h  stty.h  test_noecho.c
> 
> ./Ma2Asm:
> .        MA_SYNTAX    check.c        ix86_win32.c   ma_parser.h  sparc_any.c
> ..       Makefile     check_ma.ma    ma2asm.c       ma_protos.h
> FromC    Makefile.in  extract_asm.c  ma2asm_inst.c  mips_irix.c
> INLINED  alpha_any.c  ix86_any.c     ma_parser.c    ppc_linux.c
> 
> ./Ma2Asm/FromC:
> .  ..  Makefile  Makefile.in  asm_inst.c  mach.h
> 
> ./Pl2Wam:
> .             check_boot     indexing.wam      read_file.pl   syn_sugar.pl
> ..            ciaolib.pl     inst_codif.pl     read_file.wam  syn_sugar.wam
> Makefile      code_gen.pl    inst_codif.wam    reg_alloc.pl   wam_emit.pl
> Makefile.in   code_gen.wam   internal.pl       reg_alloc.wam  wam_emit.wam
> OTHER_PL      compat.pl      internal.wam      sics_pl2wam    whole.pl
> bip_list.pl   first_arg.pl   make_bip_list.pl  sicslib.pl     yaplib.pl
> bip_list.wam  first_arg.wam  pl2wam.pl         swi_pl2wam
> boot_cp       indexing.pl    pl2wam.wam        swilib.pl
> 
> ./RPM:
> .   Makefile  build_spec_file  initial.spec   rpm_env.spec
> ..  README    gprolog.spec     make_rpm_tree  try_rpm
> 
> ./TopComp:
> .   Makefile     copying.c      gplc.exe     hexgplc.exe  top_level.c
> ..  Makefile.in  decode_hexa.c  hexfilter.c  top_comp.c
> 
> ./W32GUICons:
> .             GUICons.dep  GUICons.rc       Makefile            StdAfx.h
> ..            GUICons.dsp  GUIConsDoc.cpp   Makefile.in         hlp
> CntrItem.cpp  GUICons.dsw  GUIConsDoc.h     ReadMe.txt          res
> CntrItem.h    GUICons.h    GUIConsView.cpp  RestartExitDlg.cpp  resource.h
> GUICons.RES   GUICons.mak  GUIConsView.h    RestartExitDlg.h
> w32gc_interf.c
> GUICons.aps   GUICons.ncb  MainFrm.cpp      StackSizeDlg.cpp
> w32gc_interf.h
> GUICons.clw   GUICons.opt  MainFrm.h        StackSizeDlg.h
> GUICons.cpp   GUICons.plg  MakeHelp.bat     StdAfx.cpp
> 
> ./W32GUICons/hlp:
> .             CurArw2.bmp   EditUndo.bmp  GUICons.LOG  HlpTBar.bmp
> Scmax.bmp
> ..            CurArw4.bmp   FileNew.bmp   GUICons.cnt  RecFirst.bmp
> Scmin.bmp
> AfxCore.rtf   CurHelp.bmp   FileOpen.bmp  GUICons.hm   RecLast.bmp
> AfxOleCl.rtf  EditCopy.bmp  FilePrnt.bmp  GUICons.hpj  RecNext.bmp
> AppExit.bmp   EditCut.bmp   FileSave.bmp  GUICons.ph   RecPrev.bmp
> Bullet.bmp    EditPast.bmp  GUICONS.HLP   HlpSBar.bmp  ScMenu.bmp
> 
> ./W32GUICons/res:
> .   GUICons.ico  GUIConsDoc.ico  cursor1.cur
> ..  GUICons.rc2  Toolbar.bmp     icon1.ico
> 
> ./Wam2Ma:
> .   Makefile     bt_string.c  wam2ma.c      wam_parser.h
> ..  Makefile.in  bt_string.h  wam_parser.c  wam_protos.h
> 
> john@MINT /cygdrive/c/Program Files/GNU-Prolog 1.2.8/gprolog-1.2.8/src
> $
> 
> -----Original Message-----
> From: Daniel Diaz [mailto:[email protected]]
> Sent: 26 April 2002 11:30
> To: B. S. Skoda
> Cc: GNU-Prolog Bug Report
> Subject: Re: Error in installation of GNU Prolog
> 
> Hi,,
> 
> <remark>
> Normally non-member cannot post on this list to avoid SPAM. So will not see
> any
> answer, except if people add you explicitely. If you want to subscribe, see
> http://gprolog.inria.fr
> </remark>
> 
> Thank you first for your detailed bug report.
> The strange line is:
> 
> > gplc -c -C '-O3 ' obj_begin.c
> > gcc: cannot specify -o with -c or -S and multiple compilations
> 
> So please could you test:
> 
> cd .../src
> make
> (gives the error above mentioned)
> cd EnginePl
> gplc -v -c -C '-O3 ' obj_begin.c
> (I added a -v to see how gplc calls gcc)
> and can you send us the output (or at least to me:
> [email protected])
> 
> Thank you
> 
> Quoting "B. S. Skoda" <[email protected]>:
> 
> > Installation/compilation with Cygwin gcc version 2.95.3-5
> >
> >
> > Message from Make log:
> >             gcc: cannot specify -o with -c or -S and multiple
> > compilations
> >             compilation failed
> >
> >
> > The type of machine you are using (use uname -a under Unix).
> >             i386 PC, Win 2000, Cygwin (latest), make version 3.79.1-5,
> > gcc
> > version 2.95.3-5
> >
> > GNU Prolog version (use gprolog --version).
> >             1.2.8
> >
> >
> > The operands given to the `configure' and the output of the
> > configuration if
> > the bug concerns the compilation/installation phase.
> >             no operand
> >
> > The complete text of any files needed to reproduce the bug. Try to
> > obtain a
> > minimal example showing the bug.
> > The precise commands we need to type to reproduce the bug.
> >             In the cygwin console window:
> >             change directory to GNU-Prolog "src"
> >                         ./configure
> >                         make
> >
> > A description of what behavior you observe that you believe is
> > incorrect.
> > If you wish to mention something in the GNU Prolog source, show the line
> > of
> > code with a few lines of context.  Do not just give a line number.
> >             Message on the make log:
> >                         gcc: cannot specify -o with -c or -S and
> > multiple
> > compilations
> >                         compilation failed
> > --------------------------------------------------------------------------
> --
> > ---
> > Here is the copy of the Cygwin console log:
> >
> > john@MINT /cygdrive/c/Program Files/GNU-Prolog 1.2.8/gprolog-1.2.8/src
> > $ make
> > (cd EnginePl; make config)
> > make[1]: Entering directory `/cygdrive/c/Program Files/GNU-Prolog
> > 1.2.8/gprolog-
> > 1.2.8/src/EnginePl'
> > make[1]: Nothing to be done for `config'.
> > make[1]: Leaving directory `/cygdrive/c/Program Files/GNU-Prolog
> > 1.2.8/gprolog-1
> > .2.8/src/EnginePl'
> > . ./SETVARS;for i in TopComp EnginePl Wam2Ma Ma2Asm Linedit BipsPl
> > Pl2Wam
> > Fd2C E
> > ngineFD BipsFD;do (cd $i; make) || exit 1; done;\
> > (cd TopComp; make gprolog.exe)
> > make[1]: Entering directory `/cygdrive/c/Program Files/GNU-Prolog
> > 1.2.8/gprolog-
> > 1.2.8/src/TopComp'
> > make[1]: Nothing to be done for `first'.
> > make[1]: Leaving directory `/cygdrive/c/Program Files/GNU-Prolog
> > 1.2.8/gprolog-1
> > .2.8/src/TopComp'
> > make[1]: Entering directory `/cygdrive/c/Program Files/GNU-Prolog
> > 1.2.8/gprolog-
> > 1.2.8/src/EnginePl'
> > gplc -c -C '-O3 ' obj_begin.c
> > gcc: cannot specify -o with -c or -S and multiple compilations
> > compilation failed
> > make[1]: *** [obj_begin.o] Error 1
> > make[1]: Leaving directory `/cygdrive/c/Program Files/GNU-Prolog
> > 1.2.8/gprolog-1
> > .2.8/src/EnginePl'
> > make: *** [all] Error 1
> >
> > john@MINT /cygdrive/c/Program Files/GNU-Prolog 1.2.8/gprolog-1.2.8/src
> > $
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.