<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    <div>Hi!</div>
    <div><br>
    </div>
    I have applied the changes that you pointed out in your posting to
    env.c and thread.c <br>
    with a minor modification of changes in thread.c (MZRT replaced by
    FUTURES!):
    <div><br>
    </div>
    <div>-#ifdef MZ_USE_FUTURES</div>
    <div>+#if defined(MZ_USE_FUTURES) &amp;&amp;
      !defined(DONT_USE_FOREIGN)</div>
    <div><br>
    </div>
    <div>I get now the following errors:</div>
    <div>--------------------------------------------------------------------------------------------</div>
    <div>.....</div>
    <div>.....</div>
    <div>
      <div>make[3]: Entering directory
        `/home/user/tmp/plt-5.0/src/build/racket/gc2'</div>
      <div>mkdir xsrc</div>
      <div>make xsrc/precomp.h</div>
      <div>make[4]: Entering directory
        `/home/user/tmp/plt-5.0/src/build/racket/gc2'</div>
      <div>env XFORM_PRECOMP=yes ../racketcgc -cqu
        ../../../racket/gc2/xform.rkt --setup . --cpp "gcc -E -I./..
        -I../../../racket/gc2/../include -DNEWGC_BTC_ACCOUNT
         -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DDONT_USE_FOREIGN "
         --keep-lines -o xsrc/precomp.h ../../../racket/gc2/precomp.c</div>
      <div>Copying tree...</div>
      <div>/home/user/tmp/plt-5.0/collects/ffi/unsafe.rkt:17:56:
        rename-out: no binding for identifier at: _scheme in:
        (rename-out (_scheme _racket))</div>
      <div><br>
      </div>
      <div> === context ===</div>
      <div>
