views:

152

answers:

5

What might be a better choice?

I have my code (mostly C - as output from the GNU Eiffel compiler and some C++ for the GUI bindings) working with Sun Studio compiler and gcc.

But i now have to setup a new developer computer and wonder if i should use Solaris with DTrace, locklint or Linux with Valgrind etc for development.

It's just about introspecting and debugging and the development is done in GNU (SmallEiffel) and therefore there is no help in any way. But the output is plain C, so C tools help a lot.

I bought some books about the Solaris and printed the developer documentation. I have to say that it seems to be a much better development environment then all the undocumented Linux tools. But Sun Studio works also on Linux...

+2  A: 

This is an opinion so I'm marking it Community Wiki.

Solaris' days are past. That's it, really, that's all I wanted to say, thanks for listening.

Oh, and by the way, so is AIX and HP-UX. Linux is the present and the future (at least for a while) - that's where you should be putting your effort. That's where you'll get the best bang per buck for your support dollars. That's where you'll get hordes of opinionated clowns like myself willing to give you help at the drop of a hat.

paxdiablo
I agree with AIX and HP-UX. This seem to be a problem and the fate of all server only operating systems. But at the moment Solaris is not dead yet for posix developers. But i'm afraid that Larry does the same mistakes and it will be dead soon.
Lothar
+1  A: 

This depends totally on what you are aiming for. If you are developing primarily for Linux, create a Linux box. If your primary target is Solaris, use that. But if you plan to target both OS's, make sure that you have a box for each one. That way you will be able to test on both, and notice small bugs / issues that crop up on one platform but not the other.

Apart from that, it's up to you. If your tools are available on both platforms, and you have no other reason to pick one over the other, then just go by your personal preference. Without more information, there isn't much more advice to give.

a_m0d
+1  A: 

To choose a machine as your main dev platform... It's simple: What suits you best?

"Linux with Valgrind etc" or "Solaris with DTrace, locklint"

The environment and toolset is markedly different, even if you can use Sun Studio in both. In fact, why are you doing this question, what is bothering you about Solaris? That should give you some ideas. If you've never used Linux as a main dev platform, you should to be able to compare and switch back if necessary. Because, as I said, the toolset is markedly different, even when GNUing Solaris.

Lastly, don't forget if you aim for cross platform code you should test it in all platforms where it is supposed to run on.

Vinko Vrsalovic
Well i know Unix programming. But the toolchains and tools like Valgrind and DTrace have a huge learning curve and it don't want to learn all of them. So i really have to find the "best" solution at least in terms of feature lists it should be comparible.
Lothar
AFAIK, Valgrind and DTrace are totally different beasts, and there's no comparable tool on the other platform (that I know of). I imagine you should make a required features list and put it on the question to get better insights.
Vinko Vrsalovic
A: 

Neither, Mac is best.

Mostly because you can have the Xcode IDE.

Mr. Man
XCode is IMHO one of the worst GUI's i've ever seen. And it forces you into MacOSX development - i need to stay cross platform with hand written build systems.I own two iMacs and the UI on all apps is so terrible i just use them as overpriced DVD and MP3 players.
Lothar
+1  A: 

I recently said good-bye to my Sun workstation and have moved to x64 Linux. I miss the stability of Solaris on Sun hardware...nVIDIA driver issues are making me crazy.

Though I like developing on Solaris WITH Sun hardware, the following two things bothered me the most about the platform:

  1. If you want to use the latest version of libraries, you'll have to build them yourself every time. Blastwave helps out in the Solaris world, but often the packages are several versions behind. Installing Boost was quite challenging on my Sparc hardware and required a lot of study and learning just to get Boost installed.
  2. Availability of tools is quite limited, and often free or developer versions of commercial software are not available for the Solaris OS.

If DTrace is the "killer application" for you, take a look at STrace for Linux and see if it offers the same features you're looking for. The docs are somewhat lacking in Linux, but you can usually find what you're looking for in man pages, mailing lists and what not.

Dr. Watson
STrace is not good enough and to find DTrace and Solaris Internals is just a magnitude better documented to find the correct probes for profiling. But you are right. I will keep WinXP as my main development space and only use Solaris or Linux for the cross platform testing/porting because it is indeed unstable and slow.
Lothar