Sourcery for Windows をインストールし、makefile を準備したところ、次のようなエラーが発生しました。
undefined reference to dlopen
「-ldl」を追加すると問題が解決しました。また、Ubuntu で同じアプリをビルドしたいと考えています。同じメイクファイルですが、コンパイラは異なります。「arm-linux-gnueabi-g++-4.6」に設定します。同じエラーが発生しました。おそらくUbuntuでは、arm libの代わりにx86を使用しています。そこで、「-ldl」パラメーターを削除して追加しました。
/usr/arm-linux-gnueabi/lib/libdl.a
ソースの後 - それでも同じ問題。したがって、.so ファイルも追加する必要があるかもしれません。
/usr/arm-linux-gnueabi/lib/libdl.so
役に立ちませんでした。何か案は?多分私は別のlibを使うべきですか?
Make ファイルは次のようになります。
CXX = arm-linux-gnueabi-g++-4.6
SOURCES = file.cpp
LIB = ##
SOLIB = ##
CFLAGS = ##
LFLAGS = -lrt
#-ldl #commented to add the paths manually
SOFLAGS = ##
test: $(SOURCES)
$(CXX) $(CFLAGS) $(SOURCES) $(LFLAGS) /usr/arm-linux-gnueabi/lib/libdl.a /usr/arm-linux-gnueabi/lib/libdl.so $(SOFLAGS) -o test