CyberShadow / Digger

A tool to build D and bisect old D versions
Other
57 stars 9 forks source link

Can't build from clean git clone checkout #5

Closed quickfur closed 10 years ago

quickfur commented 10 years ago

On Linux/64bit, per instructions in README.md:

% git clone --recursive https://github.com/CyberShadow/Digger
% cd Digger
% rdmd --build-only digger
ae/net/ssl/openssl.d(27): Error: module ssl is in file 'deimos/openssl/ssl.d' which cannot be read
import path[0] = .
import path[1] = /usr/src/d/druntime/import
import path[2] = /usr/src/d/druntime/src
import path[3] = /usr/src/d/phobos
Failed: 'dmd' '-v' '-o-' 'digger.d' '-I.'
%
CyberShadow commented 10 years ago

Should be fixed in e834d0ac163d86863c64908e3a639254c9d137ad.

quickfur commented 10 years ago

Interesting. Now I'm getting this bizarre error:

$ rdmd --build-only digger
ae/sys/file.d(102): Error: undefined identifier 'string'
ae/sys/file.d(103): Error: undefined identifier 'string'
ae/sys/file.d(112): Error: undefined identifier 'string'
ae/sys/file.d(196): Error: template instance ae.sys.file.fastListDir!(true, false) error instantiating
ae/sys/file.d(102): Error: undefined identifier 'string'
ae/sys/file.d(103): Error: undefined identifier 'string'
ae/sys/file.d(112): Error: undefined identifier 'string'
ae/sys/file.d(198): Error: template instance ae.sys.file.fastListDir!(false, false) error instantiating
$
CyberShadow commented 10 years ago

That's weird, the code is wrong but it compiles for me in 2.065 and 2.066.

I've fixed the import. Try again?

quickfur commented 10 years ago

I'm using git HEAD, and it would appear that the location of std.c.stdio.string.* has moved?

quickfur commented 10 years ago

Aha, adding import std.c.stdio.string before that line fixed the problem.

P.S. I'm guessing that some public imports of std.c.stdio.string have been removed from git HEAD.

quickfur commented 10 years ago

New problem:

$ rdmd --build-only digger
/usr/src/d/phobos/generated/linux/release/64/libphobos2.a(random_afc_6e3.o): In function `_D3std6random17unpredictableSeedFNdZk':
std/random.d:(.text._D3std6random17unpredictableSeedFNdZk+0x22): undefined reference to `_D4core6thread6Thread7getThisFZC4core6thread6Thread'
collect2: error: ld returned 1 exit status
--- errorlevel 1

I'm pretty sure this is a problem with my environment, though, as I've seen the same problem with code unrelated to digger. So I'm closing this issue. But would greatly appreciate any pointers to fixing the linker problem. :)

quickfur commented 10 years ago

Well, actually, I guess I should keep this open until the import line is added.

quickfur commented 10 years ago

Weird, cloning a fresh copy of the repo no longer has the import problem. So I'll just close this. The linker problem is still there though.

quickfur commented 10 years ago

Nevermind, the linker problem is caused by having a non-clean build of druntime/phobos left over from the last time I was bisecting a regression. After rebuilding druntime/phobos from a clean slate, the linker problem went away. Sorry for wasting your time with false alarms.