<div class="gmail_quote">On Wed, Feb 23, 2011 at 12:28 PM, Martin Rubey <span dir="ltr"><<a href="mailto:martin.rubey@math.uni-hannover.de">martin.rubey@math.uni-hannover.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

gcc -DECLDIR="\"/usr/local/lib/ecl-11.1.1\"" -I. -I/cygdrive/d/ecl-11.1.1/build<br>
-I/cygdrive/d/ecl-11.1.1/src/c -I../ecl/gc -DECL_API -DECL_NO_LEGACY    -g -O2<br>
-Dcygwin -c -o ffi/libraries.o tmp.c<br>
/cygdrive/d/ecl-11.1.1/src/c/ffi/libraries.d: In function `copy_object_file':<br>
/cygdrive/d/ecl-11.1.1/src/c/ffi/libraries.d:108: error: `S_IRWXU' undeclared (f<br>
irst use in this function)<br>
/cygdrive/d/ecl-11.1.1/src/c/ffi/libraries.d:108: error: (Each undeclared identi<br>
fier is reported only once<br>
/cygdrive/d/ecl-11.1.1/src/c/ffi/libraries.d:108: error: for each function it ap<br>
pears in.)</blockquote><div><br></div><div>I am really puzzled. On re-reading your email I realized this problem was actually located in the loader code, in a piece that is cygwin-specific. This suggests that something has either changed on cygwin or that this behavior depends on the version of the Windows you are using.</div>

<div><br></div><div>The code, shown below, (src/c/ffi/libraries.d) changes the extension of a compiled file to turn it into a *.dll and also changes permissions, so that cygwin can load it. Could you simply comment it out and try rebuilding?</div>

<div><br></div><div>Juanjo</div><div><br></div><div><div>#ifdef cygwin</div><div><span class="Apple-tab-span" style="white-space:pre">        </span>{</div><div><span class="Apple-tab-span" style="white-space:pre">            </span>cl_object new_copy = make_constant_base_string(".dll");</div>

<div><span class="Apple-tab-span" style="white-space:pre">              </span>new_copy = si_base_string_concatenate(2, copy, new_copy);</div><div><span class="Apple-tab-span" style="white-space:pre">            </span>cl_rename_file(2, copy, new_copy);</div>

<div><span class="Apple-tab-span" style="white-space:pre">              </span>copy = new_copy;</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>ecl_disable_interrupts();</div>

<div><span class="Apple-tab-span" style="white-space:pre">      </span>err = chmod(copy->base_string.self, S_IRWXU) < 0;</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>ecl_enable_interrupts();</div>

<div><span class="Apple-tab-span" style="white-space:pre">      </span>if (err) {</div><div><span class="Apple-tab-span" style="white-space:pre">           </span>FElibc_error("Unable to give executable permissions to ~A",</div>

<div><span class="Apple-tab-span" style="white-space:pre">                      </span>     1, copy);</div><div><span class="Apple-tab-span" style="white-space:pre">       </span>}</div><div>#endif</div></div><div><br></div><div> </div></div><br>

-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://juanjose.garciaripoll.googlepages.com" target="_blank">http://juanjose.garciaripoll.googlepages.com</a><br>