0

There is two options - SunStudio or gcc toolchain. What is the common practice to adhere when developing a driver -- make sure it builds with both compilers for 32-bit and 64-bit modes, or pick one compiler and stick to it?

Thanks.

Mark
  • 6,052
  • 8
  • 61
  • 129

2 Answers2

3

There is no point building a 32 bit driver when you target Solaris 11.2 as this kernel is only released as 64 bit.

Both Solaris Studio and gcc can be used. The former is likely more popular for everything kernel related and you'll probably find more documentation about using it than gcc.

jlliagre
  • 29,783
  • 6
  • 61
  • 72
  • Do you mean that in the world of Solaris it is more 'natural' to use native tools then ported from GNU? BTW, http://unix.stackexchange.com/questions/72882/solaris-development-host is slightly different opinion. – Mark Jun 27 '15 at 00:17
  • 3
    You seem to be missing you asked and I replied about developing a device driver. This is a very specific domain which is quite different than compiling mainstream, portable code which the link you refer to is about. – jlliagre Jun 27 '15 at 00:45
3

Until you can find someone who has used recent versions of the entire suite of tools available under both GCC with all its add-ons and Oracle's Studio toolset, you're not going to get a good answer. I'll say that I've yet to see an open-source tool that is as good as Oracle's Studio collect/analyzer tools at performance analysis of multithreaded large-scale applications, especially on Solaris. Most people who blindly post "GCC is better!" don't know the Oracle tools even exist.

Regarding device drivers, jlliagre's comment is quite relevant - it's quite possible to run into situations where a "native" compiler will work where a "foreign" one won't.

(Posting as an answer for emphasis)

Andrew Henle
  • 32,625
  • 3
  • 24
  • 56