From: Albert Chin Date: 2006-11-03T00:15:13+09:00 Subject: Re: Compiling C++ module for Ruby Paul Brannan wrote: > On Tue, Oct 31, 2006 at 03:05:05PM +0900, Albert Chin wrote: >> What needs to change in extconf.rb to link against a C++ compiler? If >> I set CONFTEST_C="conftest.cxx", then gcc is smart enough to build it >> with g++. However, that is not the case for C compilers from Sun, HP, >> IBM, etc. If Ruby was built with the vendor C compiler, what changes >> need to be made to extconf.rb so C++ tests use the corresponding >> vendor C++ compiler? > > There is a rule in the generated makefile for building .cxx files using > $(CXX). Ruby 1.9 sets this variable; earlier versions seem to rely on > it getting set by make. > > If CONFIG['CXX'] is unset, you could use find_executable to find a > binary with the same name as a common C++ compiler (autoconf seems to > search $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC). Then > open the Makefile for writing and add the line: > > CXX=#{your_cxx_binary} But that wouldn't help run the C++ compiler during extconf.rb. How would you run HP's aCC C++ compiler to test for a symbol during extconf.rb, for example? -- albert chin (china @at@ thewrittenword .dot. com)