|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript |
D.gnu - GDC port to Solaris?
Hello, is anyone working on a port of GDC to Sun Solaris running on a Sparc (sparc-sun-solaris2.9)? The website doesn't mention Sun Solaris explicitly so I didn't expect it to work, but I tried anyway. I used GCC 3.4.3 and GDC 0.8 and followed the installation instructions. There were a lot of warnings and in the gcc/d/dmd/ subdirectory I had to add #include <alloca.h> to the files that use alloca(). Apart from that, everything compiled fine and a "gdc" binary was created. However, when trying to compile a simple "hello world" program, the fresh compiler crashed. The processor is 64-bit, but it can run 32-bit code. I've guessed that from the fact that the regular GCC which is installed creates working 32-bit code by default, unless you specify the -m64 option. My naive idea now is that it might be easier to get an initial version of GDC to work on Solaris that only supports the creation of 32-bit code. Perhaps someone has already succeeded in this. Marcel Dec 07 2004
Marcel Martin wrote:Hello, is anyone working on a port of GDC to Sun Solaris running on a Sparc (sparc-sun-solaris2.9)? The website doesn't mention Sun Solaris explicitly so I didn't expect it to work, but I tried anyway. I used GCC 3.4.3 and GDC 0.8 and followed the installation instructions. There were a lot of warnings and in the gcc/d/dmd/ subdirectory I had to add #include <alloca.h> to the files that use alloca(). Apart from that, everything compiled fine and a "gdc" binary was created. However, when trying to compile a simple "hello world" program, the fresh compiler crashed. The processor is 64-bit, but it can run 32-bit code. I've guessed that from the fact that the regular GCC which is installed creates working 32-bit code by default, unless you specify the -m64 option. My naive idea now is that it might be easier to get an initial version of GDC to work on Solaris that only supports the creation of 32-bit code. Perhaps someone has already succeeded in this. Dec 19 2004
Oskar Linde wrote:The crashes are because some functions doing unaligned reads (which is fine on x86 but not on the sparc architecture.) Not too hard to fix thou. Dec 26 2004
Anders F Björklund wrote:Oskar Linde wrote:The crashes are because some functions doing unaligned reads (which is fine on x86 but not on the sparc architecture.) Not too hard to fix thou. Dec 27 2004
Oskar Linde wrote:On the sparc architecture a unaligned read results in an exception being raised by the cpu. SunOS handles this in about the same way as an attempt to read an illegal page, i.e. the program crashes with a "bus error" (SIGBUS) instead of a "segmentation fault" (SIGSEGV). Dec 27 2004
On the sparc architecture a unaligned read results in an exception being raised by the cpu. SunOS handles this in about the same way as an attempt to read an illegal page, i.e. the program crashes with a "bus error" (SIGBUS) instead of a "segmentation fault" (SIGSEGV). Dec 27 2004
Thomas Kuehne wrote:Any ideas how to check instruction alignment on x86 from within D or C? Dec 27 2004
|