Jump to content

Compiling IONDRV doesn't work

Xcode Compile

  • Please log in to reply
16 replies to this topic

#1
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
I tried to test Xcode by compiling the IOGraphics source from opensource.apple.com, but it isn't working out? I have installed dtrace, kext-tools, bootstrap and cxxfilt, I didn't mod the source, and it always says "Build succeeded". Yet the compiled Kexts are not to be found on the HDD! I found the output directory inside the Xcode.app, but the Build folder was empty? Could someone explain what I missed?

#2
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
Hey there, did you build for release in the project settings or debug? You have to have the setting set for release in the project settings.

#3
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
Where do I find this setting? Under Product I found Build for, but nothing of that helps. Is it found when I double Klick the xcodeproj file in the Sidebar?

#4
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
Right where I have highlighted in red is the build part I was referring to
Posted Image

#5
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
I did find the settings in my prohect, thanks to your picture. But the only options are these: Default, Deployment, Development. The only one which does something is development, and that only gives me a .kext with nothing more than a .plist file... Default and Deployment don't give out anything. I did not change the project, I just tried to build it. I'm quite new to Xcode, could I have missed something else? The files I use are these: http://opensource.ap...IOGraphics-409/ and I build with Xcode 4.3.3.

#6
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
Can you zip the files? I for my life can't save files from Apple's opensource site not sure why..

#7
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
Here they are: The Original untouched Source, and the Modded Source. I only changed one line of code in the modded. Both won't compile for me, no matter if they are modded or original:

Attached File  IOGraphics.zip   628.4KB   3 downloads

#8
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
What OS are you trying to compile for? Be sure you're compiling a 64 bit kext if you're 10.7 and upwards.

I actually dug a bit into why it wasn't compiling and there were two headers that were missing that I included which are IOGraphicsTypesPrivate.h and IOFramebufferPrivate.h but for some odd reason I thought the compile would have been fine but the private framebuffer yielded a good deal of errors I don't have time to weed through and fix atm.

Posted Image

#9
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
There is no need to fix those errors :) They occur because your Xcode misses cxxfilt, dtrace, kext-tools and bootstrap-cmds. The Headers aren't needed, it compiles just fine (Build succeeded, yet the kext is missing). And since I want to compile for Lion 10.7.4 (IOGraphics-409 are for 10.7.4), I would like to know where I change the mode?

#10
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
Lol silly me, I apologize. Just make sure that the Deployment and base SDK are set to 10.7 and you should be fine.

Posted Image

and

Posted Image

#11
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
Thakns for replying, but it still only reads "Build succeeded", and won't give out any files. I have the project on my doesktop. Should I put it the folder somewehere else?

#12
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
Try right clicking on the kext selection on the left hand pane and show in finder and see when you build the file if the file's updated time stamp matches your build time. It doesn't matter where the project sits what matters is more so the kext landing in the build folder within the directory.

Try looking in the project section on where the build location for the debug and release are set to because the kexts when built should land in that directory that is set.

#13
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
It compiles, but throws errors without an end... 121 on IONRDVSupport, and 5 on IOGraphicsFamily. How come Apples own source code doesn't compile? I checked the Developer Library, but the only info on compiling their sources is for the XNU. And I can't event add the missing file "IOGraphicsPrivate", even though I have the original in the IOKIT/graphics folder.
And if it compiles in 2 seconds without an error, the names under the "products" folder are red:

Attached File  Untitled.tiff   562.08KB   2 downloads

#14
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
You're facing the issue I was plagued with when I tried compiling myself a couple days ago.. Not even sure why this one doesn't do so when I've compiled others in the past that have worked. You tried building for both 32 and 64 correct? Why can't you add the header btw? It should be able to be added without an issue. Also, just installed the command line tools and what not and my issue seems to be with the IOFramebufferPrivate and nor will Xcode accept that I've added in the private framebuffer into IOFramebuffer

#15
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
The settings are set for i386, x86_64 - and it reads "My Mac 32-Bit" near the Run and Stop button. I also added the in red written missing .c and .h files, which I found in older source versions. Could it be that I need to use the Xcode version for 10.7.4, since thats the version of IONDRV that I want to compile.

Edit: I can only boot 32-Bit, since I have the first MacBook Air from early 2008 (MBA1,1).

#16
TH3L4UGH1NGM4N

TH3L4UGH1NGM4N

    (~_~)

  • Retired
  • 1,156 posts
  • Gender:Male
  • Location:Wonderland
  • Interests:(~_^)
Xcode isn't version specific to compiling so long as the SDK you're building against matches what your target is.

#17
genben

genben

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
Just wanted to report back if someone else has this problem - after trying it on a 64 Bit machine, it worked. But I had to import the 2 missing files which were shown in red. You can find them in source version 40.





Also tagged with one or more of these keywords: Xcode, Compile


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy