[FEEDBACK] Issue with fd_set, FD_ZERO, FD_SET, FD_SETSIZE : Cygwin

Eliot Moss moss@cs.umass.edu
Tue Feb 7 04:44:29 GMT 2023


On 2/7/2023 2:56 PM, Yeo Kai Wei wrote:
> 
> On 7/2/2023 9:54 am, Eliot Moss wrote:
>> On 2/7/2023 11:34 AM, Yeo Kai Wei wrote:
>>>
>>> On 7/2/2023 7:27 am, Eliot Moss wrote:
>>>> On 2/7/2023 10:03 AM, Yeo Kai Wei via Cygwin wrote:
>>>>>
>>>>> On 7/2/2023 4:59 am, gs-cygwin.com@gluelogic.com wrote:
>>>>>> On Tue, Feb 07, 2023 at 04:33:53AM +0800, Yeo Kai Wei wrote:
>>>>
>>>>> I updated Cygwin to 3.4.5-1.x86_64.
>>>>>
>>>>> $ uname -a
>>>>> CYGWIN_NT-10.0-19045 DESKTOP-P3E71RB 3.4.5-1.x86_64 2023-01-19 19:09 UTC x86_64 Cygwin
>>>>>
>>>>>
>>>>> However, the same problem occurs.
>>>>>
>>>>> Cygwn-devel doesn't seem to work.
>>>>>
>>>>> $ gcc -o selectStdIn selectStdIn.c
>>>>> selectStdIn.c:9:10: fatal error: sys/select.h: No such file or directory
>>>>>   #include <sys/select.h>
>>>>>            ^~~~~~~~~~~~~~
>>>>> compilation terminated.
>>>>
>>>> Well, on my system cygcheck -f /usr/include/sys/select.h clearly says
>>>> that the file came from cygwin-devel-3.4.3-1.  Maybe you misspelled
>>>> cygwin-devel ?  You do have to select the package explicitly, too.
>>>>
>>>> EM
>>>
>>>
>>> Hi Eliot,
>>>
>>> I just reinstalled Cygwin but I'm unsure of what I missed.
>>>
>>> I did "cygcheck -f /usr/include/sys/select.h" and it seems to tell me that I do have 
>>> cygwin-devel-3.4.5-1
>>>
>>> Did I miss a step?
>>
>> What gcc are you running?  Maybe not cygwin's?
>>
>> EM
> 
> Hi Eliot,
> 
> I used "cygcheck -cd" to show all the packages I have.
> 
> I can see "cygwin-devel         3.4.5-1".
> 
> 
> $ cygcheck -cd
> Cygwin Package Information
> Package              Version
> _autorebase          001091-1
> alternatives         1.3.30c-10
> base-cygwin          3.8-2
> base-files           4.3-3
> bash                 4.4.12-3
> bzip2                1.0.8-1
> ca-certificates      2022.2.54-3
> coreutils            9.0-1
> crypto-policies      20190218-1
> cygutils             1.4.17-1
> cygwin               3.4.5-1
> cygwin-devel         3.4.5-1
> dash                 0.5.12-1
> diffutils            3.9-1
> editrights           1.03-1
> file                 5.44-1
> findutils            4.9.0-1
> gawk                 5.2.1-2
> getent               2.18.90-5
> grep                 3.8-2
> groff                1.22.4-1
> gzip                 1.12-1
> hostname             3.13-1
> info                 7.0.2-1
> ipc-utils            1.0-2
> less                 590-1
> libargp              20110921-3
> libattr1             2.5.1-1.20.g0981a7bfe487
> libblkid1            2.33.1-2
> libbz2_1             1.0.8-1
> libfdisk1            2.33.1-2
> libffi6              3.2.1-2
> libgcc1              11.3.0-1
> libgdbm6             1.18.1-1
> libgmp10             6.2.1-2
> libiconv2            1.17-1
> libintl8             0.21.1-2
> liblz4_1             1.9.4-1
> liblzma5             5.4.1-1
> libmpfr6             4.2.0-1
> libncursesw10        6.3-1.20220416
> libp11-kit0          0.23.20-1
> libpcre2_8_0         10.42-1
> libpipeline1         1.5.6-1
> libpopt-common       1.18-1
> libpopt0             1.18-1
> libreadline7         8.2-2
> libsigsegv2          2.10-2
> libsmartcols1        2.33.1-2
> libssl1.1            1.1.1s-1
> libstdc++6           11.3.0-1
> libtasn1_6           4.14-1
> libuuid1             2.33.1-2
> libzstd1             1.5.2-1
> login                1.13-1
> man-db               2.11.2-1
> mintty               3.6.3-1
> ncurses              6.3-1.20220416
> openssl              1.1.1s-1
> p11-kit              0.23.20-1
> p11-kit-trust        0.23.20-1
> rebase               4.6.2-2
> run                  1.3.4-2
> sed                  4.9-1
> tar                  1.34-1
> terminfo             6.3-1.20220416
> terminfo-extra       6.3-1.20220416
> tzcode               2022g-1
> tzdata               2022g-1
> util-linux           2.33.1-2
> vim-minimal          8.2.4372-1
> which                2.20-2
> xz                   5.4.1-1
> zlib0                1.2.13-1
> zstd                 1.5.2-1
> 
> 
> Additionally, what packages do I need to download for the following?
> 
> 
> $ gcc -o basicFork basicFork.c
> basicFork.c: In function 'main':
> basicFork.c:14:9: error: 'SIGCHILD' undeclared (first use in this function); did
>   you mean 'SIGILL'?
>    signal(SIGCHILD, SIG_IGN);
>           ^~~~~~~~
>           SIGILL
> basicFork.c:14:9: note: each undeclared identifier is reported only once for eac
> h function it appears in
> basicFork.c:19:14: warning: implicit declaration of function 'fork' [-Wimplicit-
> function-declaration]
>    pid_t pid = fork();

Yes, but not gcc.  You're using some other installation of gcc.
In bash `type -all gcc` will show you the gcc's it finds, in order.
(It may find the same one multiple times because of links.)

bash is happy to invoke things in the Windows directories if
they're on your path.  For example, `type cmd` shows the
Windows cmd command line for me.

I believe the signal's name is SIGCHLD, not SIGCHILD.

Best - EM




More information about the Cygwin mailing list