View Issue Details

IDProjectCategoryView StatusLast Update
0013788ScribusOS-Win32public2016-11-07 11:39
Reporterjlpoole Assigned Tojghali  
PrioritynoneSeverityblockReproducibilityalways
Status closedResolutionsuspended 
PlatformVisual Studio Express 2013OSWindowsOS Version7
Product Version1.5.2.svn 
Summary0013788: scribus-1.5.x-libs-msvc2012-20160213 Fails with Visual Studio 2013
DescriptionThe library package scribus-1.5.x-libs-msvc2012-20160213 when compiled with Visual Studio 2013 results in 13 errors.

The errors of based on two issues the following libraries:

1) librevenge-0.0.3: qualification of string for the << operator
2) librevenge-0.0.3 & poppler-0.39.0: lack of #include <algorithm>

I have not tested with earlier version of Visual Studio, but I presuming the compiler in a prior version does not balk as I believe the author of the library build is using an earlier version of MS Visual Studio, so this problem probably is unique to people using MS Visual Studio Express 2013.

I've included a patch here so users wanting to compile the HEAD version of Scribus today, March 4th, may proceed.
Steps To Reproduce1) Download scribus-1.5.x-libs-msvc2012-20160213
2) Click scribus-libs-msvc2012.sln to launch MS Visual Studio Express 2013
3) Accept Visual Studio proposed modifications
4) Build
Additional InformationI posted to the Scribus-DEV mailing list and was told to report upstream.

While I do that, the current library pack cannot be compiled by users of MS Visual Studio 2013 so I'm posting this fix here so users wanting to compile the HEAD of the Scribus code are not having to wait for 1) the upstream projects to accept the patches, and 2) for the patched code to get picked up in another release of the supporting library code for Scribus.

I am attaching a patch file here. I do not know how it would be deployed in a Windows environment other than by reading the patch and hand editing the four files as indicated.
Tagsupstream
PatchYes

Relationships

related to 0013800 new enhance windows build instructions 

Activities

jlpoole

2016-03-04 15:17

reporter  

patch_VisualStudio_2013_Express_B (1,589 bytes)   
--- librevenge-0.0.3/src/lib/RVNGTextTextGenerator.cpp	Sat Aug 29 22:03:12 2015
+++ librevenge-0.0.3/src/lib/RVNGTextTextGenerator.cpp	Thu Mar 03 21:17:29 2016
@@ -19,7 +19,6 @@
  */
 
 #include <sstream>
-
 #include <librevenge-generators/librevenge-generators.h>
 
 // use the BELL code to represent a TAB for now
@@ -123,7 +122,7 @@
 	if (!m_impl->m_endnotes.str().empty())
 	{
 		*m_impl->m_stream << '\n';
-		*m_impl->m_stream << m_impl->m_endnotes;
+		*m_impl->m_stream << m_impl->m_endnotes.str();
 	}
 	m_impl->m_document=m_impl->m_stream->str().c_str();
 }
--- librevenge-0.0.3/src/lib/RVNGZipStream.cpp	Wed Dec 23 10:50:32 2015
+++ librevenge-0.0.3/src/lib/RVNGZipStream.cpp	Thu Mar 03 20:36:53 2016
@@ -21,6 +21,7 @@
 #include <string>
 #include <string.h>
 #include <stdio.h>
+#include <algorithm>
 #include <utility>
 
 #include <zlib.h>
--- poppler-0.39.0/poppler/PSOutputDev.cc	Wed Dec 16 14:58:32 2015
+++ poppler-0.39.0/poppler/PSOutputDev.cc	Thu Mar 03 20:36:33 2016
@@ -41,11 +41,11 @@
 #ifdef USE_GCC_PRAGMAS
 #pragma implementation
 #endif
-
 #include <stdio.h>
 #include <stddef.h>
 #include <stdarg.h>
 #include <signal.h>
+#include <algorithm>
 #include <math.h>
 #include <limits.h>
 #include "goo/GooString.h"
--- poppler-0.39.0/poppler/TextOutputDev.cc	Sun Nov 15 13:05:22 2015
+++ poppler-0.39.0/poppler/TextOutputDev.cc	Thu Mar 03 20:37:04 2016
@@ -50,6 +50,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <stddef.h>
+#include <algorithm>
 #include <math.h>
 #include <float.h>
 #include <ctype.h>

Kunda

2016-03-04 15:34

updater   ~0038970

Upstream versions show
* librevenge at v0.0.4
* poppler at v0.41.0

jlpoole

2016-03-04 15:41

reporter   ~0038971

Poppler project is already aware of the "#include <algorithm>" issue. See https://bugs.freedesktop.org/show_bug.cgi?id=88511

Librevenge project: I filed a ticket: https://sourceforge.net/p/libwpd/tickets/7/

jlpoole

