[FFmpeg-devel] Changes to configure for NDI SDK 3 on macOS

Pranav Nutalapati pranavnutalapati at gmail.com
Sat Feb 16 18:36:59 EET 2019

I’ve been trying to compile ffmpeg with NDI support on macOS and kept on running into the error

    ld: library not found for -lndi

when compiling. Having no experience with compiling things or C in general, I poked around and tried various different things. However, the issue turned out to be that under the configure file, both libndi_newtek_indev_extralibs and libndi_newtek_outdev_extralibs had the option “-lndi” when in fact, this library didn’t exist!

Under /usr/local, I did find libndi.3.dylib. Changing “-lndi” to “-lndi.3”, ffmpeg compiled and I’ve tested both input and output over an NDI stream. I was going to commit the changes to configure but then I noticed that while macOS used “libndi.3.dylib”, the NDI SDK for Linux still used the name “libndi.so”, meaning that I can’t change “-lndi” to “-lndi.3” without breaking Linux support and causing the same issue for them.

Since I have no experience using ld or configure or make, I wanted to ask, is there a way to change what is being loaded based on the platform, rather than being the same for both?


More information about the ffmpeg-devel mailing list