binutils ld バージョン 2.21 を使用して、Windows で小さな DLL (1 つの入力ファイルのみ) をリンクしようとしています。dllexport
オブジェクト ファイルでマークされているすべてのシンボルに対して、次のエラーが発生します。
Cannot export <symbol name>: symbol not found
これについて何ができますか?問題のシンボルが存在し、静的ではないことを nm のアプリケーションで確認しましたが、まだエラーが発生しています。オブジェクトファイルの削除と再構築も試みました。役に立ちませんでした。問題はリンクラインに関係していると思われます。記録のために、ここにそれがあります:
clang++ -fPIC -Wl,--dll,--compat-implib,--nxcompat,--dynamicbase -shared \
-o pthread.dll pthread.o -lkernel32 -lmsvcrt
私は何を間違っていますか?