Module or Dictionary corrupt
Namespace
rswhite4 at googlemail.com
Fri Nov 8 13:09:40 PST 2013
On Thursday, 7 November 2013 at 04:50:48 UTC, evilrat wrote:
> On Wednesday, 6 November 2013 at 10:32:01 UTC, Namespace wrote:
>> On Wednesday, 6 November 2013 at 10:21:38 UTC, evilrat wrote:
>>> On Wednesday, 6 November 2013 at 10:13:07 UTC, Namespace
>>> wrote:
>>>> Should I open a bug for this?
>>>
>>> you should fix ur sc.ini first to use visual studio linker
>>> for x64 and optlink for x86, you can use dmd 2.064.2
>>> installer now to do so automatically.
>>
>> I only have a VS shell for VisualD. I assume that I need a
>> regular version, e.g. C++ Express?
>
> well, yes, and also windows sdk i think
I tried it gain with -m64 with the new release and after
installing VisualD v0.3.37
My sc.ini looks like that:
----
[Version]
version=7.51 Build 020
; environment for both 32/64 bit
[Environment]
DFLAGS="-I%@P%\..\..\src\phobos"
"-I%@P%\..\..\src\druntime\import"
; optlink only reads from the Environment section so we need this
redundancy
; from the Environment32 section (bugzilla 11302)
LIB="%@P%\..\lib"
[Environment32]
LIB="%@P%\..\lib"
LINKCMD=%@P%\link.exe
[Environment64]
LIB="%@P%\..\lib64"
; needed to avoid COMDAT folding (bugzilla 10664)
DFLAGS=%DFLAGS% -L/OPT:NOICF
; default to 32-bit linker (can generate 64-bit code) that has a
common path
; for VS2008, VS2010, VS2012, and VS2013. This will be overridden
below if the
; installer detects VS.
LINKCMD=%VCINSTALLDIR%\bin\link.exe
;
-----------------------------------------------------------------------------
; This enclosed section is specially crafted to be activated by
the Windows
; installer when it detects the actual paths to VC and SDK
installations so
; modify this in the default sc.ini within the dmd git repo with
care.
;
; End users: You can fill in the path to VC and Windows SDK and
uncomment out
; the appropriate LINKCMD to manually enable support yourself.
;
; Users using Visual Studio 2010 Express with SDK 7.0A: The
installer cannot
; determine the path to the 64-bit compiler included with SDK
7.0A. It's
; recommended to install the Windows SDK 7.1A. Alternatively you
can set
; LINKCMD as the path to link.exe SDK 7.0A installs. It would
typically be:
; C:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\bin\amd64\link.exe
; Windows installer replaces the following lines with the actual
paths
;VCINSTALLDIR=
;WindowsSdkDir=
; Windows installer uncomments the version detected
;VC2013 LINKCMD=%VCINSTALLDIR%\bin\x86_amd64\link.exe
;VC2012 LINKCMD=%VCINSTALLDIR%\bin\x86_amd64\link.exe
;VC2010 LINKCMD=%VCINSTALLDIR%\bin\amd64\link.exe
;VC2008 LINKCMD=%VCINSTALLDIR%\bin\amd64\link.exe
; needed with /DEBUG to find mspdb*.dll (only for VS2012 or
VS2013)
;VC2013
PATH=%PATH%;%VCINSTALLDIR%\bin\x86_amd64;%VCINSTALLDIR%\..\Common7\IDE
;VC2012
PATH=%PATH%;%VCINSTALLDIR%\bin\x86_amd64;%VCINSTALLDIR%\..\Common7\IDE
;
----------------------------------------------------------------------------
; Add the library subdirectories of all VC and Windows SDK
versions so things
; just work for users using dmd from the VS 64-bit Command Prompt
; C Runtime libraries
LIB=%LIB%;"%VCINSTALLDIR%\lib\amd64"
; Platform libraries (Windows SDK 8)
LIB=%LIB%;"%WindowsSdkDir%\Lib\win8\um\x64"
; Platform libraries (Windows SDK 7 and 6)
LIB=%LIB%;"%WindowsSdkDir%\Lib\x64"
----
and my output from VisualD is:
----
OPTLINK (R) for Win32 Release 8.00.13
Copyright (C) Digital Mars 1989-2010 All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
Debug\Foo.obj Offset 00000H Record Type 0064
Error 138: Module or Dictionary corrupt
----
What must be changed?
More information about the Digitalmars-d-learn
mailing list