std.net.curl and ldc v1.0.0+

Joseph Rushton Wakeling via digitalmars-d-ldc digitalmars-d-ldc at puremagic.com
Sun Oct 16 07:55:18 PDT 2016


On Saturday, 15 October 2016 at 23:34:41 UTC, David Nadlinger 
wrote:
> IIRC, you can set either D_COMPILER or the DMD environment 
> variable.

That unfortunately runs straight into a problem that I think we 
already encountered earlier: because the build scripts check for 
the existence of the D compiler, it finds that "ldc -gcc=gcc-4.9" 
does not exist :-\

There's DDMD_DFLAGS, which I tried setting with 
-DDDMD_DFLAGS=-gcc=gcc-4.9 and -DDDMD_DFLAGS="-gcc=gcc-4.9", and 
neither works; the cmake call generates output:

     -- Found D compiler /usr/bin/ldmd2, with default flags ''
     -- D compiler version: LDC - the LLVM D compiler (0.17.1)

... followed by the same old 'gcc not found' error, so it's 
somehow not being picked up.  I'd suspect that is down to these 
lines in CMakeLists.txt:

     set(DDMD_DFLAGS "-wi")
     set(DDMD_LFLAGS "")

which presumably override anything set by the command-line flags.

I tried tweaking the CMakeLists.txt file directly to set the 
-gcc=gcc-4.9 flag, and instead I get a linker error:

[  0%] Linking CXX executable bin/gen_gccbuiltins
CMakeFiles/gen_gccbuiltins.dir/utils/gen_gccbuiltins.cpp.o: In 
function `attributes(llvm::ListInit*)':
/home/joseph/code/D/ldc/utils/gen_gccbuiltins.cpp:91: undefined 
reference to `llvm::Record::getName() const'
CMakeFiles/gen_gccbuiltins.dir/utils/gen_gccbuiltins.cpp.o: In 
function `processRecord(llvm::raw_ostream&, llvm::Record&, 
std::string)':
/home/joseph/code/D/ldc/utils/gen_gccbuiltins.cpp:104: undefined 
reference to `llvm::Record::getValueAsString(llvm::StringRef) 
const'
/home/joseph/code/D/ldc/utils/gen_gccbuiltins.cpp:105: undefined 
reference to `llvm::Record::getName() const'
/home/joseph/code/D/ldc/utils/gen_gccbuiltins.cpp:125: undefined 
reference to `llvm::Record::getName() const'
collect2: error: ld returned 1 exit status

... which I would suspect is down to the prebuilt llvm-3.8 being 
built with g++ 5.4 and its corresponding libstdc++6 ... ?


More information about the digitalmars-d-ldc mailing list