[PD-dev] win32 build farm 'msys.exe' (WAS: symlinks render pdstring unbuildable on MinGW/Windows)
moocow at ling.uni-potsdam.de
Fri Apr 24 21:20:52 CEST 2009
moin Hans, moin list,
On 2009-04-20 02:10:17, Hans-Christoph Steiner <hans at eds.org> appears to
> On Apr 19, 2009, at 5:22 AM, Bryan Jurish wrote:
>> moin Hans,
>> On 2009-04-18 06:57:53, Hans-Christoph Steiner <hans at eds.org> appears to
>> have written:
>>> The bad news is that it seems that my bad diagnosis led you on a wide
>>> goose chase thru the pain of Windows development.
>> It may or may not have been a bad diagnosis (although it certainly was a
>> pain ;-) -- I still haven't verified the former, since I don't use (or
>> understand) all of the auto-build scripts. I'm still kinda hoping
>> IOhannes might make some headway there...
> You don't really need to understand the auto-build scripts, all that
> needs to work is this:
> cd pure-data/externals
> make moocow
> make moocow_install
yup, I've understood that bit (and the motivations, I think). I meant
that since the problems arising in 'make moocow' appear to have been
*due to* clever & fiendish details of earlier scripts (e.g. use of rsync
rather than svn, the cygwin/mingw dichotomy, etc. etc.), it would have
behooved me to have understood those scripts better (e.g. at all)...
>>> string2any and friends are still not getting built. In fact all of the
>>> 'moocow' is empty on Windows.
This is still stumping me. The win32 build farm machine's config.log is
showing me (for externals/moocow/locale):
configure:2701: gcc \
-DPD -O2 -mcpu=i586 -mtune=pentium3 \
-Wall -W -ggdb \
-DMSW -DNT -D'O_NONBLOCK=1' -D'srand48(n)=srand((n))' \
-D'drand48()=((double)rand()/RAND_MAX)' -D'bzero(p,n)=memset(p,0,n)' \
<command line>:4:1: macro names must be identifiers
<command line>:5:1: macro names must be identifiers
<command line>:6:1: macro names must be identifiers
<command line>:7:1: macro names must be identifiers
configure:2704: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "locale"
| #define PACKAGE_TARNAME "locale"
| #define PACKAGE_VERSION "0.02-1"
| #define PACKAGE_STRING "locale 0.02-1"
| #define PACKAGE_BUGREPORT "moocow at ling.uni-potsdam.de"
| #define PACKAGE "locale"
| #define VERSION "0.02-1"
| /* end confdefs.h. */
| main ()
| return 0;
configure:2749: error: C compiler cannot create executables
... newline escapes in the gcc call added post-hoc for legibility. The
above call works fine (creating a.exe) by hand on the build farm win32
machine with "/cygdrive/c/msys/1.0/bin:/cygdrive/c/MinGW/bin" prepended
to PATH, so I can't grok where things might be going wrong, much less
what the "macro names must be identifiers" errors are all about --
assumedly some of the '-D' flags are giving me grief, but since I can't
reproduce the error, I can't tell which ones or what to do about it.
Anyone have any ideas?
I can't use rdesktop currently, since it's telling me I'd have to kick
out another user (pd).
>> In a related question, should the auto-build process for the win32
>> build-farm machine be trying to build everything from the LIB_TARGETS
>> variable in externals/Makefile? If so, then I must be being pretty
>> dense, because I can't see where my builds are getting called (I see
>> install calls, but no configuration or compilation), much less where
>> they might be failing...
> You are correct. Search for 'moocow_install:' in externals/Makefile.
> That's where its being called.
Yes, right; but I couldn't see (until the rsync fix/hack was applied)
where the 'moocow' target was getting called, thus recursing into
externals/moocow/extended. That's showing up now, so no worries.
Bryan Jurish "There is *always* one more bug."
jurish at ling.uni-potsdam.de -Lubarsky's Law of Cybernetic Entomology
More information about the Pd-dev