使用 32 位编译我的程序时
gcc -m32 program.c -o program
我收到以下错误致命错误:sys/socket.h:没有这样的文件或目录
但与
gcc program.c -o program
它工作正常
有什么解决方法吗?
我个人的类似问题解决如下:顺便说一下我使用的是cygwin。此错误背后的原因是试图在窗口环境中编译 unix c 套接字示例。如果您想使用 Windows,我认为您应该安装 cygwin 以及编译 c 程序所需的所有库;“gcc 是用于生成 Your_program_in_exe 的库”。然后从编译服务器开始。按照本教程了解套接字的基础知识。您应该有一个客户端和一个服务器程序。然后转到(使用 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与您的server.exe一起放在文件目录中。下面的屏幕截图显示了我使用的命令和基本输出