www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.ldc - link problems

reply Manfred Nowak <svv1999 hotmail.com> writes:
Tried to build ldc as described in
  http://wiki.dlang.org/Building_and_hacking_LDC_on_Windows_using_MSVC

But no success:

Fehler beim Buildvorgang.

"C:\LDCenv\build-ldc2-x64\ALL_BUILD.vcxproj" (Standardziel) (1) ->
"C:\LDCenv\build-ldc2-x64\runtime\druntime-ldc.vcxproj" (Standardziel) 
(6) ->
"C:\LDCenv\build-ldc2-x64\ldc2.vcxproj" (Standardziel) (8) ->
(Link Ziel) ->
  configfile.obj : error LNK2019: unresolved external symbol "public: 
__cdecl l
ibconfig::Config::Config(void)" (??0Config libconfig  QEAA XZ) referenced 
in fu
nction "public: __cdecl ConfigFile::ConfigFile(void)" (??
0ConfigFile  QEAA XZ)
[C:\LDCenv\build-ldc2-x64\ldc2.vcxproj]
  configfile.obj : error LNK2019: unresolved external symbol "public: 
__cdecl l
ibconfig::Setting::operator class std::basic_string<char,struct 
std::char_trait
s<char>,class std::allocator<char> >(void)const " (??
BSetting libconfig  QEBA?A
V?$basic_string DU?$char_traits D std  V?$allocator D 2  std  XZ) 
referenced in
 function "public: bool __cdecl ConfigFile::read(char const *,void *,char 
const
 *)" (?read ConfigFile  QEAA_NPEBDPEAX0 Z) [C:\LDCenv\build-ldc2-x64
\ldc2.vcxpr
oj]
  configfile.obj : error LNK2019: unresolved external symbol "public: 
class lib
config::Setting & __cdecl libconfig::Setting::operator[](int)const " (??
ASettin
g libconfig  QEBAAEAV01 H Z) referenced in function "public: bool __cdecl 
Confi
gFile::read(char const *,void *,char const *)" (?
read ConfigFile  QEAA_NPEBDPEA
X0 Z) [C:\LDCenv\build-ldc2-x64\ldc2.vcxproj]
  configfile.obj : error LNK2019: unresolved external symbol "public: int 
__cde
cl libconfig::Setting::getLength(void)const " (?
getLength Setting libconfig  QE
BAHXZ) referenced in function "public: bool __cdecl ConfigFile::read(char 
const
 *,void *,char const *)" (?read ConfigFile  QEAA_NPEBDPEAX0 Z) [C:\LDCenv
\build
-ldc2-x64\ldc2.vcxproj]
  configfile.obj : error LNK2019: unresolved external symbol "public: 
bool __cd
ecl libconfig::Setting::exists(char const *)const " (?
exists Setting libconfig 
 QEBA_NPEBD Z) referenced in function "public: bool __cdecl 
ConfigFile::read(ch
ar const *,void *,char const *)" (?read ConfigFile  QEAA_NPEBDPEAX0 Z) 
[C:\LDCe
nv\build-ldc2-x64\ldc2.vcxproj]
  configfile.obj : error LNK2019: unresolved external symbol "public: 
class lib
config::Setting & __cdecl libconfig::Config::lookup(char const *)const " 
(?look
up Config libconfig  QEBAAEAVSetting 2 PEBD Z) referenced in function 
"public:
bool __cdecl ConfigFile::read(char const *,void *,char const *)" (?
read ConfigF
ile  QEAA_NPEBDPEAX0 Z) [C:\LDCenv\build-ldc2-x64\ldc2.vcxproj]
  configfile.obj : error LNK2019: unresolved external symbol "public: 
bool __cd
ecl libconfig::Config::exists(char const *)const " (?
exists Config libconfig  Q
EBA_NPEBD Z) referenced in function "public: bool __cdecl 
ConfigFile::read(char
 const *,void *,char const *)" (?read ConfigFile  QEAA_NPEBDPEAX0 Z) [C:
\LDCenv
\build-ldc2-x64\ldc2.vcxproj]
  configfile.obj : error LNK2019: unresolved external symbol "public: 
