0.91pre2-1 won't run on XP 64 rand_s can't be located

Bug #1367660 reported by Duarte Ramos
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Inkscape
Won't Fix
Undecided
Unassigned
Inkscape Devlibs for Windows 64-bit
Triaged
High
Unassigned

Bug Description

Not sure if running on windows XP is still supported on future 0.91 builds, but using the official pre release from your website
inkscape-0.91pre2-1-win64.7z

I can't get it to run on Windows XP, launching it produces the following error:

"The procedure entry point rand_s could not be located msvcrt.dll"

0.91 r13349 works fine on the same XP 64 computer, and the latest 0.48 build from Partha (who I believe to be one of the official Windows builders) has the same problem.

description: updated
su_v (suv-lp)
tags: added: crash win64
Revision history for this message
Duarte Ramos (duarte-framos) wrote :

0.91 pre3-2 still as the same problem on XP64, runs fine in windows 7 64

Revision history for this message
su_v (suv-lp) wrote :
Revision history for this message
OCTAGRAM (octagram) wrote :

First, I'm on Win2003 x64 as opposed to WinXP, but should be similar. I have installed MSVS redistributables 2005, 2008, 2010, 2012 and 2013, and I can see no rand_s in msvcrt.dll no matter what I try. There are, however, another dlls like msvcr100.dll from MSVS 2010, msvcr110.dll and msvcr120.dll, and all of them contain rand_s. It looks like a mistake to look for rand_s in msvcrt.dll.

One should check for msvcr120.dll, msvcr110.dll or msvcr100.dll existence, dynamically link best of them and use its API; otherwise fallback to rand() in msvcrt.dll.

I had solved my problem with InkScape by nulling out "_s" in rand_s in glib*.dll import table. Copying msvcr120.dll and renaming to msvcrt.dll might probably also work. Have not checked.

Revision history for this message
DrO (droli-1) wrote :

I tried the copy msvcr120.dll -> rename msvcrt.dll route, but no joy on WinXP64 (as well as several other msvc's).

What do you mean "nulling out the _s"? Does that require editing the DLL's (e.g. .Net Refractor etc ???).

Please advise.

Revision history for this message
Henry Wong (henry-n) wrote :

There seems to have been a patch in glib (~6 months newer than 2.40) that addresses this, so building with a newer glib (2.41.5 or newer?) ought to fix this: https://bugzilla.gnome.org/show_bug.cgi?id=736458

As a workaround, I was able to get Inkscape 0.91 to run on XP64 by replacing libglib-2.0-0.dll with one from glib 2.42, from the binary package available here: http://lvserver.ugent.be/gtk-win64/gtk2-runtime/ . Package gtk2-runtime-2.24.24-2014-09-28 comes with glib 2.42.

I get a "Inkscape encountered an internal error and will close now" when exiting Inkscape, and I don't know if it's a side effect of having replaced libglib.

jazzynico (jazzynico)
Changed in inkscape-devlibs64:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Qantas94Heavy (qantas94heavy) wrote :

Closing because Inkscape no longer supports Windows XP/Vista.

Closed by: https://gitlab.com/Qantas94Heavy

Changed in inkscape:
status: New → Won't Fix
tbnorth (terry-n-brown)
tags: added: bug-migration
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.