2017-05-23 23 views
0

先週、ToradexのAsterキャリアボードで、新しいColibri VF61を受け取りました。 Qt hereでクロスコンパイルするための準備方法については、Toradexのガイドに従っています。 libQt5PrintSupport:共有ライブラリのロード中にクロスコンパイルqt:共有ライブラリの読み込み中にエラーが発生しました。

エラー:私は、次のメッセージが表示されますので、私は私のターゲットデバイス上で実行可能ファイルを開くまでtuturialから

すべてが完璧に行ってきました、しかし、私は私のアプリと、すべてを展開しようとした細かい行きます.so.5:私は、私は全くの私のターゲットデバイス内の任意のQtファイルを持っていたかどうかを確認するために行った、と私は私のsysrootに行ってきましたがなかったようなファイルやディレクトリ

ません:共有オブジェクトファイルを開くことができません。私のホストデバイスのフォルダにコピーして、すべてのQtファイルをターゲットデバイスにコピーしました(Qt5PrintSupportはそこにありました)しかし、私はすべてのファイルを同じ場所にコピーした後、私のsysrootのどこに同じエラーが表示されたままになっています。

私はコピーしたファイルは以下の通りであった。

なlibical Qt5Core Qt5OpenGLExtensions Qt5Svg のPulseAudio Qt5DBus Qt5Positioning Qt5SystemInfo Qt5 Qt5Declarative Qt5PrintSupport Qt5Test Qt53DCore Qt5Designer Qt5PublishSubscribe Qt5UiPlugin Qt53DExtras Qt5Enginio Qt5Qml Qt5UiTools Qt53DInput Qt5Gui Qt5Quick Qt5WebChannel Qt53DLogic Qt5Help Qt5QuickTest Qt5WebKit Qt5DQuickWindgets 210 Qt53DQuickExtras Qt5Location Qt5Script Qt5WebSockets Qt53DQuickInput Qt5Multimedia Qt5ScriptTools Qt5Widgets Qt53DQuickRender Qt5MultimediaWidgets Qt5Sensors Qt5X11Extras Qt53DRender Qt5Network Qt5SerialPort Qt5Xml Qt5Bluetooth Qt5Nfc Qt5ServiceFramework Qt5XmlPatterns Qt5Concurrent Qt5OpenGL Qt5Sql libxml2の

インサイドは/ usr/libに/ cmakeの

と:

輸入のlibexec mkspecsプラグインQML

フォルダを/ usr/libに/ qt5

私はこの問題は、私はしかし、 "LIB" 内のフォルダは/ usr/libに/ qt5持っていけないということであってもよいことに気づきましたそれが私のsysrootになかったので、それを作る方法を知らない。

集計:クロスコンパイルでアプリケーションを実行したいが、libフォルダが見つからず、リンクを作成する方法やリンクする方法がわからない。

+0

ノートの場所にRPATH変数を設定しました別のインストールパスに移動することができます。ビルドシステムで使用するフォルダは、ターゲット上で使用するフォルダでなければなりません。 –

答えて

0

アプリを使用して同じパスにライブラリを持っていても、必ずしもアプリがそれを見つけることができるわけではありません。以下のいずれかの方法に従ってください。

  • システムの標準のlibディレクトリに必要なQTライブラリをインストールします(例えば。は/ usr/libに/)
  • は、あなたのQTライブラリが存在する場合には、環境変数LD_LIBRARY_PATHを設定します。条約は、一般的にアプリを起動し、それを設定するbashスクリプトを有するもの)や、コンパイル時には
  • され、あなたはQtのビルドができないことをQTライブラリフォルダ(GCC用-rpath)
+0

問題は 'LD_LIBRARY_PATH'をリンクするlibフォルダがないことです。私はそのフォルダを構築する必要があり、どのようにするのか分からない。 –

+0

あなたが見逃しているのは、 "mkdir/usr/lib"でしょうか? (/ usrが存在する場合)。/usrが存在しない場合は、その前に "mkdir/usr"を付けます。ライブラリファイルをコピーしてください。 – Mark

関連する問題