首先,我开发了调用OS的C++应用程序(如CopyFile、GetModuleFileName、.(在Windows中)。我不想开发GUI应用程序。我的应用程序像WINDOWS中的服务或控制台一样工作。
第二,标准C++库不提供诸如线程、网络甚至文件管理之类的高级编程功能。
在中,MSDN为希望使用Windows的C++程序员提供了非常好的参考。
例如,在本页:"EncodePointer函数“中,EncodePointer描述了”最低支持的客户端是Windows、Windows和SP2“、"DLL是Kernel32.dll”和.
现在我想开始LINUX编程。我发现了太多的图书馆和参考资料,一些在Fedora工作,一些在Ubunto工作,一些在SUSE和.
但是我想要一个库,它在中工作,所有的LINUX都分发。类似于在所有WINDOWSes中工作的Windows。
我有没有为linux编写一次代码的库?不要担心LINUX的其他发行版?
谢谢。
发布于 2011-04-17 14:44:53
有一个标准应该在大多数Unix类型的系统中工作(除了小错误或一些尚未实现的东西),包括所有Linux发行版、BSD、Solaris、AIX等等。它被称为POSIX或单Unix规范;它们基本上是等价的,但由不同的组发布。您必须支付POSIX的费用,但是单一的Unix规范是网上免费提供。
请注意,一些POSIX是在Windows上实现的,并且有一些系统(如西格温或用于Unix应用程序的Windows服务/子系统 )可以向Windows添加更完整的POSIX支持,尽管这些系统通常需要下载单独的库和运行时组件,而且有时也会使工作变得令人沮丧,因为在Windows和基于Unix的API中,行尾和文件权限的工作方式不同。
除了POSIX之外,Linux和glibc还实现了它们自己的一些系统调用和库例程,因此,如果您只对在Linux上运行而不对其他类似Unix的操作系统感兴趣,那么您可以使用一个稍微丰富一些的API。如果您知道要查找什么调用,可以在Linux上使用man
命令查找文档;系统调用(如fork
或execve
)记录在第2节,库调用(如printf
)记录在第3节。手册页也可以在各种地方找到,比如Linux手册页项目。还有一个用于glibc和Linux系统调用的在线参考的完整的Linux系统调用的在线参考。
如果你想要一本关于这个主题的书,运行Linux手册项目的人Michael写的Linux编程接口应该是相当不错的。
要了解在Linux的所有发行版中应该支持什么,可以查看Linux标准库。与POSIX一样,Linux的大多数发行版通常都支持这一点;这里和那里都会有一些微小的偏差,但总的来说,它应该告诉您对现代Linux的期望。Linux标准库主要引用其他标准,如单一Unix规范/POSIX或文件系统层次标准,但描述了某些特定于Linux的功能本身。
发布于 2011-04-17 14:21:57
是的,你想要POSIX库。
发布于 2011-04-17 14:22:22
撇开每个版本Windows提供的API略有不同这一事实不谈,每个Linux发行版都支持对glibc进行编程,其文档载于手册页的第2节。
https://stackoverflow.com/questions/5694036
复制相似问题