[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