/home/user/tmp/plt-5.0/collects/racket/private/reqprov.rkt:741:25</div>
      <div>/home/user/tmp/plt-5.0/collects/racket/private/reqprov.rkt:740:18</div>
      <div>/home/user/tmp/plt-5.0/collects/racket/private/reqprov.rkt:725:5</div>
      <div>/home/user/tmp/plt-5.0/collects/racket/provide-transform.rkt:51:2:
        expand-export</div>
      <div>/home/user/tmp/plt-5.0/collects/racket/private/reqprov.rkt:605:17:

        transform-simple</div>
      <div>/home/user/tmp/plt-5.0/collects/racket/private/reqprov.rkt:601:2</div>
      <div><br>
      </div>
      <div>make[4]: *** [xsrc/precomp.h] Error 1</div>
      <div>make[4]: Leaving directory
        `/home/user/tmp/plt-5.0/src/build/racket/gc2'</div>
      <div>make[3]: *** [all] Error 2</div>
      <div>make[3]: Leaving directory
        `/home/user/tmp/plt-5.0/src/build/racket/gc2'</div>
      <div>make[2]: *** [3m] Error 2</div>
      <div>make[2]: Leaving directory
        `/home/user/tmp/plt-5.0/src/build/racket'</div>
      <div>make[1]: *** [3m] Error 2</div>
      <div>make[1]: Leaving directory `/home/user/tmp/plt-5.0/src/build'</div>
      <div>make: *** [all] Error 2</div>
    </div>
    <div>--------------------------------------------------------------------------------------------</div>
    <div><br>
    </div>
    <div>Regards</div>
    <div>Nik</div>
    <br>
    <br>
    On 07/13/2010 06:19 PM, Kevin Tew wrote:
    <blockquote cite="mid:4C3C91FF.4010605@cs.utah.edu" type="cite">
      <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
      Ok I tried compiling with your configure line myself.<br>
      I had to make an additional change to get racket/racketcgc to
      build.<br>
      <br>
      the 3m  variant still doesn't build do to more reliance on the ffi
      during xform.<br>
      setup is also going to try to use the ffi.<br>
      <br>
      We have added additional dependencies on the ffi (foreign function
      interface) and need to decide if we are going to support building
      without it.<br>
      My guess is that is possible but will require some engineering
      effort.<br>
      <br>
      Kevin<br>
      <br>
      diff --git a/src/racket/src/env.c b/src/racket/src/env.c<br>
      index b1c0a8d..68b634b 100644<br>
      --- a/src/racket/src/env.c<br>
      +++ b/src/racket/src/env.c<br>
      @@ -501,7 +501,9 @@ static Scheme_Env *place_instance_init(void
      *stack_base, int initial_main_os_thr<br>
         scheme_init_gmp_places();<br>
         scheme_alloc_global_fdset();<br>
         scheme_init_file_places();<br>
      +#ifndef DONT_USE_FOREIGN<br>
         scheme_init_foreign_places();<br>
      +#endif<br>
      <br>
         env = scheme_make_empty_env();<br>
         scheme_set_param(scheme_current_config(), MZCONFIG_ENV,
      (Scheme_Object *)env);<br>
      diff --git a/src/racket/src/thread.c b/src/racket/src/thread.c<br>
      index 7329d58..3d2c4fb 100644<br>
      --- a/src/racket/src/thread.c<br>
      +++ b/src/racket/src/thread.c<br>
      @@ -4159,7 +4159,7 @@ void scheme_thread_block(float sleep_time)<br>
       #ifdef MZ_USE_FUTURES<br>
         scheme_check_future_work();<br>
       #endif<br>
      -#ifdef MZ_USE_MZRT<br>
      +#if defined(MZ_USE_MZRT) &amp;&amp; !defined(DONT_USE_FOREIGN)<br>
         scheme_check_foreign_work();<br>
       #endif<br>
      <br>
      <br>
      <br>
      On 07/13/2010 10:03 AM, Kevin Tew wrote:
      <blockquote cite="mid:4C3C8E53.4090301@cs.utah.edu" type="cite">
        <meta content="text/html; charset=UTF-8"
          http-equiv="Content-Type">
        Try this patch, if it works for you.  I'll commit it<br>
        <br>
        Kevin<br>
        <br>
        diff --git a/src/racket/src/env.c b/src/racket/src/env.c<br>
        index b1c0a8d..68b634b 100644<br>
        --- a/src/racket/src/env.c<br>
        +++ b/src/racket/src/env.c<br>
        @@ -501,7 +501,9 @@ static Scheme_Env *place_instance_init(void
        *stack_base, int initial_main_os_thr<br>
           scheme_init_gmp_places();<br>
           scheme_alloc_global_fdset();<br>
           scheme_init_file_places();<br>
        +#ifndef DONT_USE_FOREIGN<br>
           scheme_init_foreign_places();<br>
        +#endif<br>
        <br>
           env = scheme_make_empty_env();<br>
           scheme_set_param(scheme_current_config(), MZCONFIG_ENV,
        (Scheme_Object *)env);<br>
        <br>
        On 07/13/2010 09:25 AM, nitralime wrote:
        <blockquote cite="mid:4C3C8585.9040304@gmail.com" type="cite">
          <meta http-equiv="content-type" content="text/html;
            charset=UTF-8">
          <font face="Consolas">Hi folks!<br>
            <br>
            I have tried to compile Racket on Maemo 5 (&lt;--&gt; Nokia
            N900).<br>
            Following the usual configure and make schema I have
            proceeded<br>
            as follows:<br>
            <br>
            # cd plt-5.0/src/build<br>
            # ../configure  --prefix=/home/user/local/racket-5.0
            --without-x
            --disable-gracket --disable-foreign<br>
            # make<br>
            ...<br>
            ...<br>
            a - src/unwind.o<br>
            a - src/vector.o<br>
            ranlib libracket.a<br>
            make[5]: Leaving directory
            `/home/user/tmp/plt-5.0/src/build/racket'<br>
            make[4]: Leaving directory
            `/home/user/tmp/plt-5.0/src/build/racket'<br>
            make racketcgc <br>
            make[4]: Entering directory
            `/home/user/tmp/plt-5.0/src/build/racket'<br>
            gcc -I. -I../../racket/include -g -O2  -Wall    
            -D_LARGEFILE_SOURCE
            -D_FILE_OFFSET_BITS=64 -DDONT_USE_FOREIGN
            -DINITIAL_COLLECTS_DIRECTORY='"'"`cd
            ../../racket/../../collects;
            pwd`"'"' -c ../../racket/main.c -o main.o<br>
            gcc -o racketcgc main.o  libracket.a libmzgc.a  -ldl -lm 
            -ldl -lm
            -rdynamic <br>
            libracket.a(env.o): In function `place_instance_init':<br>
            /home/user/tmp/plt-5.0/src/build/racket/src/../../../racket/src/env.c:500:

undefined
reference
            to `scheme_init_foreign_places'<br>
            collect2: ld returned 1 exit status<br>
            make[4]: *** [racketcgc] Error 1<br>
            make[4]: Leaving directory
            `/home/user/tmp/plt-5.0/src/build/racket'<br>
            make[3]: *** [cgc] Error 2<br>
            make[3]: Leaving directory
            `/home/user/tmp/plt-5.0/src/build/racket'<br>
            make[2]: *** [3m] Error 2<br>
            make[2]: Leaving directory
            `/home/user/tmp/plt-5.0/src/build/racket'<br>
            make[1]: *** [3m] Error 2<br>
            make[1]: Leaving directory
            `/home/user/tmp/plt-5.0/src/build'<br>
            make: *** [all] Error<br>
            <br>
            Any idea how this problem can be resolved!<br>
            <br>
            Regards<br>
            Nik<br>
          </font>
          <pre wrap=""><fieldset class="mimeAttachmentHeader"></fieldset>
_________________________________________________
  For list-related administrative tasks:
  <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.racket-lang.org/listinfo/users">http://lists.racket-lang.org/listinfo/users</a></pre>
        </blockquote>
        <br>
        <pre wrap=""><fieldset class="mimeAttachmentHeader"></fieldset>
_________________________________________________
  For list-related administrative tasks:
  <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.racket-lang.org/listinfo/users">http://lists.racket-lang.org/listinfo/users</a></pre>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>