[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Building with pthreads in Digital Unix 4.0 (ITS#62)



BTW, thank you for your work on this project.  Its exciting and a
wonderful service to the community.

Further information regarding Kurt's email follows.

Regards,

-Ashley


On Mon, 1 Feb 1999, Kurt D. Zeilenga wrote:

> At 08:57 PM 2/1/99 GMT, Ashley.W.Frost@williams.edu wrote:
> >Full_Name: Ashley Frost
> >Version: 1.1.4
> >OS: Digital Unix 4.0d
> >URL: 
> >Submission from: (NULL) (137.165.10.21)
> >
> >
> >I couldn't find this information anywhere in the FAQ or mailing list archives,
> >so I'm offering it to anyone who is having trouble with ./configure and pthread
> >support for Digital Unix.  It would be especially helpful under the Platform 
> >Hints in a section for Digital Unix.
> 
> You are, of course, welcomed to add a subcategory for Digital UNIX in the
> platform hints section of the faq-o-matic and then add your 'new answer.'

I didn't realize you allowed offsite people to modify the faq-o-matic,
although a second look shows this to be true.  

I also realize that this answer looks a lot like some of the other answers
for other OS's regarding pthreads, however it is slightly different and
took a little digging through the man pages on DU.  If this had been in
there, it would have saved me some trouble right off the bat.

> >If configure stops with the error:
> >
> >       checking if pthread_create() works... no
> >       configure: error: pthread.h and pthread_create are not compatible
> 
> Where did it find the incompatible pthread_create() ?


Here is the tail of the config.log:

configure:4333: checking if pthread_create() works
configure:4365: cc -o conftest -g   conftest.c  -lpthreads -lmach -lexc
-lc_r  1>&5
ld:
Unresolved:
__pthread_create
configure: failed program was:
#line 4342 "configure"
#include "confdefs.h"

#include <pthread.h>
#ifndef NULL
#define NULL (void*)0
#endif

static void *task(p)
        void *p;
{
        return (void *) (p == NULL);
}

int main(argc, argv)
        int argc;
        char **argv;
{
        pthread_t t;
        exit(pthread_create(&t, NULL, task, NULL));
}


-Ashley