2017-12-10 15 views
0

qftpをインストールしようとしていますが、実際には動作しません。私は最初にギブスで源を回復した。その後、ソースをQtのsrcフォルダにコピーし、 "qtftp"フォルダの名前を変更し、Perl syncqt.plファイルを実行してヘッダなどを生成しました。それから私はqメイクをして、メイクをしました。Qt 5.6.0でqtftpモジュールをインストールする

次に、qtftpインクルードフォルダで作成したQFtpフォルダをQtインクルードフォルダにコピーしました。私のプロジェクトの.proファイルでは、qtftpフォルダに作成されたqt_ftp.priファイルをインクルードし、QT + = ftpを追加しました。私はqmakeをやった、すべてが大丈夫です。 #includeはエラーを出力しません。

自己完結型でQftpのニッケルが完成しました。しかし、私のプロジェクトをコンパイルするときに、タイプが "Qqft :: qftp(Qobject *)"への未定義参照のエラーがあります。私は立ち往生した、私は何をすべきかわからない。

答えて

0

解決策が見つかりました。ファイルの最初の行に "include(.. \ mkspecs \ modules \ qt_lib_ftp.pri)"を入れて、\ modulesフォルダにあるqt_ftp.priファイルを変更するだけでした。

0

undefined reference to 'Qqft :: qftp (Qobject *)は、何らかの理由でリンカーがあなたのコードで作成したqftpへの関数呼び出しを解決できないことを意味します。

  • QT += ftpを追加しても、QMakeがQFTP-LibraryをMakefileのリンカー呼び出しに追加することはありません。 libqftp.so(またはWindowsを使用している場合:qftp.dll)などがある場合は、メイクファイルをご覧ください。
  • qftpの呼び出しが自分のコードからではなく、使用している他のライブラリから来ている場合は、リンカー呼び出しのライブラリの順序が間違っている可能性があります。リンカーがライブラリA内の未解決のシンボルを見つけた場合は、リンカー呼び出しで Aの後にと書かれたライブラリでのみ未解決のシンボルを探します。このような場合は、qmakeによって生成されたリンカー呼び出しでライブラリの順序を変更する方法を調べる必要があります。
+0

しかし、問題は解決しない。モジュールを正しくインストールしなかったのかどうか、私は分かりません。 –

関連する問題