[racket] Racket + Vim

From: Juan Francisco Cantero Hurtado (iam at juanfra.info)
Date: Fri Nov 29 16:58:49 EST 2013

On 11/29/13 12:33, Eduardo Costa wrote:
> Well, Juan, in fact there was some relevant stuff in the config.log in the
> auto folder. That was the only config.log I could find. Below you can find
> what I got. It seems that vim require two libraries available only to
> people who compiled Racket from sources. In any case, I inserted the
> libraries into racket/lib. This time configure worked well, but make did
> not. Here are the error that I got:

I guess the libraries were part of PLT Scheme but Racket doesn't include 
these libraries now.

You don't need the mzscheme support of vim if you don't want write vim 
plugins in scheme. If you only want to add support for racket to vim, 
use this vim plugin:

https://github.com/wlangstroth/vim-racket

>
> if_mzsch.c: In function ‘window_new’:
> if_mzsch.c:1782:5: error: lvalue required as left operand of assignment
> if_mzsch.c: In function ‘buffer_new’:
> if_mzsch.c:2136:5: error: lvalue required as left operand of assignment
> make[1]: ** [objects/if_mzsch.o] Erro 1
> make[1]: Saindo do diretório `/home/rosa/edt/vim/src'
> make: ** [first] Erro 2
> 08:53 |~/edt/vim# cd src
> 08:57 |~/edt/vim/src# emacs if_mzsch.c &
>
> Since I was not  able to compile Vim, I am using Emacs with flymake (I hope
> there is flymake in Vim). The lines in errors were flagged by flymake, and
> shown in red:
>
>
>    MZ_GC_CHECK();
>      BUFFER_REF(buf) = self; <-- This line is red
>      MZ_GC_CHECK();
>      self->buf = buf;
>      self->so.type = mz_buffer_type;
>
>
> static Scheme_Object *
> window_new(win_T *win)
> {... etc.
>
>      MZ_GC_CHECK();
>      WINDOW_REF(win) = self; <-- This line is red
>      MZ_GC_CHECK();
>      self->win = win;
>      self->so.type = mz_window_type;
>
>
>   WINDOW_REF(win) = self;
>
> BUFFER_REF(buf) = self;
>
> Does it makes sense?
>
>
> configure:5279: gcc -o conftest -g -O2  -DINCLUDE_MZSCHEME_BASE
> -I/home/rosa/racket/include
> -DMZSCHEME_COLLECTS='"/home/rosa/racket/collects"'   -L/usr/local/lib
> conftest.c  -L/home/rosa/racket/lib -lmzscheme -lmzgc -Wl,-rpath
> -Wl,/home/rosa/racket/lib -lffi >&5
> /usr/bin/ld: cannot find -lmzscheme
> /usr/bin/ld: cannot find -lmzgc
> collect2: ld returned 1 exit status
> configure:5279: $? = 1
> configure: failed program was:
> | /* confdefs.h */
> | #define PACKAGE_NAME ""
> | #define PACKAGE_TARNAME ""
> | #define PACKAGE_VERSION ""
> | #define PACKAGE_STRING ""
> | #define PACKAGE_BUGREPORT ""
> | #define PACKAGE_URL ""
> | #define UNIX 1
> | #define STDC_HEADERS 1
> | #define HAVE_SYS_WAIT_H 1
> | #define FEAT_NORMAL 1
> | #define USE_XSMP_INTERACT 1
> | /* end confdefs.h.  */
> |
> | int
> | main ()
> | {
> |
> |   ;
> |   return 0;
> | }
>
>
>
> 2013/11/29 Juan Francisco Cantero Hurtado <iam at juanfra.info>
>
>> On 11/28/13 23:58, Eduardo Costa wrote:
>>
>>> I need a fast text editor, with outlines, and a fast lisp for performing
>>> textual search with a bit of semantics. The programs have both Scheme and
>>> Common Lisp versions. They are straightforward, in the sense that no
>>> esoteric Lisp resources are used. Vanilla flavor Lisp.
>>>
>>> The programs will be used by 40 or 50 people with little or no computer
>>> experience. However, these people can use the console (they are quite good
>>> at cp, rm, mkdir, etc.) and text editors, like Vim and Emacs.
>>>
>>>
>>> I was thinking about Vim compiled with Racket. However, I failed to
>>> compile
>>> Vim with Racket, and everybody else failed too. Here is what I did (and
>>> everybody else followed suit):
>>>
>>> ./configure --enable-mzscheme
>>>
>>> checking for mzscheme... /usr/local/bin/mzscheme
>>> checking MzScheme install prefix... /home/rosa/racket
>>> checking if scheme.h can be found in /home/rosa/racket/include... yes
>>> checking for racket collects directory... /home/rosa/racket/
>>> checking for mzscheme_base.c... needed
>>> checking for ffi_type_void in -lffi... yes
>>> checking if compile and link flags for MzScheme are sane... no: MZSCHEME
>>> DISABLED
>>>
>>> I searched the Internet for mzscheme_base.c to no avail. It seems that the
>>> binding between Vim and mzscheme was developed by Serguey Khorev and
>>> Matthew Flatt. I will appreciate feedback on what I am doing wrong.
>>>
>>>
>> Search the file "config.log" within the vim source directory. This file
>> will tell you what is the problem.
>>



Posted on the users mailing list.