ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

KDEコミュのKDE4がインストールできません。(長文)

  • mixiチェック
  • このエントリーをはてなブックマークに追加
失礼します。

普段は何かあっても絶対質問しない私ですが、さすがにどうにも詰まってしまい解決の目処が立ちませんので、この場を借りて質問させて戴きます。


先月末ころからKDE4のインストールに挑戦しているのですが、どうやっても途中でリンクエラーが発生してしまい、何度やってもうまく行きません。

kdepimlibs を make すると、kcal のところで libkcal.so を作る際に必ず下記のエラーが発生します。

--- 引用開始

Linking CXX shared library ../lib/libkcal.so
CMakeFiles/kcal.dir/resourcelocal.o: In function `KCal::ResourceLocal::qt_metacall(QMetaObject::Call, int, void**)':
/xxx/kdepimlibs-4.0.5/build/kcal/./resourcelocal.moc:60: undefined reference to `KCal::ResourceCached::qt_metacall(QMetaObject::Call, int, void**)'
CMakeFiles/kcal.dir/resourcelocal.o: In function `KCal::ResourceLocal::qt_metacast(char const*)':
/xxx/kdepimlibs-4.0.5/build/kcal/./resourcelocal.moc:55: undefined reference to `KCal::ResourceCached::qt_metacast(char const*)'
CMakeFiles/kcal.dir/resourcelocal.o:(.data.rel.ro+0x0): undefined reference to `KCal::ResourceCached::staticMetaObject'
CMakeFiles/kcal.dir/resourcelocal.o:(.data.rel.ro._ZTIN4KCal13ResourceLocalE[typeinfo for KCal::ResourceLocal]+0x8): undefined reference to `typeinfo for KCal::ResourceCached'
CMakeFiles/kcal.dir/resourcelocaldir.o: In function `KCal::ResourceLocalDir::qt_metacast(char const*)':
/xxx/kdepimlibs-4.0.5/build/kcal/./resourcelocaldir.moc:56: undefined reference to `KCal::ResourceCached::qt_metacast(char const*)'
CMakeFiles/kcal.dir/resourcelocaldir.o: In function `KCal::ResourceLocalDir::qt_metacall(QMetaObject::Call, int, void**)':
/xxx/kdepimlibs-4.0.5/build/kcal/./resourcelocaldir.moc:61: undefined reference to `KCal::ResourceCached::qt_metacall(QMetaObject::Call, int, void**)'
CMakeFiles/kcal.dir/resourcelocaldir.o:(.data.rel.ro+0x0): undefined reference to `KCal::ResourceCached::staticMetaObject'
CMakeFiles/kcal.dir/resourcelocaldir.o:(.data.rel.ro._ZTIN4KCal16ResourceLocalDirE[typeinfo for KCal::ResourceLocalDir]+0x8): undefined reference to `typeinfo for KCal::ResourceCached'
CMakeFiles/kcal.dir/resourcecached.o: In function `~ResourceCached':
/xxx/kdepimlibs-4.0.5/kcal/resourcecached.cpp:105: undefined reference to `vtable for KCal::ResourceCached'
CMakeFiles/kcal.dir/resourcecached.o: In function `ResourceCached':
/xxx/kdepimlibs-4.0.5/kcal/resourcecached.cpp:91: undefined reference to `vtable for KCal::ResourceCached'
CMakeFiles/kcal.dir/resourcecached.o: In function `~ResourceCached':
/xxx/kdepimlibs-4.0.5/kcal/resourcecached.cpp:105: undefined reference to `vtable for KCal::ResourceCached'
/xxx/kdepimlibs-4.0.5/kcal/resourcecached.cpp:105: undefined reference to `vtable for KCal::ResourceCached'
CMakeFiles/kcal.dir/resourcecached.o: In function `ResourceCached':
/xxx/kdepimlibs-4.0.5/kcal/resourcecached.cpp:99: undefined reference to `vtable for KCal::ResourceCached'
CMakeFiles/kcal.dir/resourcecached.o:/xxx/kdepimlibs-4.0.5/kcal/resourcecached.cpp:99: more undefined references to `vtable for KCal::ResourceCached' follow
collect2: ld はステータス 1 で終了しました
make[2]: *** [lib/libkcal.so.4.0.4] エラー 1
make[1]: *** [kcal/CMakeFiles/kcal.dir/all] エラー 2
make: *** [all] エラー 2

--- 引用終了


gcc4のvisibilityという新機能に関係していると思われるのですが、、、
Cなら分かるのですがC++は使ったことがないのでいまいち良く分かりません。
google先生に聞いても、似たようなエラーの例はありましたが原因が違うものばかりで、同一のエラー例は発見できませんでした。

また、試しに上記 kcal をはずして make すると、別の場所(kdebase-workspaceなど)で同様のエラーがでます。

qt_metacall() などのAPIを使用している箇所は山ほどあるのに、なぜか特定のクラスだけ名前解決ができなくなっているようです。。。

環境は、
linux カーネル2.6.25.4
X11 R6.9 (X.org)
toolchainは以下の組み合わせを試しましたが同じでした。
・gcc3.4.6 + binutils2.16
・gcc4.2.4 + binutils2.18

qtは、公式サイトからの4.4と、kde.orgにあったqt-copyの両方を試しましたが同じでした。


以上、みなさまのお知恵を拝借させて戴きたく、よろしくお願いいたします m(__)m

コメント(0)

mixiユーザー
ログインしてコメントしよう!

KDE 更新情報

KDEのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。