2016-11-02 3 views
-1

私はQT Creatorを使ってアプリケーションを開発しています。 QTCでコードを実行するとプログラムがクラッシュするので、プログラムの実行可能ファイルのパスに行きます。実行しようとすると、「libname.dllがコンピュータにないためにプログラムを開始できません」というメッセージが表示されます。 libname.dllが存在しないため、libname.libは存在しますが、これは奇妙です。適切なライブラリリンク時に私のアプリの.PROファイルで .dllがないのでC++プログラムを起動できませんが、.libを探しているはずです

は、以下の行が自動的に挿入された:私はqmakeのファイルに目を通し

unix:!macx|win32: LIBS += -L$$PWD/../../libname/lib/ -luhd 

    win32:!win32-g++: PRE_TARGETDEPS += $$PWD/../../libname/lib/uhd.lib 
    else:unix:!macx|win32-g++: PRE_TARGETDEPS += $$PWD/../../libname/lib/libuhd.a 

をしてlibname.dllの言及そうではありません私はここで行方不明になることがありますか?

+1

のためにやったのと同じ方法を探しますそれは対応するDLLを読み込もうとします。 – MrEricSir

+0

QmakeはWindows上でも 'LIBS + = L $$ PWD /../../ libname/lib/-luhd'を扱うことができます。 – rubenvb

+0

DLLを必要とするか、スタンドアロンライブラリが必要です。あなたはどちらも持っていないようです。 –

答えて

-1

ライブラリを.dllとしてコンパイルする必要があります。

Windowsプログラムは.dllに依存しますが、Linuxは.libに依存します。あなたの問題は、Windowsの実行可能ファイルでLinuxライブラリファイルを使用しようとしていることです。

、その後、あなたの実行ファイルに次のことを入れて、Windowsのコンパイラ(MSVC/MinGWの)を使用して、あなたのライブラリーの.dllを構築/ .libファイルがインポートされる場合は、QtのDLLを

関連する問題