Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DC environment variable is not recognised #653

Open
tastyminerals opened this issue Sep 16, 2021 · 8 comments
Open

DC environment variable is not recognised #653

tastyminerals opened this issue Sep 16, 2021 · 8 comments
Labels

Comments

@tastyminerals
Copy link

tastyminerals commented Sep 16, 2021

Optionally set the environment variable DC if you wish to use another compiler than the DMD known by the system.

I have my shell env var set to

$ echo $DC                                                                                                  
/usr/local/bin/ldc

but make still attempts to use dmd.

mkdir -p bin
dmd common/src/dcd/common/dcd_version.d common/src/dcd/common/constants.d common/src/dcd/common/socket.d common/src/dcd/common/messages.d common/src/dcd/common/constants2.d src/dcd/server/autocomplete/package.d src/dcd/server/autocomplete/util.d src/dcd/server/autocomplete/localuse.d src/dcd/server/autocomplete/complete.d src/dcd/server/autocomplete/symbols.d src/dcd/server/autocomplete/doc.d src/dcd/server/server.d src/dcd/server/main.d dsymbol/src/dsymbol/import_.d dsymbol/src/dsymbol/modulecache.d dsymbol/src/dsymbol/string_interning.d dsymbol/src/dsymbol/cache_entry.d dsymbol/src/dsymbol/deferred.d dsymbol/src/dsymbol/tests.d dsymbol/src/dsymbol/symbol.d dsymbol/src/dsymbol/conversion/package.d dsymbol/src/dsymbol/conversion/second.d dsymbol/src/dsymbol/conversion/first.d dsymbol/src/dsymbol/semantic.d dsymbol/src/dsymbol/type_lookup.d dsymbol/src/dsymbol/scope_.d dsymbol/src/dsymbol/builtin/names.d dsymbol/src/dsymbol/builtin/symbols.d stdx-allocator/source/stdx/allocator/common.d stdx-allocator/source/stdx/allocator/package.d stdx-allocator/source/stdx/allocator/building_blocks/free_list.d stdx-allocator/source/stdx/allocator/building_blocks/bucketizer.d stdx-allocator/source/stdx/allocator/building_blocks/package.d stdx-allocator/source/stdx/allocator/building_blocks/quantizer.d stdx-allocator/source/stdx/allocator/building_blocks/region.d stdx-allocator/source/stdx/allocator/building_blocks/segregator.d stdx-allocator/source/stdx/allocator/building_blocks/affix_allocator.d stdx-allocator/source/stdx/allocator/building_blocks/scoped_allocator.d stdx-allocator/source/stdx/allocator/building_blocks/kernighan_ritchie.d stdx-allocator/source/stdx/allocator/building_blocks/null_allocator.d stdx-allocator/source/stdx/allocator/building_blocks/fallback_allocator.d stdx-allocator/source/stdx/allocator/building_blocks/allocator_list.d stdx-allocator/source/stdx/allocator/building_blocks/bitmapped_block.d stdx-allocator/source/stdx/allocator/building_blocks/free_tree.d stdx-allocator/source/stdx/allocator/building_blocks/stats_collector.d stdx-allocator/source/stdx/allocator/typed.d stdx-allocator/source/stdx/allocator/gc_allocator.d stdx-allocator/source/stdx/allocator/showcase.d stdx-allocator/source/stdx/allocator/internal.d stdx-allocator/source/stdx/allocator/mmap_allocator.d stdx-allocator/source/stdx/allocator/mallocator.d libdparse/src/dparse/rollback_allocator.d libdparse/src/dparse/ast.d libdparse/src/dparse/entities.d libdparse/src/dparse/strings.d libdparse/src/dparse/stack_buffer.d libdparse/src/dparse/lexer.d libdparse/src/dparse/formatter.d libdparse/src/dparse/parser.d libdparse/src/dparse/trivia.d libdparse/src/std/experimental/lexer.d containers/src/containers/package.d containers/src/containers/slist.d containers/src/containers/hashset.d containers/src/containers/unrolledlist.d containers/src/containers/internal/backwards.d containers/src/containers/internal/hash.d containers/src/containers/internal/element_type.d containers/src/containers/internal/storage_type.d containers/src/containers/internal/mixins.d containers/src/containers/internal/node.d containers/src/containers/dynamicarray.d containers/src/containers/ttree.d containers/src/containers/simdset.d containers/src/containers/immutablehashset.d containers/src/containers/treemap.d containers/src/containers/openhashset.d containers/src/containers/cyclicbuffer.d containers/src/containers/hashmap.d msgpack-d/src//msgpack/common.d msgpack-d/src//msgpack/buffer.d msgpack-d/src//msgpack/package.d msgpack-d/src//msgpack/register.d msgpack-d/src//msgpack/attribute.d msgpack-d/src//msgpack/exception.d msgpack-d/src//msgpack/unpacker.d msgpack-d/src//msgpack/streaming_unpacker.d msgpack-d/src//msgpack/packer.d msgpack-d/src//msgpack/value.d -Icontainers/src -Imsgpack-d/src -Ilibdparse/src -Idsymbol/src -Istdx-allocator/source -Jbin -wi -O -release -inline -ofbin/dcd-server
make: dmd: No such file or directory
make: *** [dmdserver] Error 1
@tastyminerals tastyminerals changed the title DC environment variabel doesn't work DC environment variable doesn't work Sep 16, 2021
@tastyminerals tastyminerals changed the title DC environment variable doesn't work DC environment variable is not recognised Sep 16, 2021
@WebFreak001
Copy link
Member

