[asterisk-users] Voicemail IMAP ./configure error
Mark Michelson
mmichelson at digium.com
Thu Nov 13 18:48:33 CST 2008
c james wrote:
> Mark Michelson wrote:
>> c james wrote:
>>> Mark Michelson wrote:
>>>> c james wrote:
>>>>> Mark Michelson wrote:
>>>>>> c james wrote:
>>>>>>> I have c-client installed on a 64bit system running Gentoo. I am trying
>>>>>>> to run configure so I can test the IMAP voicemail functionality. But
>>>>>>>
>>>>>>> asterisk-1.4.22 # ./configure --with-imap=/usr/include/imap
>>>>>>>
>>>>>>> just gives me the following error.
>>>>>>>
>>>>>>> checking for gnutls_bye in -lgnutls... no
>>>>>>> checking for UW IMAP Toolkit c-client library... no
>>>>>>> checking for system c-client library...... no
>>>>>>> configure: ***
>>>>>>> configure: *** The UW IMAP Toolkit installation on this system appears
>>>>>>> to be broken.
>>>>>>> configure: *** Either correct the installation, or run configure
>>>>>>> configure: *** including --without-imap.
>>>>>>>
>>>>>>> c-client is installed.
>>>>>>>
>>>>>>> voicemail1 asterisk-1.4.22 # equery files c-client
>>>>>>> [ Searching for packages matching c-client... ]
>>>>>>> * Contents of net-libs/c-client-2006k:
>>>>>>> /usr/include/imap/c-client.h
>>>>>>> ... bunch of others
>>>>>>> /usr/include/imap/utf8aux.h
>>>>>>> /usr/lib64/c-client.a
>>>>>>> /usr/lib64/libc-client.a -> c-client.a
>>>>>>> /usr/lib64/libc-client.so.1.0.0
>>>>>>>
>>>>>> Interesting output there.
>>>>>>
>>>>>> If you specify "--with-imap=/usr/src/imap" then that means that the source for
>>>>>> the imap toolkit is located at /usr/src/imap. It appears though, that only the
>>>>>> c-client source is located there (or perhaps just the headers), and that causes
>>>>>> the configure script to fail. If you specify just "--with-imap" with no argument
>>>>>> or "--with-imap=system" then the configure script will try to find the c-client
>>>>>> library and include files in common places where distributions tend to install them.
>>>>>>
>>>>>> I'm guessing, though, that you did not download and compile the imap toolkit
>>>>>> yourself and that you had Gentoo do it for you. The installation directory for
>>>>>> the headers is different than where most distros place them. Most put the
>>>>>> c-client header files in /usr/include/c-client instead of /usr/include/imap.
>>>>>>
>>>>>> My suggestions for possible fixes are
>>>>>>
>>>>>> 1) Try reconfiguring with just --with-imap or with --with-imap=system instead of
>>>>>> specifying a directory. I'm suspecting this will not work properly because of
>>>>>> the directory where the header files are, though.
>>>>>>
>>>>>> 2) If step 1 fails like I think it will, then try moving the .h files from
>>>>>> /usr/include/imap to /usr/include/c-client and rerun the configure script
>>>>>> --with-imap and see if that helps. I suspect this will work. If it does, I can
>>>>>> modify the configure script so that we search in the imap/ directory as well as
>>>>>> the c-client directory for header files.
>>>>>>
>>>>>> If things still fail after those two steps, then respond with the section from
>>>>>> the config.log file which displays the failure that occurred when searching for
>>>>>> imap support.
>>>>>>
>>>>>> Mark Michelson
>>>>>>
>>>>>>
>>>>> You are correct, c-client was installed through the Gentoo portage
>>>>> command of
>>>>>
>>>>> emerge c-client
>>>>>
>>>>> Neither of the two suggestions worked. Here is the relevant output from
>>>>> config.log
>>>>>
>>>>> configure:18552: checking for UW IMAP Toolkit c-client library
>>>>> configure:18630: gcc -o conftest -g -O2
>>>>> -I/usr/src/asterisk-1.4.22/../imap-2004g/c-client conftest.c
>>>>> /usr/src/asterisk-1.4.22/../imap-2004g/c-client/c-client.a >&5
>>>>> gcc: /usr/src/asterisk-1.4.22/../imap-2004g/c-client/c-client.a: No such
>>>>> file or directory
>>>>> conftest.c:145:22: error: c-client.h: No such file or directory
>>>>>
>>>> Yuck. That check for the imap-2004g directory bugs me. It's not anything you've
>>>> done, but a seemingly arbitrary decision that was made when the original IMAP
>>>> support was merged. The thing is, if a working IMAP installation is not found in
>>>> that imap-2004g directory, the configure script is supposed to be "smart" enough
>>>> to try to switch to the system-installed c-client library instead. Was there any
>>>> further output down below what you have shown me that mentions something like
>>>> "Checking for system c-client library...?" If so, could you post the config.log
>>>> output from that section?
>>>>
>>>> Mark Michelson
>>>>
>>> I attached the entire config.log
>> I took a look through the log, and it appears that the test program which is
>> used to verify a working imap installation is failing in ssl-related functions
>> in the c-client library. Perhaps you have a missing openssl dependency?
>>
>> Mark Michelson
>>
> c-client is built with SSL support. I would like to debug this further,
> but I'm not familiar with autoconf. The line
>
> configure:19034: gcc -o conftest -g -O2 -DUSE_SYSTEM_IMAP conftest.c
> -lc-client >&5
>
> appears to be building conftest.c a file I can't find. I imagine this
> is generated on the fly. Is there a way to capture that file so I can
> examine what it's problems are?
>
You are correct that conftest.c is a file which is generated on the fly.
config.log should print the errors generated when trying to compile the test
program as well as the actual program text below.
Mark Michelson
More information about the asterisk-users
mailing list