2016-03-05 15:39

reporter   ~0038987

The ticket for Librevenge was closed without comment. Filing a ticket there was a waste of time.

Kunda

2016-03-05 15:42

updater   ~0038988

dtardon ?

jlpoole

2016-03-05 15:50

reporter   ~0038989

Yes, it was dtardon. I looked further into the project, and it appears dtardon added what I had proposed:

     +#include <algorithm>

https://sourceforge.net/p/libwpd/librevenge/ci/bc8ab9c5317d22d9ec4722b048835cdea4e50f61/

It would have been helpful when closing my ticket to indicate an action or no action was taken, or reference the GIT change. So I'll retract my comment "Filing a ticket there was a waste of time" and change the summary to "Fixed (without comment or reference)."

Kunda

2016-03-05 20:35

updater   ~0039006

jlpoole, yea.. as you said, looks like dtardon added it but didn't tell you that he did.

What about poppler? would you mind adding this downstream issue link as a notation to https://bugs.freedesktop.org/show_bug.cgi?id=88511 ?

Kunda

2016-03-08 01:12

updater   ~0039039

IRC Channel #poppler on freenode
5:52 PM	<Kunda> anyone here ?
5:56 PM	<jcrain> I'm here, but I can't help with that but 88511
5:58 PM	<jcrain> It looks like part of that patch was committed.  I haven't tried to build in visual studio, but I guess it still doesn't work?
6:07 PM	<Kunda> jcrain, yea..it's getting in the way of a compile when someone builds scribus in windows
6:11 PM	<jcrain> Bug report 88511 looks like it's waiting for someone to confirm that a #if defined ... _MSC_VER <= 1700 is required
6:11 PM	<jcrain> or what the correct version is
6:13 PM	<tsdgeos> yeah
6:13 PM	<tsdgeos> needs someone with windows knowledge that cares enough

jlpoole

2016-03-08 01:29

reporter   ~0039042

done.

jghali

2016-03-08 17:59

administrator   ~0039065

Just seen your comment on poppler bug: "Note: I installed MS Visual Studio 2013 on 1/26/2016 and that is the date of the shortcut named "Developer Command Prompt for VS2013" So it appears that the installation of MS Visual Studio 2013 includes
directories with the name Visual Studio 2012."

For your information Visual Studio 2013 major version is 12.0 and Visual Studio 2012 is 11.0. So no the installation of MS Visual Studio 2013 does not include
directories from Visual Studio 2012. Visual Studio 2013 *is* Visual Studio 12.0.

Kunda

2016-03-09 19:17

updater   ~0039090

@jlpoole poppler dev replied to you in https://bugs.freedesktop.org/show_bug.cgi?id=88511#c14
Please provide a patch against the current version of poppler git not for an old version.

Kunda

2016-03-17 13:44

updater   ~0039222

jlpoole, what's the status of this ?

Kunda

2016-04-10 17:57

updater   ~0040024

@jlpoole ping

Kunda

2016-05-16 17:36

updater   ~0041137

ping

Kunda

2016-11-07 10:57

updater   ~0042351

@jghali please advise

jghali

2016-11-07 11:39

administrator   ~0042353

The mentioned library package is outdated. Some of the patches have already been integrated upstream. Any issue with building with msvc versions other than msvc 2012 must be reported upstream for maintainability reasons. Closing.

Issue History

Date Modified Username Field Change
2016-03-04 15:17 jlpoole New Issue
2016-03-04 15:17 jlpoole File Added: patch_VisualStudio_2013_Express_B
2016-03-04 15:34 Kunda Note Added: 0038970
2016-03-04 15:41 jlpoole Note Added: 0038971
2016-03-05 15:39 jlpoole Note Added: 0038987
2016-03-05 15:42 Kunda Note Added: 0038988
2016-03-05 15:50 jlpoole Note Added: 0038989
2016-03-05 19:42 Kunda Tag Attached: upstream
2016-03-05 20:35 Kunda Note Added: 0039006
2016-03-08 01:12 Kunda Note Added: 0039039
2016-03-08 01:29 jlpoole Note Added: 0039042
2016-03-08 13:42 Kunda Relationship added related to 0013800
2016-03-08 17:59 jghali Note Added: 0039065
2016-03-09 19:17 Kunda Note Added: 0039090
2016-03-17 13:44 Kunda Note Added: 0039222
2016-04-10 17:57 Kunda Note Added: 0040024
2016-05-16 17:36 Kunda Note Added: 0041137
2016-11-07 10:57 Kunda Note Added: 0042351
2016-11-07 11:39 jghali Assigned To => jghali
2016-11-07 11:39 jghali Status new => resolved
2016-11-07 11:39 jghali Resolution open => suspended
2016-11-07 11:39 jghali Note Added: 0042353
2016-11-07 11:39 jghali Status resolved => closed