Thread overview
module `socket` is in file 'std/c/linux/socket.d' which cannot be read
Aug 03, 2018
bachmeier
Aug 03, 2018
Adam D. Ruppe
Aug 03, 2018
bachmeier
Aug 03, 2018
Adam D. Ruppe
Aug 03, 2018
bachmeier
Aug 03, 2018
Adam D. Ruppe
Aug 03, 2018
bachmeier
Aug 03, 2018
Adam D. Ruppe
Aug 03, 2018
bachmeier
August 03, 2018
I'm trying to use Adam's cgi.d. I'm trying to compile previously working code, but I get the following error:

cgi.d(2711): Error: module `socket` is in file 'std/c/linux/socket.d' which cannot be read
import path[0] = /usr/include/dmd/phobos
import path[1] = /usr/include/dmd/druntime/import

Any suggestions?
August 03, 2018
On Friday, 3 August 2018 at 15:33:57 UTC, bachmeier wrote:
> Any suggestions?

The line right next to it, commented, is the solution. Try grabbing the new one from git master, or swap the comment yourself.

Older dmd versions used std.c.linux.socket, newer ones use core.sys.posix.socket. I supported old dmd versions going back like 3 years, but I guess they just recently removed that old name so wanna switch to the new one now.

but the transition has been happening for a while so I just made the change and it should still support a year or two of dmd versions!
August 03, 2018
On Friday, 3 August 2018 at 15:42:53 UTC, Adam D. Ruppe wrote:
> On Friday, 3 August 2018 at 15:33:57 UTC, bachmeier wrote:
>> Any suggestions?
>
> The line right next to it, commented, is the solution. Try grabbing the new one from git master, or swap the comment yourself.
>
> Older dmd versions used std.c.linux.socket, newer ones use core.sys.posix.socket. I supported old dmd versions going back like 3 years, but I guess they just recently removed that old name so wanna switch to the new one now.
>
> but the transition has been happening for a while so I just made the change and it should still support a year or two of dmd versions!

Swapping the comment and changing to master both fix the original error, but then I get

cgi.d(2718): Error: undefined identifier sockaddr_in
cgi.d(2723): Error: undefined identifier inet_pton

August 03, 2018
On Friday, 3 August 2018 at 16:13:06 UTC, bachmeier wrote:
> Swapping the comment and changing to master both fix the original error, but then I get

ugh, what dmd version you on?
August 03, 2018
On Friday, 3 August 2018 at 16:19:15 UTC, Adam D. Ruppe wrote:
> On Friday, 3 August 2018 at 16:13:06 UTC, bachmeier wrote:
>> Swapping the comment and changing to master both fix the original error, but then I get
>
> ugh, what dmd version you on?

2.081.1

I find it hard to not have all my computers running the latest and greatest because the steady stream of breaking changes in DMD makes it impossible to use more than one version.
August 03, 2018
On Friday, 3 August 2018 at 16:41:09 UTC, bachmeier wrote:
> 2.081.1

huh, it works for me... you on Linux or some other system?

The embedded_httpd_processes version is Linux specific, on other OSes it uses threads...
August 03, 2018
On Friday, 3 August 2018 at 16:47:42 UTC, Adam D. Ruppe wrote:
> On Friday, 3 August 2018 at 16:41:09 UTC, bachmeier wrote:
>> 2.081.1
>
> huh, it works for me... you on Linux or some other system?
>
> The embedded_httpd_processes version is Linux specific, on other OSes it uses threads...

I'm running Ubuntu 16.04.
August 03, 2018
On Friday, 3 August 2018 at 16:51:37 UTC, bachmeier wrote:
> I'm running Ubuntu 16.04.

OK, I see it now, I had another .di file on my system than the stock one.

Pushed a new version to git, it needs to also import a second module

                        import core.sys.posix.netinet.in_;

too.
August 03, 2018
On Friday, 3 August 2018 at 17:09:37 UTC, Adam D. Ruppe wrote:
> On Friday, 3 August 2018 at 16:51:37 UTC, bachmeier wrote:
>> I'm running Ubuntu 16.04.
>
> OK, I see it now, I had another .di file on my system than the stock one.
>
> Pushed a new version to git, it needs to also import a second module
>
>                         import core.sys.posix.netinet.in_;
>
> too.

Thanks Adam. That fixed it. Your speedy help is much appreciated.