rdmd problem

Comrad comrad.karlovich at gmail.com
Fri Apr 5 12:27:25 UTC 2019


On Monday, 1 April 2019 at 11:23:43 UTC, Andre Pany wrote:
> On Monday, 1 April 2019 at 11:10:06 UTC, Comrad wrote:
>> I have a strange problem with rdmd:
>>> cat test.d
>> #!/usr/bin/env rdmd -version=test
>> import std.stdio;
>> void main()
>> {
>>     writeln("Hello, world with automated script running!");
>> }
>>
>> --------------------
>> This hangs, but if I remove compile options it does work. 
>> Overall it doesn't work with any compiler options.
>>
>>> dmd --version
>> DMD64 D Compiler v2.085.0
>> Copyright (C) 1999-2019 by The D Language Foundation, All 
>> Rights Reserved written by Walter Bright
>>
>>> lsb_release -a
>> No LSB modules are available.
>> Distributor ID: Ubuntu
>> Description:    Ubuntu 14.04.5 LTS
>> Release:        14.04
>> Codename:       trusty
>>
>>> gcc --version
>> gcc (Ubuntu 4.9.4-2ubuntu1~14.04.1) 4.9.4
>> Copyright (C) 2015 Free Software Foundation, Inc.
>> This is free software; see the source for copying conditions.  
>> There is NO
>> warranty; not even for MERCHANTABILITY or FITNESS FOR A 
>> PARTICULAR PURPOSE.
>
> I am not sure wheter compiler arguments works at the shebang 
> line. If it works there might be the issue, that the file is 
> passed first to rdmd and then the compiler argument. Arguments 
> after the file name are handled as application arguments and 
> passed to the application.
>
> What definitely works is using dub and single package file
> https://dub.pm/advanced_usage
> You can define the versions in the json/sdl section.
>
> Kind regards
> Andre

Sorry,
the documentation doesn't allow me to understand easily, how to 
use it without additional pain. The link you gave doesn't 
describe a clear method for those, who never used dub before.
Anyway... I was able to solve my problem in a convenient for me 
way (using #!/usr/bin/rdmd --shebang -version=test -O)

Thank you anyhow!


More information about the Digitalmars-d mailing list