I need a suggestion. I've had several instances in which I built the Linphone SDK with nearly everything enabled and ended up with missing libraries after compiling the SDK. No messages are standing out as a red flag.
For example: executing this command at the command line:
./prepare.py -lf
Yields these results:
NFO: Here are available features:
ENABLE_OPENH264=OFF
ENABLE_AMRNB=OFF
ENABLE_H263=OFF
ENABLE_RTP_MAP_ALWAYS_IN_SDP=OFF
ENABLE_BV16=OFF
ENABLE_PACKAGING=OFF
ENABLE_AMRWB=OFF
ENABLE_DTLS=ON
ENABLE_GSM=ON
ENABLE_DEBUG_LOGS=OFF
ENABLE_MBEDTLS=ON
ENABLE_GPL_THIRD_PARTIES=ON
ENABLE_ILBC=ON
ENABLE_OPUS=ON
ENABLE_DOC=ON
ENABLE_ISAC=ON
ENABLE_SRTP=ON
ENABLE_G729=OFF
ENABLE_VCARD=OFF
ENABLE_AMR=OFF
ENABLE_SILK=ON
ENABLE_X264=OFF
ENABLE_H263P=OFF
ENABLE_VIDEO=ON
ENABLE_PCAP=OFF
ENABLE_POLARSSL=OFF
ENABLE_FFMPEG=ON
ENABLE_UNIT_TESTS=ON
ENABLE_NON_FREE_CODECS=OFF
ENABLE_ZRTP=ON
ENABLE_CODEC2=OFF
ENABLE_WEBRTC_AEC=OFF
ENABLE_MKV=ON
ENABLE_TUNNEL=OFF
ENABLE_VPX=ON
ENABLE_SPEEX=ON
ENABLE_NLS=ON
ENABLE_MPEG4=OFF
In my case, I decided to prepare for all available platforms, and enable everything except the TUNNEL feature:
./prepare.py all -f -DENABLE_AMRNB=ON -DENABLE_AMRWB=ON -DENABLE_BV16=ON -DENABLE_CODEC2=ON -DENABLE_DEBUG_LOGS=ON -DENABLE_DOC=ON -DENABLE_DTLS=ON -DENABLE_FFMPEG=ON -DENABLE_G729=ON -DENABLE_GPL_THIRD_PARTIES=ON -DENABLE_GSM=ON -DENABLE_H263=ON -DENABLE_H263P=ON -DENABLE_ILBC=ON -DENABLE_ISAC=ON -DENABLE_MBEDTLS=ON -DENABLE_MKV=ON -DENABLE_MPEG4=ON -DENABLE_NLS=ON -DENABLE_NON_FREE_CODECS=ON -DENABLE_OPENH264=ON -DENABLE_OPUS=ON -DENABLE_PACKAGING=ON -DENABLE_PCAP=ON -DENABLE_POLARSSL=ON -DENABLE_RTP_MAP_ALWAYS_IN_SDP=ON -DENABLE_SILK=ON -DENABLE_SPEEX=ON -DENABLE_SRTP=ON -DENABLE_TUNNEL=OFF -DENABLE_UNIT_TESTS=OFF -DENABLE_VCARD=ON -DENABLE_VIDEO=ON -DENABLE_VPX=ON -DENABLE_WEBRTC_AEC=OFF -DENABLE_X264=ON -DENABLE_ZRTP=ON
Then I ran:
make all
After completion, I opened the corresponding iOS project and several critical libraries failed to be generated, in particular:
libbcg729a
libmswebrtc.a
libxml2.dylib
libiconv.dylib
libz.dylib
liblinphone.a
libmediastreamer_base.a
libmediastreamer_voip.a
...
other missing libraries that are giving me grief.
The corresponding submodules are present (e.g. bcg729, msopenh264, linphone/mediastreamer2, etc.)
Does anyone have a possible explanation as to what causes prevented a few of these key libraries from being generated, and possible suggestions for solutions?
I saw in the build and prepare logs that I had configuration issues and missing executables on my computer that prevented successful builds of core linphone. In particular, one of those libtools executables were missing. I went ahead, saved myself any more trouble and downloaded the latest archive from http://www.linphone.org/. The apple-darwin directory was my problem: it didn't even exist. Once that directory and its contents were present, it didn't really matter which features I enable / disable during the build.