プログラミングに関する私的メモ

Qt

最終更新:

gen3

- view
だれでも歓迎! 編集

QtでLMMSをコンパイルする

(リストは横に長すぎるので適当に改行挿入)

QtでLMMSのプロジェクトを開く

Qt creatorを起動する。
「ファイル/プロジェクトを開く..」メニューからLMMSのCMakeList.txtを選択する。
CMakeのダイアログが開く。
LMMSのビルド先フォルダの指定をする。(C:\ProgDat\Git\lmms_build)
CMakeのオプションを指定する。ドロップダウンからMinGWを選択。
OK押すと、CMakeが始まる。

LMMSのプロジェクトを設定する

プロジェクトの環境変数に、Qt内のmingwツールのパスを追加する。(C:\Qt\2010.05\mingw\bin)


ビルドする

Qt creator のコンパイル出力は次の通り。
[ 27%] Generating lmmsrc.obj
IC:\ProgDat\Git\lmms -oC:/ProgDat/Git/lmms_build/lmmsrc.obj
  -iC:/ProgDat/Git/lmms_build/lmms.rc
Linking CXX executable lmms.exe
"C:\Program Files\CMake 2.8\bin\cmake.exe" -E cmake_link_script
  CMakeFiles\lmms.dir\link.txt --verbose=1
process_begin: CreateProcess(NULL, IC:\ProgDat\Git\lmms
  -oC:/ProgDat/Git/lmms_build/lmmsrc.obj
  -iC:/ProgDat/Git/lmms_build/lmms.rc, ...) failed.
make (e=2): 指定されたファイルが見つかりません。
生成されている MakeFile のリンク時点で、プログラムが指定されていない(2行目, IC:で始まっている行)。
autoconfの元ファイルの時点で何かあるように思われる。調べると次のmakeファイルが怪しい。
C:\ProgDat\Git\lmms_build\CMakeFiles\lmms.dir\build.make
の 4473行以降で
lmmsrc.obj: lmms.rc
        $(CMAKE_COMMAND) -E cmake_progress_report
            C:\ProgDat\Git\lmms_build\CMakeFiles $(CMAKE_PROGRESS_330)
        @$(CMAKE_COMMAND) -E echo "Generating lmmsrc.obj"
           -IC:\ProgDat\Git\lmms -oC:/ProgDat/Git/lmms_build/lmmsrc.obj
           -iC:/ProgDat/Git/lmms_build/lmms.rc
これを調べると欠けているのはwindres.exeの様なのでこれを手動でコマンドラインで実行。再度Qtをビルドすると続きからはじめるはず。
またエラー。
C:\ProgDat\Git\lmms_build\CMakeFiles\lmms.dir\link.txt
の中身が\と/が混在して、二重に指定されているライブラリがあったりしてので、よぶんを削除しこれを/に統一して、再度手動でsh上で直接実行してみた。
/C/Qt/2010.05/mingw/bin/g++.exe  -O2 -g -fno-exceptions -Wall  -Wno-attributes
  -mwindows -Wl,--whole-archive
  /c/ProgDat/Git/lmms_build/CMakeFiles/lmms.dir/objects.a -Wl,--no-whole-archive
  -o lmms.exe -Wl,--out-implib,liblmms.dll.a
  -Wl,--major-image-version,0,--minor-image-version,0
  -L"/C/Program Files/lmms/lib" -lpthread /C/Qt/2010.05/qt/lib/libQtGui4.a
  /C/Qt/2010.05/qt/lib/libQtXml4.a /C/Qt/2010.05/qt/lib/libQtCore4.a
  -lmingw32 /C/MinGW/msys/1.0/local/bin/SDL.dll -lportaudio -lwinmm -lm -lstdc++
  -lole32 -luuid -lsndfile  -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32
  -loleaut32 -lcomdlg32 -ladvapi32
再度Qtでビルドした結果
c:/qt/2010.05/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe:
<unknown-file>:0: syntax error
Warning: .drectve `-export:T.680 ' unrecognized
となり、それまでのコンパイルにまだ問題がある模様。参照が足りない様子のなで足りないモジュールとかあるか。

つづく。


タグ:

LMMS Qt
+ タグ編集
  • タグ:
  • LMMS
  • Qt

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

目安箱バナー