c - fatal error : sys/socket. h:32 位上没有这样的文件或目录

标签 c linux 32-bit

在使用 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 在文件目录下。 下面的屏幕截图显示了我使用的命令和基本输出 enter image description here

关于c - fatal error : sys/socket. h:32 位上没有这样的文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16496635/

相关文章:

linux - 如何将 Rundeck key 存储传递给脚本

无法将 UNIX/Linux 程序编译为 32 位程序

c - Linux,C : how can I get return value from thread which greate than 4G in a 32bits OS?

C : How to stop the loop when getting the end of input from keyboard or file while using scanf one char at a time

c - 为什么在进行远程过程调用时 UDP 优于 TCP?

C write() 函数没有按预期工作

c - fread/fwrite 将 size 和 count 作为参数的基本原理是什么?

python - 如何使用python脚本编辑sudo权限linux文件

linux - 在 PATH terraform 中设置路径

c# - SetWindowLong/GetWindowLong 和 32 位/64 位 CPU