Re: 389ds build failure on alpine - try this...
by Mark Reynolds
On 10/17/18 12:07 PM, Mark Reynolds wrote:
>
>
> On 10/17/18 12:01 PM, Mark Reynolds wrote:
>>
>>
>> On 10/17/18 11:27 AM, Brian Matheson wrote:
>>> Hi list,
>>>
>>> I'm attempting th build 389ds with gperftools under alpine linux, but
>>> have run into the following snag:
>>>
>>> /BUILD # make
>>> make all-am
>>> make[1]: Entering directory '/BUILD'
>>> /bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
>>> -I../389-ds-base -DBUILD_NUM=\"2018.290.1518\"
>>> -DVENDOR="\"389 Project\"" -DBRAND="\"389\"" -DCAPBRAND="\"389\""
>>> -UPACKAGE_VERSION -UPACKAGE_TARNAME -UPACKAGE_STRING
>>> -UPACKAGE_BUGREPORT -I../389-ds-base/ldap/include
>>> -I../389-ds-base/ldap/servers/slapd -I../389-ds-base/include -I.
>>> -I../389-ds-base/src/nunc-stans/include/ -DLOCALSTATEDIR="\"/var\""
>>> -DSYSCONFDIR="\"/etc\"" -DLIBDIR="\"/usr/lib64\""
>>> -DBINDIR="\"/usr/bin\"" -DDATADIR="\"/usr/share\""
>>> -DDOCDIR="\"/usr/share/doc/389-ds-base\"" -DSBINDIR="\"/usr/sbin\""
>>> -DPLUGINDIR="\"/usr/lib64/dirsrv/plugins\""
>>> -DTEMPLATEDIR="\"/usr/share/dirsrv/data\""
>>> -DSYSTEMSCHEMADIR="\"/usr/share/dirsrv/schema\""
>>> -I../389-ds-base/src/nunc-stans/include/ -I/usr/include
>>> -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr
>>> -I/usr/include/sasl -I/usr/include -I/usr/include
>>> -I../389-ds-base/src/libsds/include/
>>> -I../389-ds-base/src/libsds/external/ -I/usr/include/nspr
>>> -I../389-ds-base/src/svrcore/src/ -g -pipe -Wall -fexceptions
>>> -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT
>>> ldap/servers/slapd/libslapd_la-libglobs.lo -MD -MP -MF
>>> ldap/servers/slapd/.deps/libslapd_la-libglobs.Tpo -c -o
>>> ldap/servers/slapd/libslapd_la-libglobs.lo `test -f
>>> 'ldap/servers/slapd/libglobs.c' || echo
>>> '../389-ds-base/'`ldap/servers/slapd/libglobs.c
>>> libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../389-ds-base
>>> -DBUILD_NUM=\"2018.290.1518\" "-DVENDOR=\"389 Project\""
>>> -DBRAND=\"389\" -DCAPBRAND=\"389\" -UPACKAGE_VERSION -UPACKAGE_TARNAME
>>> -UPACKAGE_STRING -UPACKAGE_BUGREPORT -I../389-ds-base/ldap/include
>>> -I../389-ds-base/ldap/servers/slapd -I../389-ds-base/include -I.
>>> -I../389-ds-base/src/nunc-stans/include/ -DLOCALSTATEDIR=\"/var\"
>>> -DSYSCONFDIR=\"/etc\" -DLIBDIR=\"/usr/lib64\" -DBINDIR=\"/usr/bin\"
>>> -DDATADIR=\"/usr/share\" -DDOCDIR=\"/usr/share/doc/389-ds-base\"
>>> -DSBINDIR=\"/usr/sbin\" -DPLUGINDIR=\"/usr/lib64/dirsrv/plugins\"
>>> -DTEMPLATEDIR=\"/usr/share/dirsrv/data\"
>>> -DSYSTEMSCHEMADIR=\"/usr/share/dirsrv/schema\"
>>> -I../389-ds-base/src/nunc-stans/include/ -I/usr/include
>>> -I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr
>>> -I/usr/include/sasl -I/usr/include -I/usr/include
>>> -I../389-ds-base/src/libsds/include/
>>> -I../389-ds-base/src/libsds/external/ -I/usr/include/nspr
>>> -I../389-ds-base/src/svrcore/src/ -g -pipe -Wall -fexceptions
>>> -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT
>>> ldap/servers/slapd/libslapd_la-libglobs.lo -MD -MP -MF
>>> ldap/servers/slapd/.deps/libslapd_la-libglobs.Tpo -c
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c -fPIC -DPIC -o
>>> ldap/servers/slapd/.libs/libslapd_la-libglobs.o
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c: In function
>>> 'config_set_malloc_mxfast':
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c:8107:9: warning: implicit
>>> declaration of function 'mallopt' [-Wimplicit-function-declaration]
>>> mallopt(M_MXFAST, mxfast);
>>> ^~~~~~~
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c:8107:17: error:
>>> 'M_MXFAST' undeclared (first use in this function)
>>> mallopt(M_MXFAST, mxfast);
>>> ^~~~~~~~
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c:8107:17: note: each
>>> undeclared identifier is reported only once for each function it
>>> appears in
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c: In function
>>> 'config_set_malloc_trim_threshold':
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c:8147:17: error:
>>> 'M_TRIM_THRESHOLD' undeclared (first use in this function)
>>> mallopt(M_TRIM_THRESHOLD, trim_threshold);
>>> ^~~~~~~~~~~~~~~~
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c: In function
>>> 'config_set_malloc_mmap_threshold':
>>> ../389-ds-base/ldap/servers/slapd/libglobs.c:8194:17: error:
>>> 'M_MMAP_THRESHOLD' undeclared (first use in this function)
>>> mallopt(M_MMAP_THRESHOLD, mmap_threshold);
>>> ^~~~~~~~~~~~~~~~
>>> make[1]: *** [Makefile:9925: ldap/servers/slapd/libslapd_la-libglobs.lo] Error 1
>>> make[1]: Leaving directory '/BUILD'
>>> make: *** [Makefile:4491: all] Error 2
>>>
>>> I'm using the attached Dockerfile to conduct the build. Not sure what
>>> other info you might find relevant, but please let me know if there's
>>> more I can provide, or if I should ask on a different list.
>>>
>>> Is there a way around this?
>>
>> Hi Brian,
>>
>> Is M_MMAP_THRESHOLD defined in /usr/include/malloc.h?
>>
>> It is on Fedora/RHEL:
>>
>> include/malloc.h:#define M_MMAP_THRESHOLD -3
>>
>>
>> The workaround would be to explicitly define M_MMAP_THRESHOLD in
>> libglobs.c
>>
> Actually you would need to define MX_FAST as well. Perhaps "alpine'
> is not registering as a LINUX platform. In that case try this code
> change:
>
>
> diff --git a/ldap/servers/slapd/libglobs.c b/ldap/servers/slapd/libglobs.c
> index a31a340ff..7098c8189 100644
> --- a/ldap/servers/slapd/libglobs.c
> +++ b/ldap/servers/slapd/libglobs.c
> @@ -128,9 +128,7 @@
> #endif /* USE_SYSCONF */
> #include "slap.h"
> #include "plhash.h"
> -#if defined(LINUX)
> #include <malloc.h>
> -#endif
>
> #define REMOVE_CHANGELOG_CMD "remove"
>
Hi Brian,
Did you make this code change above? Did it solve it?
Thanks,
Mark
>
>
>> HTH,
>>
>> Mark
>>
>>
>>> Thanks much,
>>> Brian
>>>
>>> _______________________________________________
>>> 389-devel mailing list --389-devel(a)lists.fedoraproject.org
>>> To unsubscribe send an email to389-devel-leave(a)lists.fedoraproject.org
>>> Fedora Code of Conduct:https://getfedora.org/code-of-conduct.html
>>> List Guidelines:https://fedoraproject.org/wiki/Mailing_list_guidelines
>>> List Archives:https://lists.fedoraproject.org/archives/list/389-devel@lists.fe...
>>
>> _______________________________________________
>> 389-devel mailing list --389-devel(a)lists.fedoraproject.org
>> To unsubscribe send an email to389-devel-leave(a)lists.fedoraproject.org
>> Fedora Code of Conduct:https://getfedora.org/code-of-conduct.html
>> List Guidelines:https://fedoraproject.org/wiki/Mailing_list_guidelines
>> List Archives:https://lists.fedoraproject.org/archives/list/389-devel@lists.fe...
5 years, 5 months
389ds build failure on alpine
by Brian Matheson
Hi list,
I'm attempting th build 389ds with gperftools under alpine linux, but
have run into the following snag:
/BUILD # make
make all-am
make[1]: Entering directory '/BUILD'
/bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
-I../389-ds-base -DBUILD_NUM=\"2018.290.1518\"
-DVENDOR="\"389 Project\"" -DBRAND="\"389\"" -DCAPBRAND="\"389\""
-UPACKAGE_VERSION -UPACKAGE_TARNAME -UPACKAGE_STRING
-UPACKAGE_BUGREPORT -I../389-ds-base/ldap/include
-I../389-ds-base/ldap/servers/slapd -I../389-ds-base/include -I.
-I../389-ds-base/src/nunc-stans/include/ -DLOCALSTATEDIR="\"/var\""
-DSYSCONFDIR="\"/etc\"" -DLIBDIR="\"/usr/lib64\""
-DBINDIR="\"/usr/bin\"" -DDATADIR="\"/usr/share\""
-DDOCDIR="\"/usr/share/doc/389-ds-base\"" -DSBINDIR="\"/usr/sbin\""
-DPLUGINDIR="\"/usr/lib64/dirsrv/plugins\""
-DTEMPLATEDIR="\"/usr/share/dirsrv/data\""
-DSYSTEMSCHEMADIR="\"/usr/share/dirsrv/schema\""
-I../389-ds-base/src/nunc-stans/include/ -I/usr/include
-I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr
-I/usr/include/sasl -I/usr/include -I/usr/include
-I../389-ds-base/src/libsds/include/
-I../389-ds-base/src/libsds/external/ -I/usr/include/nspr
-I../389-ds-base/src/svrcore/src/ -g -pipe -Wall -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT
ldap/servers/slapd/libslapd_la-libglobs.lo -MD -MP -MF
ldap/servers/slapd/.deps/libslapd_la-libglobs.Tpo -c -o
ldap/servers/slapd/libslapd_la-libglobs.lo `test -f
'ldap/servers/slapd/libglobs.c' || echo
'../389-ds-base/'`ldap/servers/slapd/libglobs.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../389-ds-base
-DBUILD_NUM=\"2018.290.1518\" "-DVENDOR=\"389 Project\""
-DBRAND=\"389\" -DCAPBRAND=\"389\" -UPACKAGE_VERSION -UPACKAGE_TARNAME
-UPACKAGE_STRING -UPACKAGE_BUGREPORT -I../389-ds-base/ldap/include
-I../389-ds-base/ldap/servers/slapd -I../389-ds-base/include -I.
-I../389-ds-base/src/nunc-stans/include/ -DLOCALSTATEDIR=\"/var\"
-DSYSCONFDIR=\"/etc\" -DLIBDIR=\"/usr/lib64\" -DBINDIR=\"/usr/bin\"
-DDATADIR=\"/usr/share\" -DDOCDIR=\"/usr/share/doc/389-ds-base\"
-DSBINDIR=\"/usr/sbin\" -DPLUGINDIR=\"/usr/lib64/dirsrv/plugins\"
-DTEMPLATEDIR=\"/usr/share/dirsrv/data\"
-DSYSTEMSCHEMADIR=\"/usr/share/dirsrv/schema\"
-I../389-ds-base/src/nunc-stans/include/ -I/usr/include
-I/usr/include/nss -I/usr/include/nspr -I/usr/include/nspr
-I/usr/include/sasl -I/usr/include -I/usr/include
-I../389-ds-base/src/libsds/include/
-I../389-ds-base/src/libsds/external/ -I/usr/include/nspr
-I../389-ds-base/src/svrcore/src/ -g -pipe -Wall -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -MT
ldap/servers/slapd/libslapd_la-libglobs.lo -MD -MP -MF
ldap/servers/slapd/.deps/libslapd_la-libglobs.Tpo -c
../389-ds-base/ldap/servers/slapd/libglobs.c -fPIC -DPIC -o
ldap/servers/slapd/.libs/libslapd_la-libglobs.o
../389-ds-base/ldap/servers/slapd/libglobs.c: In function
'config_set_malloc_mxfast':
../389-ds-base/ldap/servers/slapd/libglobs.c:8107:9: warning: implicit
declaration of function 'mallopt' [-Wimplicit-function-declaration]
mallopt(M_MXFAST, mxfast);
^~~~~~~
../389-ds-base/ldap/servers/slapd/libglobs.c:8107:17: error:
'M_MXFAST' undeclared (first use in this function)
mallopt(M_MXFAST, mxfast);
^~~~~~~~
../389-ds-base/ldap/servers/slapd/libglobs.c:8107:17: note: each
undeclared identifier is reported only once for each function it
appears in
../389-ds-base/ldap/servers/slapd/libglobs.c: In function
'config_set_malloc_trim_threshold':
../389-ds-base/ldap/servers/slapd/libglobs.c:8147:17: error:
'M_TRIM_THRESHOLD' undeclared (first use in this function)
mallopt(M_TRIM_THRESHOLD, trim_threshold);
^~~~~~~~~~~~~~~~
../389-ds-base/ldap/servers/slapd/libglobs.c: In function
'config_set_malloc_mmap_threshold':
../389-ds-base/ldap/servers/slapd/libglobs.c:8194:17: error:
'M_MMAP_THRESHOLD' undeclared (first use in this function)
mallopt(M_MMAP_THRESHOLD, mmap_threshold);
^~~~~~~~~~~~~~~~
make[1]: *** [Makefile:9925: ldap/servers/slapd/libslapd_la-libglobs.lo] Error 1
make[1]: Leaving directory '/BUILD'
make: *** [Makefile:4491: all] Error 2
I'm using the attached Dockerfile to conduct the build. Not sure what
other info you might find relevant, but please let me know if there's
more I can provide, or if I should ask on a different list.
Is there a way around this?
Thanks much,
Brian
5 years, 5 months