CyberShadow / Digger

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

Can't compile digger 3.0.0-alpha-7+commit.4.g4700560 #73

Closed Robert-M-Muench closed 5 years ago

Robert-M-Muench commented 5 years ago

I really have hard times to get digger compiled... don't why this is giving me so many errors:


| /Users/Shared/develop/d-language/Digger @ imac-pro-559 (robby)
| => dub fetch digger
Fetching digger 3.0.0-alpha-7...
Please note that you need to use `dub run <pkgname>` or add it to dependencies of your package to actually use/run it. dub does not do actual installation of packages outside of its own ecosystem.
________________________________________________________________________________
| /Users/Shared/develop/d-language/Digger @ imac-pro-559 (robby)
| => dub run digger
Building package digger in /Users/Shared/develop/d-language/Digger/
Performing "debug" build using /Library/D/dmd/bin/dmd for x86_64.
digger 3.0.0-alpha-7+commit.4.g4700560: building configuration "application"...
/Library/D/dmd/src/phobos/std/experimental/allocator/package.d(895,28): Error: shared method std.experimental.allocator.RCISharedAllocator.~this is not callable using a non-shared object
/Library/D/dmd/src/druntime/import/object.d(2931,15): Error: argument to __traits(getLinkage, ae.net.nntp.client.NntpClient) is not a declaration
/Library/D/dmd/src/phobos/std/typecons.d(7548,21): Error: template instance object.destroy!(NntpClient) error instantiating
/Users/robby/.dub/packages/ae-0.0.2229/ae/net/nntp/listener.d(29,9):        instantiated from here: scoped!(NntpClient)
/Library/D/dmd/src/druntime/import/object.d(2931,15): Error: argument to __traits(getLinkage, std.mmfile.MmFile) is not a declaration
/Library/D/dmd/src/phobos/std/typecons.d(7548,21): Error: template instance object.destroy!(MmFile) error instantiating
/Users/robby/.dub/packages/ae-0.0.2229/ae/sys/datamm.d(28,9):        instantiated from here: scoped!(MmFile)
/Library/D/dmd/bin/dmd failed with exit code 1.
________________________________________________________________________________
| /Users/Shared/develop/d-language/Digger @ imac-pro-559 (robby)
| => rdmd -debug digger
ae/sys/data.d(486): Deprecation: class allocators have been deprecated, consider moving the allocation strategy outside of the class
ae/sys/data.d(505): Deprecation: class deallocators have been deprecated, consider moving the deallocation strategy outside of the class
ae/sys/data.d(341): Deprecation: The delete keyword has been deprecated.  Use object.destroy() (and core.memory.GC.free() if applicable) instead.
ae/utils/zlib.d(43): Error: constructor calls not allowed in loops or after labels
install.d(697): Deprecation: alias `std.digest.digest.toHexString` is deprecated - import std.digest instead of std.digest.digest. std.digest.digest will be removed in 2.084
________________________________________________________________________________
| /Users/Shared/develop/d-language/Digger @ imac-pro-559 (robby)
` ``
CyberShadow commented 5 years ago

Works here. It looks like your DMD and Druntime/Phobos are mismatched. Uninstall DMD, reinstall it, and try again.

CyberShadow commented 5 years ago

You've been here before, haven't you?

https://github.com/CyberShadow/Digger/issues?q=is%3Aissue+author%3ARobert-M-Muench

It looks like there is a systemic problem in how you install D on your machines. You may want to figure that out.

CyberShadow commented 5 years ago

BTW:

ae/utils/zlib.d(43): Error: constructor calls not allowed in loops or after labels

I fixed this in April: https://github.com/CyberShadow/ae/commit/38db46ef1b80d0222b4e7a790fc12e4d42b9cf70

Your Digger checkout is out of date. Pull and update submodules if you want to try building with rdmd.

Robert-M-Muench commented 5 years ago

Ok, so the submodules were the problem. I didn't took these into account when pulling. Now I can build digger. And digger can now (finally) build DMD on OSX. Thanks. Will try on Windows tomorrow.

CyberShadow commented 5 years ago

I assume everything worked out in the end.