Configure script problem on Mac OS X.

Bug #265480 reported by Thdeniau
2
Affects Status Importance Assigned to Milestone
GNU Mailman
Invalid
Low
Thomas Wouters

Bug Description

I can't run configure on Mac OS X 10.0.3 (Darwin
1.3.3).

When I run it as root I get :

checking for --with-var-prefix... no
checking for --with-username... mailman
checking for mailman UID... ./configure:
permission denied: conftest.py [1152]
/usr/local/bin/python: can't open file 'conftest.py'
cat: conftest.out: No such file or directory

configure: error:
***** No "mailman" user found!
***** Your system must have a "mailman" user
defined
***** (usually in your /etc/passwd file). Please see
the INSTALL
***** file for details.

And when I run it as a normal user ::

checking for --with-var-prefix... no
checking for --with-username... sh: setgroups:
Operation not permitted
thomas
checking for thomas UID... 501
checking for --with-groupname... mailman

[http://sourceforge.net/tracker/index.php?func=detail&aid=427421&group_id=103&atid=100103]

Revision history for this message
Thomas Wouters (thomas) wrote :

Going to check on this on my colleague's MacOS X box.

Revision history for this message
Thomas Wouters (thomas) wrote :

It works fine on my colleague's darwin 1.3.3, on a HFS+
filesystem. I suspect that you have a 'conftest.py' leftover
from a previous run, and with odd permissions. Try deleting
it, and see if that helps. You do need to make a 'mailman'
user and group, though, just like the README says. I didn't
want to totally screw my colleague's machine (he sits within
striking distance of me) so I didn't actually install, but
configure and make both went fine.

(Contrary to compiling Python... Cost me a good two hours to
compile python on the box :)

Revision history for this message
Thdeniau (thdeniau) wrote :

