在使用 32 位编译程序时
gcc -m32 program.c -o program
我收到以下错误 fatal error :sys/socket.h:没有这样的文件或目录
但是用
gcc program.c -o program
一切正常
有解决办法吗?
最佳答案
我个人的类似问题解决如下: 顺便说一句,我正在使用 cygwin。 此错误背后的原因是试图在窗口环境中编译 unix c 套接字示例。 如果你想使用 windows,我认为你应该安装 cygwin 以及编译 c 程序所需的所有库;“gcc 是用于生成 Your_program_in_exe 的库”。 然后开始编译服务器 server.follow this了解套接字基础知识的教程。 您应该有一个客户端程序和一个服务器程序。然后转到(使用 cd 命令)到您存储代码的目录并执行命令:
1- gcc socket-Server.c -o server 生成服务器的执行文件。 这将生成 server.exe 文件,它允许您使用 ./server.exe 在您的 PC 上运行服务器。如果您的文件没有错误,您应该在您的目录中有 .exe 文件。
2- gcc socket-client.c -o client 为客户端生成执行文件。这将生成文件 client.exe 文件,它允许您执行客户端。如果没有错误,您应该将 client.exe 与您的 服务器一起.exe 在文件目录下。 下面的屏幕截图显示了我使用的命令和基本输出
关于c - fatal error : sys/socket. h:32 位上没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16496635/