• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
cross-compiling kexts from 10.4
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

cross-compiling kexts from 10.4


  • Subject: cross-compiling kexts from 10.4
  • From: chuck remes <email@hidden>
  • Date: Sun, 11 Sep 2005 19:32:29 -0500

I'm trying to cross-compile a kext from 10.4.2 to 10.3.9.

In my project configuration (General pane) I changed the Target SDK to 10.3.9. I changed the deployment target too. However, when I build my kext I get a ton of errors regarding system structures that are not defined properly or method calls that take different parameters. These errors are related to many structures changing due to the new KPIs released as part of Tiger and that are only part of the 10.4 SDK.

When I look at the detail of how the files are being compiled, I see that it is passing the wrong search paths for the headers. For example:

CompileCplusplus /Volumes/spaceman/cremes/developer/projects/ darwin_tulip debug/src/build/tulip.build/Development/tulip.build/ Objects-normal/ppc/base_tulip.o
/usr/bin/g++-3.3 -c "-Wp,-header-mapfile,/Volumes/spaceman/ cremes/developer/projects/darwin_tulip debug/src/build/tulip.build/ Development/tulip.build/tulip.hmap" -F"/Volumes/spaceman/cremes/ developer/projects/darwin_tulip debug/src/build/Development" -F/ System/Library/Frameworks -I"/Volumes/spaceman/cremes/developer/ projects/darwin_tulip debug/src/build/Development/include" -arch ppc -fno-common -nostdinc -O0 -Wmost -Wno-four-char-constants -Wno- unknown-pragmas -I/System/Library/Frameworks/Kernel.framework/ PrivateHeaders -I/System/Library/Frameworks/Kernel.framework/Headers - fno-builtin -finline -fno-keep-inline-functions -force_cpusubtype_ALL -fno-rtti -fno-exceptions -fcheck-new -msoft-float -fapple-kext - mlong-branch -static -DKERNEL -DKERNEL_PRIVATE -DDRIVER_PRIVATE - DAPPLE -DNeXT -pipe "-fmessage-length=0" -g -I"/Volumes/spaceman/ cremes/developer/projects/darwin_tulip debug/src/build/tulip.build/ Development/tulip.build/DerivedSources" -I"/Volumes/spaceman/cremes/ developer/projects/darwin_tulip debug/src/build/tulip.build/ Development/tulip.build/DerivedSources" "-fpermissive" base_tulip.cpp -o "/Volumes/spaceman/cremes/developer/projects/ darwin_tulip debug/src/build/tulip.build/Development/tulip.build/ Objects-normal/ppc/base_tulip.o"
base_tulip.cpp: In member function `virtual void darwin_tulip::_printMbuf(mbuf*)':
base_tulip.cpp:156: error: invalid use of undefined type `struct mbuf'
/System/Library/Frameworks/Kernel.framework/Headers/IOKit/network/ IONetworkInterface.h:202: error: forward declaration of `struct mbuf'


Notice (-I/System/Library/Frameworks/Kernel.framework/Headers) that it is looking for the system headers at path /System/Library/ Frameworks instead of /Developer/SDKs/MacOSX10.3.9/System/Library/ Frameworks. This code compiles perfectly on 10.3.9 because the headers contain the correct definitions. I thought this was the point of target SDKs in Xcode.

How do I change this behavior so it finds the correct headers in the older SDK?

cr
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Prev by Date: Re: C preprocessor macro
  • Next by Date: library initialization
  • Previous by thread: Re: Having trouble with cross compiling
  • Next by thread: library initialization
  • Index(es):
    • Date
    • Thread