HFS+ filesystem, too.
I've the problem on a fresh download : the file
conftest.py doesn't exist.
Even I if chmod -R 777 the mailman folder, this doesn't
work. The only way to configure properly is to chown the
repertory to mailman and to run the configure as
mailman, or to chown -R 777 continuously while
configure runs. Very very odd. Maybe because HFS+ is
case-insensitive ...
And, even if I run configure as mailman, make install
fails : cc -c -I. -DPREFIX="\"/usr/local/mailman\""
-DPYTHON="\"/usr/local/bin/python\"" -DHELPFUL -g
-O2 -g -O2 -DHAVE_STRERROR=1
-DHAVE_SETREGID=1 -DHAVE_SYSLOG=1
-DSTDC_HEADERS=1 -DHAVE_SYSLOG_H=1
-DGETGROUPS_T=gid_t -DHAVE_VSNPRINTF=1
./common.c
./common.c:26: `PREFIX' undeclared here (not in a
function)
./common.c:26: `scripts' undeclared here (not in a
function)
./common.c:26: parse error before `;'
make[1]: *** [common.o] Error 1

Revision history for this message
Thomas Wouters (thomas) wrote :

One thing that might matter is that I had root-privs,
meaning that I was allowed to do sudo. Other than that, I do
the exact same thing as you, and it really works fine.

The other problem is even stranger! The 'cc' line you quote
has the -DPREFIX= line, which defines 'PREFIX', but then cc
complains that it isn't defined ?? What version of cc and
make are you using ? it worked fine with:

[localhost:~/mailman-2.0] thomas% cc -v
Reading specs from /usr/libexec/gcc/darwin/ppc/2.95.2/specs
Apple Computer, Inc. version gcc-926, based on gcc version
2.95.2 19991024 (release)

[localhost:~/mailman-2.0] thomas% make -v
GNU Make version 3.79, by Richard Stallman and Roland
McGrath.
Built for powerpc-apple-darwin1.0

if your make doesn't report the version on -v, you're using
BSD make (aka 'bsdmake' on darwin.) Try running 'gnumake'
-- it wouldn't be the first weirdness being solved by using
gmake instead of bsdmake :)

Revision history for this message
Thdeniau (thdeniau) wrote :

make -v
GNU Make version 3.79, by Richard Stallman and
Roland McGrath.
Built for powerpc-apple-darwin1.0
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99
        Free Software Foundation, Inc.
This is free software; see the source for copying
conditions.
There is NO warranty; not even for MERCHANTABILITY
or FITNESS FOR A
PARTICULAR PURPOSE.

cc -v
Reading specs from
/usr/libexec/gcc/darwin/ppc/2.95.2/specs
Apple Computer, Inc. version gcc-926, based on gcc
version 2.95.2 19991024 (release)

and for the configure problem : i'm able to sudo ... and
even as root, the install fails.

Revision history for this message
Thomas Wouters (thomas) wrote :

D'oh! I just realized what the difference is... I'm using
the current CVS tree, in which I fixed at least the PREFIX
bug. I'm guessing you aren't. Can you try the CVS tree ? If
you don't have access to cvs on your darwin box, let me know
and I'll mail you a .tgz of a current snapshot.

Revision history for this message
Thdeniau (thdeniau) wrote :

hMmm ... i've tried with cvs.
I installed mimelib and now, the compilation of common.c runs properly,
but now I get the error :

Traceback (most recent call last):
  File "bin/update", line 46, in ?
    from Mailman import MailList
  File "/usr/local/mailman/Mailman/MailList.py", line 42, in ?
    from Mailman.ListAdmin import ListAdmin
  File "/usr/local/mailman/Mailman/ListAdmin.py", line 33, in ?
    from Mailman import Message
  File "/usr/local/mailman/Mailman/Message.py", line 26, in ?
    from mimelib.StringableMixin import StringableMixin
ImportError: No module named StringableMixin

And there's still the configure problem.

Revision history for this message
Barry Warsaw (barry) wrote :

Maybe you have an old version of mimelib? In version 0.3
the ReprMixin class was renamed to StringableMixin.

Revision history for this message
Thomas Wouters (thomas) wrote :

Oops, again. I should have been more explicit in checking
out the CVS tree: if you want a stable Mailman, you should
check out Mailman using

cvs -d <CVSROOT> co -rRelease_2_0_1-branch mailman

(after moving the old 'mailman' directory asside.) The head
of the CVS tree is for Mailman 2.1, and is probably best
described as "pleasantly unstable", not quite unlike Barry's
poems :) The 2.0.1 release branch is currently 2.0.5 plus a
few bugfixes, including the PREFIX one.

I'm still stumped about the conftest.py failure, though. Can
you create a file 'conftest.py' with a few lines of Python
code ("print 'hello world'" will do) and try to execute it
using "/usr/local/bin/python conftest.py" ? I wonder if it
might be a problem with your python, in that it doesn't
understand current working directories and such. (In
fact.... Wasn't there a thread on python-dev not so long ago
about how MacOS didn't have the concept of a current working
directory ? :)

Revision history for this message
Thdeniau (thdeniau) wrote :

[thomac:~] thomas% cat > conftest.py
print "hello world"
[thomac:~] thomas% python conftest.py
hello world

this works ...

OK, I've checked out the stable version ... make works
perfectly, but I don't get the welcome mail when I create
a new test list. i'm using Postfix as MTA and my aliases
are correctly setup.

Revision history for this message
Barry Warsaw (barry) wrote :

I suspect you might not be running qrunner properly from
cron. Please read the README files about how to set this
up. In any event, I'm closing this bug report, since the
original problem (configure on MacOSX) seems to be solved.

If you think you have another bug related to sending mail,
please submit a new bug report.

Revision history for this message
Thdeniau (thdeniau) wrote :

The original problem (configure on mac OS X) isn't
fixed. The configure script only works if you su mailman
and chown mailman the sources dir before doing
configure. There is still an odd bug with conftest.py if
you su root before configuring ...

Revision history for this message
Barry Warsaw (barry) wrote :

There hasn't been any new information on this bug in a long
time. Is this a problem?

Revision history for this message
Thdeniau (thdeniau) wrote :

Yep, with mailman 2.0.10 / Mac OS X 10.1.4 I've still this error when
configuring as normal user :

checking for --with-var-prefix... no
checking for --with-username... sh: setgroups: Operation not permitted

I've to chown and su mailman the sources dir to make it work.

Revision history for this message
Jean.c.h (slug71) wrote :

Marked this bug as 'Invalid' due to its age and nothing further has been added in a long time. New versions have been released since as well as some underlying stuff in the OS platform itself.

If this bug still affects then please change status back to 'Confirmed'.

Changed in mailman:
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.