Hi, 

I had to build the ruby port and was wondering why make package stopped with 
an error. It took me a while to figure out that I had the tcl/tk packages 
instaleld with the -threaded FLAVOR. 

When compiling ruby, I've seen this:

cc -I. -I../.. -I../../. -I../.././ext/thread -I/usr/local/include -
DOPENSSL_NO_STATIC_ENGINE  -DUSE_MEM_POOLS -fPIC -O2 -pipe  -fPIC -c thread.c   
                                                                                
                               
thread.c: In function 'wait_condvar':                                           
                                                                                
                                                                                
                   
thread.c:686: warning: passing argument 1 of 'rb_ensure' from incompatible 
pointer type                                                                    
                                                                                
                        
cc -shared  -fPIC -o ../../.ext/i386-openbsd4.7/thread.so thread.o -L. -L../.. 
-L/usr/local/lib -Wl,-R/usr/local/lib -L.  -Wl,-E  -Wl,-R -Wl,/usr/local/lib -
L/usr/local/lib -lruby  -lm   -lc                                               
                      
cp ../.././ext/thread/lib/thread.rb ../../.ext/common                           
                                                                                
                                                                                
                   
compiling tk                                                                    
                                                                                
                                                                                
                   
*****************************************************************************   
                                                                                
                                                                                
                   
**                                                                              
                                                                                
                                                                                
                   
** PTHREAD SUPPORT MODE ERROR:                                                  
                                                                                
                                                                                
                   
**                                                                              
                                                                                
                                                                                
                   
**   Ruby is not compiled with --enable-pthread, but your Tcl/Tk                
                                                                                
                                                                                
                   
**   library seems to be compiled with pthread support. This                    
                                                                                
                                                                                
                   
**   combination may cause frequent hang or segmentation fault                  
                                                                                
                                                                                
                   
**   errors when Ruby/Tk is working. We recommend that you NEVER                
                                                                                
                                                                                
                   
**   create the library with such a combination of pthread support.             
                                                                                
                                                                                
                   
**                                                                              
                                                                                
                                                                                
                   
**   Please recompile Ruby with the "--enable-pthread" configure option         
                                                                                
                                                                                
                   
**   or recompile Tcl/Tk with the "--disable-threads" configure option.         
                                                                                
                                                                                
                   
**                                                                              
                                                                                
                                                                                
                   
*****************************************************************************   
                                                                                
                                                                                
                   
compiling tk/tkutil                                                             
                                                                                
                                                                                
                   
compiling win32ole                                                              
                                                                                
                                                                                
                   
compiling zlib 
...
and then later on make package, it errored out with a lot of files missing.

Installing tcl/tk default ports fixed to build ruby.

Then tried to install ruby with --enable-pthread, with a non-threaded tcl/tk. 
Then when building ruby, it whines the other way around, but at least all 
files are there and the package gets created. But I think adding the --enable-
pthread unconditionally is probably not the right way. Maybe a -threaded 
FLAVOR like tcl/tk has?

cheers,
Sebastian


Reply via email to