no mention of $DC or ${DC} in the makefile anywhere, so probably just not implemented. Windows has it at the start though.

@tastyminerals
Copy link
Author

I managed to get it working by modifying the makefile though.

@nico-agf33
Copy link

I managed to get it working by modifying the makefile though.

What modifications did you perform inside the makefile? I'm having this same problem and I can't find any workaround

@tastyminerals
Copy link
Author

tastyminerals commented Oct 4, 2021

Actually just minor changes:

[I] pavels@Pavels-MacBook-Pro ~/D/g/DCD (master)> git diff                                                                                                                                         (base)
diff --git a/makefile b/makefile
index 0adeb83..b8e1af9 100644
--- a/makefile
+++ b/makefile
@@ -1,6 +1,6 @@
 .PHONY: all

-all: dmd
+all: ldc
 dmd: dmdserver dmdclient
 debug: dmdclient debugserver
 gdc: gdcserver gdcclient
@@ -8,13 +8,13 @@ ldc: ldcserver ldcclient

 DMD := dmd
 GDC := gdc
-LDC := ldc2
+LDC := ldc

 DPARSE_DIR := libdparse
 DSYMBOL_DIR := dsymbol
 STDXALLOC_DIR := stdx-allocator

-SHELL:=/bin/bash
+SHELL:=/opt/homebrew/bin/fish

 githash:
        @mkdir -p bin

ldc is aliased to /usr/local/bin/ldc which is a symbolic link to an actual ldc2 binary.

@nico-agf33
Copy link

Well it did the trick for me as well, thank you!

@baryluk
Copy link

baryluk commented Oct 20, 2023

I am following README and got the same issue.

