On Wednesday, September 11, 2002, at 04:59 PM, Jim Magee wrote: On Wednesday, September 11, 2002, at 06:42 AM, Stiphane Sudre wrote: In 10.2, there are some headers that vanished. This leads to the impossibility to compile some code which was compiling fine on 10.1. A (maybe bad) example is this kind of compilation error: /System/Library/Frameworks/Kernel.framework/Headers/netinet/ tcpip.h:66: field `ti_i' has incomplete type What is the recommended solution in this situation? You have to include <netinet/ip_var.h> before including <netinet/tcpip.h>. You may also have to include something else before including <netinet/ip_var.h>. I didn't look to see if that was end of the ordering dependencies. In fact, my problem is not with the need to #include any file before or after. The real issue is that the files are missing from /usr/include in a complete Mac OS X 10.2 install (by complete, I mean everything checked, last dev Tools, etc...). Currently, I'm using the header files from a 10.1 backup but it's far from being a good solution. So I'm asking for a better/recommended/official solution. That's just the way BSD headers do things. To change it would break BSD [in-kernel] compatibility. But having BSD [in-kernel] compatibility also implies something else. As you will see, the definition of struct ipovly [the type for the ti_i field] is marked __APPLE_API_PRIVATE. That's you indicator that you have to be prepared to have your software track the OS on a release-for-release basis. I swear I'm not using it directly, it's just the header that needs it. I would not dare using APPLE_API_PRIVATE stuff. If that's not your cup of tea (and it's certainly not the typical business model of any long-time Mac developer), we are in the process of creating a set of more sustainable APIs for such kernel extensions. But as good as we are at guessing your needs, we aren't psychic. You [all] need to let us know what services you need sustainable interfaces for. Well do our best to include those [or comparable equivalents]. This makes me think I'm currently wondering why memcmp is said not to be defined when strings.h is included in a C source of a Kernel extensions. -- Stephane _______________________________________________ darwin-kernel mailing list | darwin-kernel@lists.apple.com Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/darwin-kernel Do not post admin requests to the list. They will be ignored.