[CDRIVER-447] _sasl_client_done() not found on Yosemite Created: 25/Oct/14  Updated: 31/Oct/14  Resolved: 31/Oct/14

Status: Closed
Project: C Driver
Component/s: None
Affects Version/s: 1.0.2
Fix Version/s: 1.1.0

Type: Bug Priority: Major - P3
Reporter: Tyler Brock Assignee: Mira Carey
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Mac OS X 10.10 (Yosemite)



 Description   

Building on yosemite:

Making all in src/libbson
make[1]: Nothing to be done for `all'.
  CCLD     libmongoc-1.0.la
clang: warning: argument unused during compilation: '-pthread'
Undefined symbols for architecture x86_64:
  "_sasl_client_done", referenced from:
      __mongoc_sasl_destroy in libmongoc_1_0_la-mongoc-sasl.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [libmongoc-1.0.la] Error 1
make: *** [all-recursive] Error 1

Current workaround is to build without sasl support:

$ ./configure --enable-sasl=no

/usr/include/sasl/sasl.h on Yosemite indicates the version is 2.1.26. mongoc-sasl.c thinks that this should include sasl_client_done() but apparently it does not:

#if (SASL_VERSION_MAJOR >= 2) && \
    (SASL_VERSION_MINOR >= 1) && \
    (SASL_VERSION_STEP >= 24)
   sasl_client_done ();
#endif



 Comments   
Comment by Mira Carey [ 31/Oct/14 ]

I haven't really solved this, just avoid using sasl_client_done on yosemite despite the reported cyrus sasl version of 2.1.26.

We should take the ifdef _APPLE_ out whenever that get's fixed in os x

Generated at Wed Feb 07 21:09:31 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.