<div>Hi!</div><div><br></div>I have applied the changes to env.c and thread.c with a<div>minor modification in thread.c (FUTURES instead MZRT!)):</div><div><br></div><div>-#ifdef MZ_USE_FUTURES</div><div><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&#39;</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&#39;</div><div>env XFORM_PRECOMP=yes ../racketcgc -cqu ../../../racket/gc2/xform.rkt --setup . --cpp &quot;gcc -E -I./.. -I../../../racket/gc2/../include -DNEWGC_BTC_ACCOUNT  -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DDONT_USE_FOREIGN &quot;  --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&#39;</div><div>make[3]: *** [all] Error 2</div><div>make[3]: Leaving directory `/home/user/tmp/plt-5.0/src/build/racket/gc2&#39;</div>
<div>make[2]: *** [3m] Error 2</div><div>make[2]: Leaving directory `/home/user/tmp/plt-5.0/src/build/racket&#39;</div><div>make[1]: *** [3m] Error 2</div><div>make[1]: Leaving directory `/home/user/tmp/plt-5.0/src/build&#39;</div>
<div>make: *** [all] Error 2</div></div><div>--------------------------------------------------------------------------------------------</div><div><br></div><div>Regards</div><div>Nik</div><div><br><br><div class="gmail_quote">
On Tue, Jul 13, 2010 at 6:19 PM, Kevin Tew <span dir="ltr">&lt;<a href="mailto:tewk@cs.utah.edu">tewk@cs.utah.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">



  

<div bgcolor="#ffffff" text="#000000">
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&#39;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.<div class="im"><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></div>
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<div><div></div><div class="h5"><br>
<br>
<br>
<br>
On 07/13/2010 10:03 AM, Kevin Tew wrote:
<blockquote type="cite">
  
Try this patch, if it works for you.  I&#39;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 type="cite">
    
    <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&#39;<br>
make[4]: Leaving directory `/home/user/tmp/plt-5.0/src/build/racket&#39;<br>
make racketcgc <br>
make[4]: Entering directory `/home/user/tmp/plt-5.0/src/build/racket&#39;<br>
gcc -I. -I../../racket/include -g -O2  -Wall     -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -DDONT_USE_FOREIGN
-DINITIAL_COLLECTS_DIRECTORY=&#39;&quot;&#39;&quot;`cd ../../racket/../../collects;
pwd`&quot;&#39;&quot;&#39; -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&#39;:<br>
/home/user/tmp/plt-5.0/src/build/racket/src/../../../racket/src/env.c:500:

undefined
reference to `scheme_init_foreign_places&#39;<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&#39;<br>
make[3]: *** [cgc] Error 2<br>
make[3]: Leaving directory `/home/user/tmp/plt-5.0/src/build/racket&#39;<br>
make[2]: *** [3m] Error 2<br>
make[2]: Leaving directory `/home/user/tmp/plt-5.0/src/build/racket&#39;<br>
make[1]: *** [3m] Error 2<br>
make[1]: Leaving directory `/home/user/tmp/plt-5.0/src/build&#39;<br>
make: *** [all] Error<br>
    <br>
Any idea how this problem can be resolved!<br>
    <br>
Regards<br>
Nik<br>
    </font>
    <pre><fieldset></fieldset>
_________________________________________________
  For list-related administrative tasks:
  <a href="http://lists.racket-lang.org/listinfo/users" target="_blank">http://lists.racket-lang.org/listinfo/users</a></pre>
  </blockquote>
  <br>
  <pre><fieldset></fieldset>
_________________________________________________
  For list-related administrative tasks:
  <a href="http://lists.racket-lang.org/listinfo/users" target="_blank">http://lists.racket-lang.org/listinfo/users</a></pre>
</blockquote>
<br>
</div></div></div>

</blockquote></div><br></div></div></div>