问题
I was trying to install phonetisaurus. In the classical steps of configure, make, make install. I was stuck on make, where it produced this error. I have googled a lot, and many suggested appending -ldl at the back, but as you can see below, it's already there.
make[3]: Entering directory `/opt/openfst-1.3.4/src/bin'
g++ -DHAVE_CONFIG_H -I./../include -I./../script -g -O2 -MT fstarcsort.o -MD -MP -MF .deps/fstarcsort.Tpo -c -o fstarcsort.o fstarcsort.cc
mv -f .deps/fstarcsort.Tpo .deps/fstarcsort.Po
/bin/bash ../../libtool --tag=CXX --mode=link g++ -g -O2 -o fstarcsort fstarcsort.o ../script/libfstscript.la ../lib/libfst.la -lm -ldl
libtool: link: g++ -g -O2 -o .libs/fstarcsort fstarcsort.o ../script/.libs/libfstscript.so ../lib/.libs/libfst.so -lm -ldl
../script/.libs/libfstscript.so: undefined reference to `dlopen'
../script/.libs/libfstscript.so: undefined reference to `dlerror'
I totally have no idea what this meant, and please help
回答1:
Sometimes changing the order of the -ldl switch fixes the error.
来源:https://stackoverflow.com/questions/20787117/undefined-reference-to-dlopen-in-installing-phonetisaurus