Create a precompiled library?

Hello,

I am wanting to release some source code for an Arduino project I am working but there is a big chunk of the source code I am not allowed to release for number of reasons. One way I can get around this is if I can somehow have some of the code as precompiled blobs without its source available but not sure if this is possible.
Is it possible to create a precompiled library and have it work with the current Arduino IDE?

There is a possibility that it will work, part of the core is pre-compiled. Why can't you release the source of your own project?

It won't be much of a learning experience if people only have half the code. I personally wouldn't use it as I like to verify code that I use. There is no guarantee your code is bug free or even efficient. With out the potential to input my own tweaks onto the code it would never make it to a release stage.

There is a fair bit of commercial IP (mine and others) tied up in the hardware and software.
I thought it might be nice if I offer some example code and give people a chance to play with some of the software if they have the hardware but I am not allowed to open up the protocols used for the hardware and server communications. So this means currently I am not allowed to release any code.

Well, I'm not sure of the process, but I would be interested to know the process anyway.

A quick browse seems its quite straight forward once you have the generated header:

For instance, if you have #include "all.h", and you have all.h.gch in the same directory as all.h, then the precompiled header file will be used if possible, and the original header will be used otherwise.

You could just use an empty .h to trigger the .gch.
The biggest concern I have is weather the IDE will copy it to the temp directory so it can actually be used.