ubuntu下socket编程涉及到头文件sys/socket.h 和sys/types.h。我是用的codeblocks编辑器,当我想查看socket,h头文件时编辑器提示找不到头文件。
我就想可能是没有设置codeblocks头文件的搜索路径。
好吧,那首先就找找这个文件藏在哪里吧
<span style="font-size:12px;">find / -name socket.h -print
或者locate sys/socket.h</span>
结果显示文件位置为/usr/include/x86_64-linux-gnu/sys/socket.h。我们打开codeblocks——》settting——》compiler——》search directories ,点击add,新增一条路径为
/usr/include/x86_64-linux-gnu/sys/
又一次開始编译文件,选中sys/socket.h右键"open #include <sys/socket.h>"结果竟然还是显示
这就让人非常是尴尬啦。明明已经找到路径加入完毕结果编辑器还是提示找不到。一番搜索查找好最终找到解决方法。Fix by using the following code:
sudo apt-get install build-essential flex libelf-dev libc6-dev-amd64 binutils-dev libdwarf-dev
安装完毕后我们会在/usr/include下发现一个sys目录。
这时我们就能够顺利查看sys/socket.h头文件了。编辑器的提示功能也能够正常使用了。
但打开/usr/include/sys文件夹发现里面都是链接文件,socket.h的连接地址事实上还是指向了/usr/include/x86_64-linux-gnu/sys/socket.h。修复环境后没有设置查找路径编辑器就能够找到,未修复前加入文件的查找路径后却依旧无法找到。这点也是弄不明确。