View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0015236 | Scribus | Build System | public | 2018-03-31 01:32 | 2019-06-04 20:56 |
Reporter | munzirtaha | Assigned To | jghali | ||
Priority | urgent | Severity | major | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | Linux | OS | Arch Linux | OS Version | latest |
Product Version | 1.5.4.svn | ||||
Fixed in Version | 1.5.4.svn | ||||
Summary | 0015236: Scribus stopped building after update to icu 61.1 | ||||
Description | Compiling scribus from source in Arch Linux fail. Tried makepkg -s and cmake && make munzir@spectre/t/scribus-svn> pacman -Q harfbuzz harfbuzz-icu icu harfbuzz 1.7.6-2 harfbuzz-icu 1.7.6-2 icu 61.1-1 | ||||
Steps To Reproduce | munzir@spectre/t/scribus-svn> makepkg -sri ==> Making package: scribus-svn 22460-1 (Sat Mar 31 04:26:08 +03 2018) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Updating scribus svn repo... Updating '.': At revision 22460. -> Found python2.patch ==> Validating source files with md5sums... scribus ... Skipped python2.patch ... Passed ==> Extracting sources... -> Creating working copy of trunk svn repo... ==> Starting prepare()... patching file Scribus/scribus/plugins/scriptplugin/samples/3columnA4.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/3columnA4.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/3columnUSLTR.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/3columnUSLTR.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/Calender.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/Calender.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/ExtractText.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/ExtractText.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/Sample1.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/Sample1.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/boilerplate.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/boilerplate.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/golden-mean.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/golden-mean.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/legende.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/legende.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/moins_10_pourcent_group.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/moins_10_pourcent_group.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/plus_10_pourcent_group.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/plus_10_pourcent_group.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/pochette_cd.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/pochette_cd.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/quote.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/quote.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/sample_db_usage.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/sample_db_usage.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/trait_de_coupe.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/trait_de_coupe.py.rej patching file Scribus/scribus/plugins/scriptplugin/samples/wordcount.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/samples/wordcount.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/Autoquote.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/Autoquote.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/Autoquote2.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/Autoquote2.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/Caption.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/Caption.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/ColorChart.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/ColorChart.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/DirectImageImport.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/DirectImageImport.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/FontSample.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/FontSample.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/InfoBox.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/Ligatursatz.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/Ligatursatz.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/color2csv.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/color2csv.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/csv2color.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/csv2color.py.rej patching file Scribus/scribus/plugins/scriptplugin/scripts/importcsv2table.py Reversed (or previously applied) patch detected! Skipping patch. 1 out of 1 hunk ignored -- saving rejects to file Scribus/scribus/plugins/scriptplugin/scripts/importcsv2table.py.rej ==> Starting pkgver()... ==> Removing existing $pkgdir/ directory... ==> Starting build()... -- Shared Library Flags: -- Scribus 1.5.4.svn will be built and installed into /usr -- Machine: x86_64-pc-linux-gnu, void pointer size: 8 -- Found target X86_64 -- Building for target x86_64-pc-linux-gnu -- Using standard ApplicationDataDir. You can change it with -DAPPLICATION_DATA_DIR -- Using standard ApplicationConfigDir. You can change it with -DAPPLICATION_CONFIG_DIR -- ----- USE QT 5----- -- ----- USE QT Widgets----- -- ----- USE Qt5Gui ----- -- ----- USE QT 5 XML ----- -- ----- USE Qt5Network ----- -- ----- USE Qt5OpenGL ----- -- ----- USE Qt5LinguistTools ----- -- ----- USE Qt5PrintSupport ----- -- Qt VERSION: 5.10.1 -- Your Qt version is 5.7.0 or superior, enabling C++11 compiler features -- Enabling C++11 compiler features ZLIB Library Found OK OSG found OK JPEG Library Found OK TIFF Library Found OK Python Library Found OK -- FreeType2 Library Found OK CAIRO Library Found OK CUPS Library Found OK LIBXML2 Library Found OK LCMS 2 ReleaseLibrary: /usr/lib/liblcms2.so LCMS 2 Debug Library: LCMS2_LIBRARY_DEBUG-NOTFOUND LCMS 2 Library: /usr/lib/liblcms2.so LittleCMS-2 Library Found OK FontConfig Found OK -- New HUNSPELL API found Hunspell Found OK OpenSSL found OK for installed version of PoDoFo (>= 0.9.5) - Enabling support for PDF embedded in AI PoDoFo found OK -- Boost version: 1.66.0 Boost Library Found OK GraphicksMagick Found OK -- Found poppler -- Found poppler libs: /usr/lib/libpoppler.so -- Found poppler includes: /usr/include/poppler -- SVN Version requested in About dialog -- GMAGICK: Libs: -lGraphicsMagick, Inc: /usr/include/GraphicsMagick, Ldflags: -lGraphicsMagick -- Including OpenSSL files for PoDoFo >= 0.9.5 CMake Deprecation Warning at scribus/CMakeLists.txt:1202 (cmake_policy): The OLD behavior for policy CMP0003 will be removed from a future version of CMake. The cmake-policies(7) manual explains that the OLD behaviors of all policies are deprecated and that a policy should be set to OLD only under specific short-term circumstances. Projects should be ported to the NEW behavior and not rely on setting a policy to OLD. RPATH: lib/scribus/plugins/; -- Qt5::CoreQt5::WidgetsQt5::GuiQt5::XmlQt5::NetworkQt5::OpenGL/usr/lib/libxml2.so/usr/lib/libz.so Building Corel Draw Importer with librevenge Building Freehand Importer with librevenge Building Pagemaker Importer with librevenge Building MS Publisher Importer with librevenge Building QuarkXPress Importer Building MS-Visio Importer with librevenge Building Zoner Draw Importer -- Building with Scripter 1 -- No source header files will be installed -- /tmp/scribus-svn/src/scribus/Scribus/resources/translations -- The following GUI languages will be installed: -- Configuring done -- Generating done -- Build files have been written to: /tmp/scribus-svn/src/scribus/Scribus -- Found Subversion: /usr/bin/svn (found version "1.9.7") [ 0%] Built target svnheader [ 1%] Built target scribus_zip_lib [ 2%] Built target scribus_colormgmt_lib [ 2%] Built target scribus_desaxe_lib [ 2%] Building CXX object scribus/fonts/CMakeFiles/scribus_fonts_lib.dir/scface.cpp.o In file included from /tmp/scribus-svn/src/scribus/Scribus/scribus/fonts/scface.cpp:18:0: /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:252:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* getGraphemeIterator(); ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:253:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* getWordIterator(); ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:254:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* getSentenceIterator(); ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:255:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* getLineIterator(); ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:299:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* m_graphemeIterator; ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:300:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* m_wordIterator; ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:301:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* m_sentenceIterator; ^~~~~~~~~~~~~ UBreakIterator /tmp/scribus-svn/src/scribus/Scribus/scribus/text/storytext.h:302:9: error: ‘BreakIterator’ does not name a type; did you mean ‘UBreakIterator’? static BreakIterator* m_lineIterator; ^~~~~~~~~~~~~ UBreakIterator make[2]: *** [scribus/fonts/CMakeFiles/scribus_fonts_lib.dir/build.make:131: scribus/fonts/CMakeFiles/scribus_fonts_lib.dir/scface.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:380: scribus/fonts/CMakeFiles/scribus_fonts_lib.dir/all] Error 2 make: *** [Makefile:152: all] Error 2 ==> ERROR: A failure occurred in build(). Aborting... | ||||
Tags | No tags attached. | ||||
Patch | No | ||||
|
See http://source.icu-project.org/repos/icu/trunk/icu4c/readme.html#RecBuild This can be fixed (in a backwards-compatible way) by adding add_definitions(-DU_USING_ICU_NAMESPACE=1) to the CMakeLists.txt file. |
|
I tried that, but it did not change anything. |
|
Ah, I should have been clearer. It won't work to add it to the end of the file. I added it just below "pkg_check_modules(ICU REQUIRED icu-uc)", since that seemed the logical place for it, but anywhere between the "cmake_minimum_required" line near the top of the file and the first "add_subdirectory" line (near the end) should work. |
|
Thanks for clarification, this seems to work. I am currently rebuilding (54%). |
|
I can now finally confirm that this works fine. |
|
icu_fix.patch (261 bytes)
--- CMakeLists.txt (revision 22461) +++ CMakeLists.txt (working copy) @@ -926,5 +926,6 @@ # CTL support pkg_check_modules(HARFBUZZ REQUIRED harfbuzz>=0.9.42 harfbuzz-icu) pkg_check_modules(ICU REQUIRED icu-uc) +add_definitions(-DU_USING_ICU_NAMESPACE=1) |
|
@alexmerry: thanks for the build option. Let's keep this bug open till the code is fixed. |
|
I used a less temporary approach by adding the "using namespace icu" declarations where necessary. Relying on U_USING_ICU_NAMESPACE would have triggered another build failure the day where this definition will be removed by the icu guys. |
|
That fix also works, thanks. |
Date Modified | Username | Field | Change |
---|---|---|---|
2018-03-31 01:32 | munzirtaha | New Issue | |
2018-03-31 19:52 | alexmerry | Note Added: 0045129 | |
2018-03-31 23:00 | haawda | Note Added: 0045130 | |
2018-03-31 23:22 | alexmerry | Note Added: 0045131 | |
2018-04-01 05:22 | haawda | Note Added: 0045132 | |
2018-04-01 17:24 | haawda | Note Added: 0045133 | |
2018-04-01 17:27 | haawda | File Added: icu_fix.patch | |
2018-04-01 19:33 | munzirtaha | Note Added: 0045134 | |
2018-04-03 22:56 | jghali | Summary | Scribus stopped building after lastest updates to harfbuzz and icu => Scribus stopped building after update to icu 61.1 |
2018-04-03 23:00 | jghali | Assigned To | => jghali |
2018-04-03 23:00 | jghali | Status | new => resolved |
2018-04-03 23:00 | jghali | Resolution | open => fixed |
2018-04-03 23:00 | jghali | Fixed in Version | => 1.5.4.svn |
2018-04-03 23:00 | jghali | Note Added: 0045140 | |
2018-04-04 16:23 | haawda | Note Added: 0045144 | |
2019-06-04 20:56 | cbradney | Status | resolved => closed |