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

Problems building with threads on OpenBSD (ITS#521)



Full_Name: Adam Reece
Version: OpenLDAP 1.2.9+
OS: OpenBSD 2.6
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (207.164.204.5)


I have been trying to build a thread-enabled OpenLDAP 1.2.9 or 1.2.10 on a
simple OpenBSD 2.6 system following the instructions in the OpenBSD Faq-O-Matic.
The configure script seems to run fine, but problems first begin to surface when
I run "make depend". There are several (50 or more) lines that give the
following warnings:


/usr/include/pthread.h:352: warning: #warning "included <pthread.h> without
-pthread compiler option"
In file included from ../../include/ldap_pvt_thread.h:24,
                 from ../slapd/slap.h:24,
                 from ch_malloc.c:24:


However, they are only warnings. When I try to do a make, the build fails when
trying to build libldbm with the following error:


  Entering subdirectory libldbm
gcc -g -O2 -I../../include -I../../include   -DHAVE_CONFIG_H   -c ldbm.c
In file included from ../../include/ldap_pvt_thread.h:24,
                 from ldbm.c:22:
/usr/include/pthread.h:352: warning: #warning "included <pthread.h> without
-pth
read compiler option"
In file included from ldbm.c:22:
../../include/ldap_pvt_thread.h:31: syntax error before `ldap_pvt_thread_t'
../../include/ldap_pvt_thread.h:31: warning: data definition has no type or
stor
age class
../../include/ldap_pvt_thread.h:32: syntax error before
`ldap_pvt_thread_mutex_t
'
../../include/ldap_pvt_thread.h:32: warning: data definition has no type or
stor
age class
../../include/ldap_pvt_thread.h:33: syntax error before
`ldap_pvt_thread_cond_t'
../../include/ldap_pvt_thread.h:33: warning: data definition has no type or
stor
age class
../../include/ldap_pvt_thread.h:188: syntax error before `*'
../../include/ldap_pvt_thread.h:190: `ldap_pvt_thread_create' declared as
functi
on returning a function
../../include/ldap_pvt_thread.h:191: syntax error before `void'
../../include/ldap_pvt_thread.h:197: syntax error before `thread'
../../include/ldap_pvt_thread.h:200: syntax error before `thread'
../../include/ldap_pvt_thread.h:206: syntax error before `*'
../../include/ldap_pvt_thread.h:209: syntax error before `*'
../../include/ldap_pvt_thread.h:212: syntax error before `*'
../../include/ldap_pvt_thread.h:216: syntax error before `*'
../../include/ldap_pvt_thread.h:220: syntax error before `*'
../../include/ldap_pvt_thread.h:223: syntax error before `*'
../../include/ldap_pvt_thread.h:226: syntax error before `*'
../../include/ldap_pvt_thread.h:229: syntax error before `*'
../../include/ldap_pvt_thread.h:232: syntax error before `*'
../../include/ldap_pvt_thread.h:235: syntax error before
`ldap_pvt_thread_mutex_
t'
ldbm.c:54: syntax error before `ldbm_big_mutex'
ldbm.c:54: warning: data definition has no type or storage class
*** Error code 1

Stop in /root/openldap-1.2.9/libraries/libldbm.
*** Error code 1

Stop in /root/openldap-1.2.9/libraries.
*** Error code 1

Stop in /root/openldap-1.2.9.

I can provide my copy of ldap_pvt_thread.h if you would like, but it seems to be
a bit big to do it here. My current work-around is to build without threads.