void __cd
ecl libconfig::Config::readFile(char const *)" (?
readFile Config libconfig  QEA
AXPEBD Z) referenced in function "public: bool __cdecl ConfigFile::read
(char co
nst *,void *,char const *)" (?read ConfigFile  QEAA_NPEBDPEAX0 Z) [C:
\LDCenv\bu
ild-ldc2-x64\ldc2.vcxproj]
  C:\LDCenv\build-ldc2-x64\bin\Debug\ldc2.exe : fatal error LNK1120: 8 
unresolv
ed externals [C:\LDCenv\build-ldc2-x64\ldc2.vcxproj]

    0 Warnung(en)
    9 Fehler

-manfred
Jul 31 2013
parent reply "Kai Nacke" <kai redstar.de> writes:
On Wednesday, 31 July 2013 at 19:29:45 UTC, Manfred Nowak wrote:
 Tried to build ldc as described in
   
 http://wiki.dlang.org/Building_and_hacking_LDC_on_Windows_using_MSVC

 But no success:

 Fehler beim Buildvorgang.

 "C:\LDCenv\build-ldc2-x64\ALL_BUILD.vcxproj" (Standardziel) (1) 
 ->
 "C:\LDCenv\build-ldc2-x64\runtime\druntime-ldc.vcxproj" 
 (Standardziel)
 (6) ->
 "C:\LDCenv\build-ldc2-x64\ldc2.vcxproj" (Standardziel) (8) ->
 (Link Ziel) ->
   configfile.obj : error LNK2019: unresolved external symbol 
 "public:
 __cdecl l
 ibconfig::Config::Config(void)" (??0Config libconfig  QEAA XZ) 
 referenced
 in fu
 nction "public: __cdecl ConfigFile::ConfigFile(void)" (??
 0ConfigFile  QEAA XZ)
Hi Manfred! This is a problem with libconfig++. I can imagine 2 sources of errors here: 1) The path to libconfig++ on the cmake command line is wrong. This is the -DLIBCONFIG++_LIBRARY="..." parameter. Please note that the provided value is not checked by cmake. 2) It could also be a mismatch between static and dynamic compiled library. If you compile libconfig++ as DLL (the default) then you have to add -DLIBCONFIG_DLL=ON on the cmake command line. I hope this helps. Kai
Aug 04 2013
parent reply Manfred Nowak <svv1999 hotmail.com> writes:
Kai Nacke wrote:
 I hope this helps.
The hope vanished midst of flight. 1) the path was set correctly. 2) the error count increased from nine to thirteen. -manfred
Aug 04 2013
parent reply "Kai Nacke" <kai redstar.de> writes:
On Sunday, 4 August 2013 at 21:06:54 UTC, Manfred Nowak wrote:
 Kai Nacke wrote:
 I hope this helps.
The hope vanished midst of flight. 1) the path was set correctly. 2) the error count increased from nine to thirteen. -manfred
Ok, next try: 1) Regarding libconfig++: Did you create the x64 profile to compile for x64? Do you create a dynamic or static library? (BTW: I only tested linking against the static library.) 2) Regarding LDC: Could you please post your cmake commandline? Kai
Aug 04 2013
parent Manfred Nowak <svv1999 hotmail.com> writes:
Kai Nacke wrote:
  Did you create the x64 profile
Did not do this twice and forgot to report on that. By that: I am on win8/64. where can I find the documentation for creating such profiles---or do you really want to baby-sit me (... and all other babes out there)? 2) The .bat file for ldc: md build-ldc2-x64 git clone git://github.com/ldc-developers/ldc.git ldc cd ldc git submodule update --init cd runtime\druntime git checkout -b ldc-latest cd ..\phobos git checkout -b ldc-latest cd ..\..\..\build-ldc2-x64 cmake -G "Visual Studio 10 Win64" -DCMAKE_INSTALL_PREFIX="C:/Program Files/LDC" -DLLVM_ROOT_DIR="C:/Program Files/LLVM-x64" -DLIBCONFIG++_INCLUDE_DIR="C:/LDCenv/libconfig-1.4.9/lib" -DLIBCONFIG++_LIBRARY="C:/LDCenv/libconfig-1.4.9/Debug/libconfig++.lib" C:\LDCenv\ldc msbuild ALL_BUILD.vcxproj cd .. -manfred
Aug 05 2013