user@debian:~/DCD$ DC=gdc make
git describe --tags > bin/githash.txt
mkdir -p bin
dmd common/src/dcd/common/socket.d common/src/dcd/common/messages.d common/src/dcd/common/dcd_version.d common/src/dcd/common/constants2.d common/src/dcd/common/constants.d src/dcd/server/server.d src/dcd/server/main.d src/dcd/server/autocomplete/util.d src/dcd/server/autocomplete/symbols.d src/dcd/server/autocomplete/package.d src/dcd/server/autocomplete/localuse.d src/dcd/server/autocomplete/doc.d src/dcd/server/autocomplete/complete.d dsymbol/src/dsymbol/utils.d dsymbol/src/dsymbol/ufcs.d dsymbol/src/dsymbol/type_lookup.d dsymbol/src/dsymbol/tests.d dsymbol/src/dsymbol/symbol.d dsymbol/src/dsymbol/string_interning.d dsymbol/src/dsymbol/semantic.d dsymbol/src/dsymbol/scope_.d dsymbol/src/dsymbol/modulecache.d dsymbol/src/dsymbol/import_.d dsymbol/src/dsymbol/deferred.d dsymbol/src/dsymbol/conversion/third.d dsymbol/src/dsymbol/conversion/second.d dsymbol/src/dsymbol/conversion/package.d dsymbol/src/dsymbol/conversion/first.d dsymbol/src/dsymbol/cache_entry.d dsymbol/src/dsymbol/builtin/symbols.d dsymbol/src/dsymbol/builtin/names.d libdparse/src/std/experimental/lexer.d libdparse/src/dparse/trivia.d libdparse/src/dparse/strings.d libdparse/src/dparse/stack_buffer.d libdparse/src/dparse/rollback_allocator.d libdparse/src/dparse/parser.d libdparse/src/dparse/lexer.d libdparse/src/dparse/formatter.d libdparse/src/dparse/entities.d libdparse/src/dparse/astprinter.d libdparse/src/dparse/ast.d containers/src/containers/unrolledlist.d containers/src/containers/ttree.d containers/src/containers/treemap.d containers/src/containers/slist.d containers/src/containers/simdset.d containers/src/containers/package.d containers/src/containers/openhashset.d containers/src/containers/internal/storage_type.d containers/src/containers/internal/node.d containers/src/containers/internal/mixins.d containers/src/containers/internal/hash.d containers/src/containers/internal/element_type.d containers/src/containers/internal/backwards.d containers/src/containers/immutablehashset.d containers/src/containers/hashset.d containers/src/containers/hashmap.d containers/src/containers/dynamicarray.d containers/src/containers/cyclicbuffer.d msgpack-d/src/msgpack/value.d msgpack-d/src/msgpack/unpacker.d msgpack-d/src/msgpack/streaming_unpacker.d msgpack-d/src/msgpack/register.d msgpack-d/src/msgpack/packer.d msgpack-d/src/msgpack/package.d msgpack-d/src/msgpack/exception.d msgpack-d/src/msgpack/common.d msgpack-d/src/msgpack/buffer.d msgpack-d/src/msgpack/attribute.d -Icontainers/src -Imsgpack-d/src -Ilibdparse/src -Idsymbol/src -Jbin -wi -O -release -inline -ofbin/dcd-server
/bin/bash: line 1: dmd: command not found
make: *** [makefile:119: dmdserver] Error 127
user@debian:~/DCD$ DC=ldc2 make
git describe --tags > bin/githash.txt
mkdir -p bin
dmd common/src/dcd/common/socket.d common/src/dcd/common/messages.d common/src/dcd/common/dcd_version.d common/src/dcd/common/constants2.d common/src/dcd/common/constants.d src/dcd/server/server.d src/dcd/server/main.d src/dcd/server/autocomplete/util.d src/dcd/server/autocomplete/symbols.d src/dcd/server/autocomplete/package.d src/dcd/server/autocomplete/localuse.d src/dcd/server/autocomplete/doc.d src/dcd/server/autocomplete/complete.d dsymbol/src/dsymbol/utils.d dsymbol/src/dsymbol/ufcs.d dsymbol/src/dsymbol/type_lookup.d dsymbol/src/dsymbol/tests.d dsymbol/src/dsymbol/symbol.d dsymbol/src/dsymbol/string_interning.d dsymbol/src/dsymbol/semantic.d dsymbol/src/dsymbol/scope_.d dsymbol/src/dsymbol/modulecache.d dsymbol/src/dsymbol/import_.d dsymbol/src/dsymbol/deferred.d dsymbol/src/dsymbol/conversion/third.d dsymbol/src/dsymbol/conversion/second.d dsymbol/src/dsymbol/conversion/package.d dsymbol/src/dsymbol/conversion/first.d dsymbol/src/dsymbol/cache_entry.d dsymbol/src/dsymbol/builtin/symbols.d dsymbol/src/dsymbol/builtin/names.d libdparse/src/std/experimental/lexer.d libdparse/src/dparse/trivia.d libdparse/src/dparse/strings.d libdparse/src/dparse/stack_buffer.d libdparse/src/dparse/rollback_allocator.d libdparse/src/dparse/parser.d libdparse/src/dparse/lexer.d libdparse/src/dparse/formatter.d libdparse/src/dparse/entities.d libdparse/src/dparse/astprinter.d libdparse/src/dparse/ast.d containers/src/containers/unrolledlist.d containers/src/containers/ttree.d containers/src/containers/treemap.d containers/src/containers/slist.d containers/src/containers/simdset.d containers/src/containers/package.d containers/src/containers/openhashset.d containers/src/containers/internal/storage_type.d containers/src/containers/internal/node.d containers/src/containers/internal/mixins.d containers/src/containers/internal/hash.d containers/src/containers/internal/element_type.d containers/src/containers/internal/backwards.d containers/src/containers/immutablehashset.d containers/src/containers/hashset.d containers/src/containers/hashmap.d containers/src/containers/dynamicarray.d containers/src/containers/cyclicbuffer.d msgpack-d/src/msgpack/value.d msgpack-d/src/msgpack/unpacker.d msgpack-d/src/msgpack/streaming_unpacker.d msgpack-d/src/msgpack/register.d msgpack-d/src/msgpack/packer.d msgpack-d/src/msgpack/package.d msgpack-d/src/msgpack/exception.d msgpack-d/src/msgpack/common.d msgpack-d/src/msgpack/buffer.d msgpack-d/src/msgpack/attribute.d -Icontainers/src -Imsgpack-d/src -Ilibdparse/src -Idsymbol/src -Jbin -wi -O -release -inline -ofbin/dcd-server
/bin/bash: line 1: dmd: command not found
make: *** [makefile:119: dmdserver] Error 127
user@debian:~/DCD$ 

@baryluk
Copy link

baryluk commented Oct 20, 2023

dub does not work either

user@debian:~/DCD$ env | grep ^DC
user@debian:~/DCD$ dub build
Fetching msgpack-d 1.0.4 (getting selected version)...
Fetching libdparse 0.23.0 (getting selected version)...
Fetching emsi_containers 0.9.0 (getting selected version)...
Warning: License in subpackage dcd:dsymbol is different than it's parent package, this is discouraged.
Invalid variable: DC
user@debian:~/DCD$ dub --version
DUB version 1.27.0-3, built on Aug 13 2022

@WebFreak001
Copy link
Member

try updating DUB, there was an issue in there a few versions ago that fixed this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants