basket note를 make하는데 에러가 났습니다
글쓴이: semjase / 작성시간: 월, 2018/11/05 - 11:34오전
xubuntu 18.04 사용중입니다.
소프트웨어센터에 있는 basket note가 너무 옛날거라 최신버젼 소스를 받아서 컴파일중입니다.
(ver 2.10 -> ver 2.49)
설치문서에 이렇게 되어있습니다.
mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=`kf5-config --prefix` -DQT_PLUGIN_INSTALL_DIR=`qtpaths --plugin-dir` .. make # make install
cmake 까지는 온갖 삽질하다 모든에러 다 수정해서 통과했습니다
make에서 에러가 나는데요..
make [ 1%] Built target doc-en-index-cache-bz2 [ 3%] Automatic MOC for target basketcommon [ 3%] Built target basketcommon_autogen [ 66%] Built target basketcommon [ 68%] Automatic MOC for target basket [ 68%] Built target basket_autogen [ 70%] Linking CXX executable basket //usr/lib/x86_64-linux-gnu/libKF5Declarative.so.5: undefined reference to `QQmlPropertyMap::init(QMetaObject const*)@Qt_5' //usr/lib/x86_64-linux-gnu/libKF5Declarative.so.5: undefined reference to `QQmlPropertyMap::allocatePrivate()@Qt_5' collect2: error: ld returned 1 exit status src/CMakeFiles/basket.dir/build.make:177: recipe for target 'src/basket' failed make[2]: *** [src/basket] Error 1 CMakeFiles/Makefile2:200: recipe for target 'src/CMakeFiles/basket.dir/all' failed make[1]: *** [src/CMakeFiles/basket.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2
여기서 더이상 진행이 안됩니다. ㅠㅠ
부디 고수님들 도움 좀 부탁드립니다.
Forums:
Qt 5 버전이 어떻게 되시나요?
Qt 5.9 버전 이상의 QML 패키지를 설치해주시면 좋을 것 같습니다. QQmlPropertyMap 클래스 선언이 정의되지 않았다고 되는 것을 보면, Qt 라이브러리 패키지 중 QML 패키지가 설치되지 않은 것 같습니다.
https://packages.ubuntu.com/bionic/qml
참고하시고, 패키지 설치해보신 후 진행해보시기 바랍니다.
답변 감사합니다
qt는 가장 최근버젼이구요. 3일전에 qt홈페이지에 가서 깔았습니다.
qml이 깔려있는지 검색해봤습니다.
sudo find / -name "qtqml*"
아래처럼 나오는데 깔려있는거 아닌지요?
.
qml module...
sudo apt install qml-module*
이렇게해서 qml로 시작하는 모든거 다 깔았는데 변함이 없네요. ㅠㅠ
.
뜨헛... 이렇게 설치하시면 libKF5declarative.so.5 가 라이브러리를 찾을 수 없습니다...
질문 상태에서의 오류는 libKF5declarative.so.5 에서 qml 파일을 찾을 수 없어서 생기는 문제입니다.
본래 컴파일 하던 환경의 패키지를 설치하셔야 하는데, QML 패키지만 별도로 있지는 않습니다.
qmlscene 이라는 패키지를 설치하셔서 설치 의존성을 통해 QML 패키지를 설치하도록 유도하시는 것이 좋을 것 같습니다.
https://pkgs.org/download/qmlscene
댓글 달기