kword fails to compile, with this error: [ 97%] Building CXX object filters/kword/msword-odf/CMakeFiles/mswordodf_import.dir/document.o In file included from /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:33: /usr/include/wv2/styles.h:22:30: error: word97_generated.h: No such file or directory Reproducible: Always Steps to Reproduce: 1.emerge --update world 2. 3. Actual Results: [ 97%] Building CXX object filters/kword/msword-odf/CMakeFiles/mswordodf_import.dir/document.o In file included from /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:33: /usr/include/wv2/styles.h:22:30: error: word97_generated.h: No such file or directory In file included from /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:24: /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/conversion.h: In function 'QConstString Conversion::string(const wvWare::UString&)': /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/conversion.h:48: warning: 'QConstString::QConstString(const QChar*, int)' is deprecated (declared at /usr/include/qt4/QtCore/qstring.h:1070) /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h: In constructor 'Document::Document(const std::string&, KoFilterChain*, KoXmlWriter*, KoGenStyles*, KoXmlWriter*, KoStore*, KoXmlWriter*)': /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:157: warning: 'Document::m_headerCount' will be initialized after /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:153: warning: 'bool Document::m_hasHeader' /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:48: warning: when initialized here /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:154: warning: 'Document::m_hasFooter' will be initialized after /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:135: warning: 'KoFilterChain* Document::m_chain' /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:48: warning: when initialized here /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:146: warning: 'Document::m_currentListDepth' will be initialized after /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:142: warning: 'bool Document::m_evenOpen' /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:48: warning: when initialized here /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:151: warning: 'Document::m_pageLayoutStyle' will be initialized after /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.h:136: warning: 'wvWare::SharedPtr<wvWare::Parser> Document::m_parser' /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:48: warning: when initialized here /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp: In member function 'void Document::finishDocument()': /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:125: warning: unused variable 'dop' /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp: In member function 'void Document::processAssociatedStrings()': /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:189: warning: 'const QString& QConstString::string() const' is deprecated (declared at /usr/include/qt4/QtCore/qstring.h:1072) /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:194: warning: 'const QString& QConstString::string() const' is deprecated (declared at /usr/include/qt4/QtCore/qstring.h:1072) /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:199: warning: 'const QString& QConstString::string() const' is deprecated (declared at /usr/include/qt4/QtCore/qstring.h:1072) /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:204: warning: 'const QString& QConstString::string() const' is deprecated (declared at /usr/include/qt4/QtCore/qstring.h:1072) /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp: In member function 'void Document::processStyles()': /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:232: warning: name lookup of 'i' changed /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:218: warning: matches this 'i' under ISO standard rules /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:226: warning: matches this 'i' under old rules /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/document.cpp:232: warning: 'const QString& QConstString::string() const' is deprecated (declared at /usr/include/qt4/QtCore/qstring.h:1072) make[2]: *** [filters/kword/msword-odf/CMakeFiles/mswordodf_import.dir/document.o] Error 1 make[1]: *** [filters/kword/msword-odf/CMakeFiles/mswordodf_import.dir/all] Error 2 make: *** [all] Error 2 * * ERROR: app-office/kword-2.0.2 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3951: Called kde4-meta_src_compile * environment, line 3069: Called kde4-base_src_compile * environment, line 2762: Called cmake-utils_src_compile * environment, line 993: Called cmake-utils_src_make * environment, line 1073: Called die * The specific snippet of code: * emake "$@" || die "Make failed!"; * The die message: * Make failed! * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-office/kword-2.0.2/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-office/kword-2.0.2/temp/environment'. * >>> Failed to emerge app-office/kword-2.0.2, Log file: >>> '/var/tmp/portage/app-office/kword-2.0.2/temp/build.log' * Messages for package app-office/kword-2.0.2: * * ERROR: app-office/kword-2.0.2 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3951: Called kde4-meta_src_compile * environment, line 3069: Called kde4-base_src_compile * environment, line 2762: Called cmake-utils_src_compile * environment, line 993: Called cmake-utils_src_make * environment, line 1073: Called die * The specific snippet of code: * emake "$@" || die "Make failed!"; * The die message: * Make failed! * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/app-office/kword-2.0.2/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-office/kword-2.0.2/temp/environment'. * * revdep-rebuild failed to emerge all packages. * you have the following choices: * - If emerge failed during the build, fix the problems and re-run revdep-rebuild. * - Use /etc/portage/package.keywords to unmask a newer version of the package. * (and remove 5_order.rr to be evaluated again) * - Modify the above emerge command and run it manually. * - Compile or unmerge unsatisfied packages manually, * remove temporary files, and try again. * (you can edit package/ebuild list first) * To remove temporary files, please run: * rm /var/cache/revdep-rebuild/*.rr Expected Results: successful compile / merge
Created attachment 205599 [details] Build log
Created attachment 205600 [details] Emerge info (too big for comment field, had to add as attachment)
I hit this bug as well, the initial build error can be fixed by changing #include <word97_generated.h> to #include "word97_generated.h" in /usr/include/wv2/styles.h, but this leads to a deeper problem which gives the following error: /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/conversion.cpp: In function ‘QString Conversion::setBorderAttributes(const wvWare::Word97::BRC&)’: /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/conversion.cpp:324: error: ‘const struct wvWare::Word97::BRC’ has no member named ‘ico’
(In reply to comment #3) /var/tmp/portage/app-office/kword-2.0.2/work/kword-2.0.2/filters/kword/msword-odf/conversion.cpp:324: > error: ‘const struct wvWare::Word97::BRC’ has no member named ‘ico’ It's gone from the wv2 headers, I believe by this commit: http://wvware.svn.sourceforge.net/viewvc/wvware/wv2-trunk/src/word97_generated.h?r1=2&r2=23 But no worries, KWord devs are matching their code to the trunk of wv (see log message on this entry): http://websvn.kde.org/?view=revision&revision=1011764 Unfortunately they are changing the code a lot. And some of the kword filters' log entries read like the msword-odf converter has been pretty less-than-perfect anyway.
Created attachment 205730 [details, diff] matches the new colour field name in wv2-0.4.0 headers Very experimental patch, as kword folks seemed to use the cv field (wv2-0.4.0) instead of the ico field (wv2-0.3.1) for the colour. Just as the change in wv svn seemed to go. Note: it's just to get the darn thing (kword-2.0.2) compiled on Gentoo. Not sure if it will import anything useful in msword-odf format as I don't currently have a need for such.
(In reply to comment #5) > Note: it's just to get the darn thing (kword-2.0.2) compiled on Gentoo. Not > sure if it will import anything useful in msword-odf format as I don't > currently have a need for such. USE="-wv2" emerge -av1 kword ... works for me (and I think that it should be the default until kword is fixed)
(In reply to comment #6) > (In reply to comment #5) > > Note: it's just to get the darn thing (kword-2.0.2) compiled on Gentoo. Not > > sure if it will import anything useful in msword-odf format as I don't > > currently have a need for such. > > USE="-wv2" emerge -av1 kword > > ... works for me (and I think that it should be the default until kword is > fixed) > I don't find myself using ODF much, or kword either for that matter, but I keep both around in case OpenOffice strands me, or for the occasional bit that kword has and OO has not. In any even, USE="-wv2" works for me, too, to allow me to move past this bug for now. Thanks.
I wont backport the patch. Upstream says that 0.3 is only supported so i adjusted the dep. 2.1 will be using the 0.4 series.
Now we have an up/downgrade-loop (wv2 is not slotted), that's not good either. I'd suggest we mask wv2-0.4.0 for the time being?
Similarly problem bug 287276
(In reply to comment #8) > I wont backport the patch. Upstream says that 0.3 is only supported so i > adjusted the dep. > > 2.1 will be using the 0.4 series. > Closing then