ruby-lsapi fails to install on OS X (Leopard) PPC

#1
Hi all,

I'm a new convert to the LiteSpeed 'family' and I'm trying to setup a staging server on an old iMac G5 (PPC), running the latest version of OS X 10.5 (Leopard) (Client version).

I got LS 3.3 installed fine, couldn't do the LS admin PHP upgrade though, but installed PHP (5.2.5) just fine myself.

However, when trying to install the ruby-lsapi (sudo gem install ruby-lsapi) or the manual way (ruby-lsapi-2.7) I get the following error:

Code:
iMac:~ kematzy$ sudo gem install ruby-lsapi
Bulk updating Gem source index for: http://gems.rubyforge.org
Building native extensions.  This could take a while...
ERROR:  Error installing ruby-lsapi:
	ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb install ruby-lsapi
checking for main() in -lsocket... no
creating Makefile

make
gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I.  -fno-common -arch ppc -arch i386 -Os -pipe -fno-common  -c lsapilib.c
gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I.  -fno-common -arch ppc -arch i386 -Os -pipe -fno-common  -c lsruby.c
cc -arch ppc -arch i386 -pipe -bundle -o lsapi.bundle lsapilib.o lsruby.o -L"." -L"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib" -L. -arch ppc -arch i386    -lruby  -lpthread -ldl -lm  
Undefined symbols for architecture ppc:
  "_environ", referenced from:
      _environ$non_lazy_ptr in lsapilib.o
ld: symbol(s) not found for architecture ppc
collect2: ld returned 1 exit status
Undefined symbols for architecture i386:
  "_environ", referenced from:
      _environ$non_lazy_ptr in lsapilib.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
lipo: can't open input file: /var/tmp//ccC8yf2L.out (No such file or directory)
make: *** [lsapi.bundle] Error 1


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/ruby-lsapi-2.7 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/ruby-lsapi-2.7/ext/lsapi/gem_make.out
iMac:~ kematzy$
I can get ruby-lsapi installed just fine on an Intel version of OS X (10.5) so it seems to relate to the PowerPC architecture.

Anyone having any suggestions / fixes to overcome this problem ?

Every bit of assistance would be much appreciated.
 

mistwang

LiteSpeed Staff
#2
If you want, please download our tar.gz package and apply a little patch to lsapilib.c, then install it manually.

change code
Code:
exern char ** environ;
static void unset_lsapi_envs()
{
     char ** env = environ;
to
Code:
#include <crt_externs.h>
static void unset_lsapi_envs()
{
     char ** env = NSGetEnviron();
If "NSGetEnviron()" gives an error, try changing it to "_NSGetEnviron()".

Please let me know the result if you try above.
 
#3
If you want, please download our tar.gz package and apply a little patch to lsapilib.c, then install it manually.
...SNIP...
Please let me know the result if you try above.
Hi mistwang :)

Thanks a lot for your reply!! I have tested your code above but it is still not working.

When I tried the first version I got this error in the console:

Code:
iMac:LiteSpeed kematzy$ cd ruby-lsapi-2.7
iMac:ruby-lsapi-2.7 kematzy$ ruby setup.rb config
---> ext
---> ext/lsapi
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby /Users/kematzy/temp/LiteSpeed/ruby-lsapi-2.7/ext/lsapi/extconf.rb
checking for main() in -lsocket... no
creating Makefile
<--- ext/lsapi
<--- ext
iMac:ruby-lsapi-2.7 kematzy$ 
iMac:ruby-lsapi-2.7 kematzy$ ruby setup.rb setup
---> ext
---> ext/lsapi
make
gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I/Users/kematzy/temp/LiteSpeed/ruby-lsapi-2.7/ext/lsapi  -fno-common -arch ppc -arch i386 -Os -pipe -fno-common  -c lsapilib.c
lsapilib.c: In function 'unset_lsapi_envs':
lsapilib.c:2007: warning: initialization makes pointer from integer without a cast
lsapilib.c: In function 'unset_lsapi_envs':
lsapilib.c:2007: warning: initialization makes pointer from integer without a cast
cc -arch ppc -arch i386 -pipe -bundle -o lsapi.bundle lsapilib.o lsruby.o -L"." -L"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib" -L. -arch ppc -arch i386    -lruby  -lpthread -ldl -lm  
Undefined symbols for architecture ppc:
  "_NSGetEnviron", referenced from:
      _LSAPI_Init_Env_Parameters in lsapilib.o
ld: symbol(s) not found for architecture ppc
collect2: ld returned 1 exit status
Undefined symbols for architecture i386:
  "_NSGetEnviron", referenced from:
      _LSAPI_Init_Env_Parameters in lsapilib.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/N2/N2FjhSqeGEyCBvkcH820wk+++TI/-Tmp-//ccuBXYv9.out (No such file or directory)
make: *** [lsapi.bundle] Error 1
setup.rb:655:in `command': system("make") failed (RuntimeError)
	from setup.rb:664:in `make'
	from setup.rb:1258:in `setup_dir_ext'
	from setup.rb:1532:in `__send__'
	from setup.rb:1532:in `traverse'
	from setup.rb:1549:in `dive_into'
	from setup.rb:1530:in `traverse'
	from setup.rb:1534:in `traverse'
	from setup.rb:1533:in `each'
	 ... 8 levels...
	from setup.rb:826:in `__send__'
	from setup.rb:826:in `invoke'
	from setup.rb:773:in `invoke'
	from setup.rb:1578
imac:ruby-lsapi-2.7 kematzy$

Then when I changed the "NSGetEnviron()" to "_NSGetEnviron()" I got the following:

Code:
## "_NSGetEnviron()" version
iMac:ruby-lsapi-2.7 kematzy$ ruby setup.rb config
---> ext
---> ext/lsapi
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby /Users/kematzy/temp/LiteSpeed/ruby-lsapi-2.7/ext/lsapi/extconf.rb
checking for main() in -lsocket... no
creating Makefile
<--- ext/lsapi
<--- ext

iMac:ruby-lsapi-2.7 kematzy$ ruby setup.rb setup
---> ext
---> ext/lsapi
make
gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I/Users/kematzy/temp/LiteSpeed/ruby-lsapi-2.7/ext/lsapi  -fno-common -arch ppc -arch i386 -Os -pipe -fno-common  -c lsapilib.c
lsapilib.c: In function 'unset_lsapi_envs':
lsapilib.c:2007: warning: initialization from incompatible pointer type
lsapilib.c: In function 'unset_lsapi_envs':
lsapilib.c:2007: warning: initialization from incompatible pointer type
cc -arch ppc -arch i386 -pipe -bundle -o lsapi.bundle lsapilib.o lsruby.o -L"." -L"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib" -L. -arch ppc -arch i386    -lruby  -lpthread -ldl -lm  
<--- ext/lsapi
<--- ext

iMac:ruby-lsapi-2.7 kematzy$ ruby setup.rb install
rm -f InstalledFiles
---> ext
---> ext/lsapi
mkdir -p /Library/Ruby/Site/1.8/universal-darwin9.0
install lsapi.bundle /Library/Ruby/Site/1.8/universal-darwin9.0/.
<--- ext/lsapi
<--- ext
iMac:ruby-lsapi-2.7 kematzy$
OK, so that version seems to have installed 'OK', but then when trying to load a simple dummy rails app (dummy.imac) I get the following output in the /usr/local/lsws/logs/stderr.log

Code:
/Library/Ruby/Site/1.8/universal-darwin9.0/lsapi.bundle: [BUG] Bus Error
ruby 1.8.6 (2007-06-07) [universal-darwin9.0]

/Library/Ruby/Site/1.8/universal-darwin9.0/lsapi.bundle: [BUG] Bus Error
ruby 1.8.6 (2007-06-07) [universal-darwin9.0]

/Library/Ruby/Site/1.8/universal-darwin9.0/lsapi.bundle: [BUG] Bus Error
ruby 1.8.6 (2007-06-07) [universal-darwin9.0]
And the following output in /usr/local/lsws/logs/error.log

Code:
2007-11-24 18:51:35.278 [NOTICE] Loading LiteSpeed/3.3 Standard ...
2007-11-24 18:51:35.287 [NOTICE] [ADMIN] server socket: uds://usr/local/lsws/admin/tmp/admin.sock.7792
2007-11-24 18:51:35.288 [NOTICE] Loading configuration from /usr/local/lsws/conf/httpd_config.xml ...
2007-11-24 18:51:35.293 [NOTICE] Recovering server socket: [*:80]
2007-11-24 18:51:35.293 [NOTICE] Recovering server socket: [*:7080]
2007-11-24 18:51:35.293 [INFO] old priority: 0, new priority: 0
2007-11-24 18:51:35.294 [INFO] [config:server:basic] For better obscurity, server version number is hidden in the response header.
2007-11-24 18:51:35.323 [NOTICE] The maximum number of file descriptor limit is set to 18446744073709551615.
2007-11-24 18:51:35.403 [NOTICE] [AutoRestarter] new child process with pid=21385 is forked!
2007-11-24 18:51:35.406 [NOTICE] Core dump is enabled.
2007-11-24 18:51:35.406 [NOTICE] [child: 21385] Successfully change current user to nobody
2007-11-24 18:51:35.415 [INFO] [Rails:dummy.imac:/] add child process pid: 21386
2007-11-24 18:51:35.421 [NOTICE] [Child: 21385] Setup swapping space...
2007-11-24 18:51:35.422 [NOTICE] [Child: 21385] LiteSpeed/3.3 Standard starts successfully!
2007-11-24 18:51:36.121 [NOTICE] [AutoUpdate] Checking for new releases...
2007-11-24 18:51:36.641 [INFO] [AutoUpdate] No new update.
2007-11-24 18:51:37.903 [INFO] [AdminPHP] add child process pid: 21388
2007-11-24 18:51:41.302 [INFO] Remove pid: 21386
2007-11-24 18:51:48.703 [INFO] [Rails:dummy.imac:/] add child process pid: 21398
2007-11-24 18:51:51.056 [NOTICE] [192.168.0.2:49798-0#dummy.imac] No request delivery notification has been received from LSAPI process:-2, possible run away process.
2007-11-24 18:51:51.057 [INFO] [192.168.0.2:49798-0#dummy.imac] connection to [uds://tmp/lshttpd/dummy.imac:_.sock] on request #0, error: Operation timed out!
2007-11-24 18:51:53.545 [INFO] Remove pid: 21398
2007-11-24 18:51:54.062 [NOTICE] [192.168.0.2:49798-0#dummy.imac] No request delivery notification has been received from LSAPI process:-2, possible run away process.
2007-11-24 18:51:54.062 [INFO] [192.168.0.2:49798-0#dummy.imac] connection to [uds://tmp/lshttpd/dummy.imac:_.sock] on request #0, error: Operation timed out!
2007-11-24 18:51:54.063 [INFO] [Rails:dummy.imac:/] add child process pid: 21404
2007-11-24 18:51:57.052 [NOTICE] [192.168.0.2:49798-0#dummy.imac] No request delivery notification has been received from LSAPI process:-2, possible run away process.
2007-11-24 18:51:57.052 [INFO] [192.168.0.2:49798-0#dummy.imac] connection to [uds://tmp/lshttpd/dummy.imac:_.sock] on request #0, error: Operation timed out!
2007-11-24 18:51:57.052 [NOTICE] [192.168.0.2:49798-0#dummy.imac] oops! 503 Service Unavailable
2007-11-24 18:51:58.657 [INFO] Remove pid: 21404
2007-11-24 18:57:09.413 [INFO] Remove pid: 21388
The 'dummy.imac' site serves up static html files just fine, but as soon as you hit a Rails (ruby) part you get a 503 error.

Hope the above is detailed and extensive enough. If not please let me know what else I can do to assist?

Now a brief retraction:

I previously said that I could get it to install on a Intel version, but that was a bit incorrect, I'm sad to say.

The ruby-lsapi does not work on a clean new install of Leopard on an recent MacBook Pro, that I just tried it on. So most likely it has something to do with the default Apple 10.5 ruby install.
(my previous test was on an upgraded (Tiger -> Leopard) system with a /usr/local/ installed version of ruby that I compiled myself, or through MacPorts).

I could compile my own ruby again, but I'd prefer not, if at all possible.

Apologies if I misled you previously.

A bit of googling found this page [http://trac.macosforge.org/projects/ruby/wiki/WhatsNewInLeopard] where there is something about the unique (?) 2-way compile of things on OS X. See the section starting with "Ruby C extensions will by default compile 2-way fat, for ppc and i386...."

That part, in my novice mind, might explain why it went OK on an old ruby install, but not on a default Apple install of Ruby. BUT, I know very little about these kind of things. :(
 
Last edited:
#4
Just thought I should add this experiment as well.

While installing MySQL from this article [http://www.hivelogic.com/narrative/articles/installing-mysql-on-mac-os-x] I saw its use of ARCHFLAGS when installing a gem.

So I tried this command: [ sudo env ARCHFLAGS="-arch i386" gem install ruby-lsapi ] on the MacBook Pro and the PPC version on the iMac with the following same result:

Code:
MacBookPro:~ kematzy$ sudo env ARCHFLAGS="-arch i386" gem install ruby-lsapi
Building native extensions.  This could take a while...
ERROR:  While executing gem ... (Gem::Installer::ExtensionBuildError)
    ERROR: Failed to build gem native extension.

ruby extconf.rb install ruby-lsapi
checking for main() in -lsocket... no
creating Makefile

make
gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I.  -fno-common -arch i386 -Os -pipe -fno-common  -c lsapilib.c
gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I.  -fno-common -arch i386 -Os -pipe -fno-common  -c lsruby.c
cc -arch i386 -pipe -bundle -o lsapi.bundle lsapilib.o lsruby.o -L"." -L"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib" -L. -arch i386    -lruby  -lpthread -ldl -lm  
Undefined symbols:
  "_environ", referenced from:
      _environ$non_lazy_ptr in lsapilib.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [lsapi.bundle] Error 1


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/ruby-lsapi-2.7 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/ruby-lsapi-2.7/ext/lsapi/gem_make.out
MacBookPro:~ kematzy$
Maybe it adds some further insights ?
 

mistwang

LiteSpeed Staff
#5
I think your ruby is not built for Mac OSX 10.5, but for a earlier release as I noticed "universal-darwin9.0",

Maybe you should rebuild ruby from source code for ppc-darwin10.5?
 
#6
I think your ruby is not built for Mac OSX 10.5, but for a earlier release as I noticed "universal-darwin9.0",

Maybe you should rebuild ruby from source code for ppc-darwin10.5?
Hi mistwang,

I haven't built ruby at all on the two systems with problems, in other words, the ruby used is the default ruby that Apple installs with the Mac OS X 10.5 (Leopard) system.

I have completely rebuilt both my systems, an iMac & MacBook Pro with the latest client version of Leopard, and in the process erased all previous data on the HD. Whatever version of system I have are the default versions provided by the retail version of Leopard bought from an Apple Store. :)

The system where it did work was a system with a non-Apple version of ruby being the active ruby version.

Hope that clarifies things even further.
 

mistwang

LiteSpeed Staff
#7
OK, I see. I think the ruby built by Apple for all version of MacOSX, you may have to built your own from source specifically for Leopard.
 
#8
OK, I see. I think the ruby built by Apple for all version of MacOSX, you may have to built your own from source specifically for Leopard.
Hi mistwang,

Thanks for responding!

However, I am not sure I understand what you mean there?

Are you believing that the default version of ruby installed by Apple and specifically bundled with the Leopard release of it's operating system is not specific enough for Leopard ?
== IF so, well then you are 100% wrong. Sorry ;-)

Are you saying that I'll have to install my own version of ruby, instead of the very excellent version of ruby installed by Apple specifically for Mac OS X 10.5 (Leopard), just so that I can compile the ruby-lsapi gem ??
== I would very much prefer NOT to have to do so, since I'm sure that could/would cause some unknown conflicts/issues.

I'm sorry, I do not in anyway wish to offend you, I'm just trying to understand your point.

==== SIDENOTE ====
Just in case you are not familiar with OS X, please let me clarify the following:

Since OS X Leopard runs on two different architectures, PPC & Intel, Apple has created a system whereby applications can be 'Universal', ie: the same app/binary has two included executable binaries (one for each architecture). Depending on the architecture the app/binary is running on the corresponding binary for that architecture is activated/executed.

'Universal' does therefore not mean 'for any OS X version', but rather 'for both PPC & Intel'.
(They also have support for 32 & 64 bit architectures/binaries)
===============


The problem with the current version of ruby-lsapi is that it does not compile on the default ruby on OS X Leopard (aka 'ruby 1.8.6 (2007-06-07 patchlevel 36) [universal-darwin9.0]'), due to some configuration issue somewhere, most likely in the ruby-lsapi code.

If I were a betting man, I'd guess the problem has to do with the fact that Apple's ruby is Universal (ie both for PPC & Intel architectures inside the same binary), which is obviously not particularly common.

I hope the above information will assist in working out the actual problem with the ruby-lsapi gem/source on OS X Leopard. IF I had the knowledge and understanding of the process involved, I would happily fix it. As it is I can't, but I live in hope that you, or someone else can.

I think LS is a great alternative to Apache & Mongrel for both PHP and Rails apps, and as such I am hoping to be able to use LS both locally (for development/testing) and on my server(s).

PS: I'll add the following log messages:
Code:
2007-11-25 01:26:10.085	NOTICE	[192.168.0.2:50266-4#dummy.imac:lsapi] No request delivery notification has been received from LSAPI process:-2, possible run away process.
2007-11-25 01:26:10.085	INFO	[192.168.0.2:50266-4#dummy.imac:lsapi] connection to [uds://tmp/lshttpd/dummy.imac:_.sock] on request #0, error: Operation timed out!
While searching around for things, I found that ruby was crashing and writing a report each time I did an attempt to load my dummy.imac rails app.
Code:
Process:         ruby [41525]
Path:            /usr/bin/ruby
Identifier:      ruby
Version:         ??? (???)
Code Type:       PPC (Native)
Parent Process:  lshttpd [41493]

Date/Time:       2007-11-25 01:26:14.399 +0000
OS Version:      Mac OS X 10.5.1 (9B18)
Report Version:  6

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Codes: KERN_PROTECTION_FAILURE at 0x0000000000000002
Crashed Thread:  0

Thread 0 Crashed:
0   libSystem.B.dylib             	0x93cd7ca8 __kill + 12
1   libSystem.B.dylib             	0x93d7c7b4 abort + 84
2   libruby.1.dylib               	0x0014857c rb_gc_mark_trap_list + 600
3   libSystem.B.dylib             	0x93cd5bb0 _sigtramp + 64

Thread 0 crashed with PPC Thread State 32:
  srr0: 0x93cd7ca8  srr1: 0x0000f030   dar: 0x00000002 dsisr: 0x40000000
    r0: 0x00000025    r1: 0xbfffa4c0    r2: 0x00000008    r3: 0x00000000
    r4: 0x00000000    r5: 0x00000001    r6: 0x0000000a    r7: 0x00000030
    r8: 0x00000008    r9: 0x00000008   r10: 0x93ca0cf0   r11: 0xa0815490
   r12: 0x93cd7c94   r13: 0x00000000   r14: 0x00000000   r15: 0x00000000
   r16: 0x00000000   r17: 0x00000000   r18: 0x00000000   r19: 0x00000000
   r20: 0x00000000   r21: 0x00000000   r22: 0x00000000   r23: 0x000024e9
   r24: 0x00000000   r25: 0x00000002   r26: 0x004efbe0   r27: 0x00166110
   r28: 0xbfffa55c   r29: 0xa0813424   r30: 0x00000039   r31: 0x93d7c76c
    cr: 0x42004402   xer: 0x00000000    lr: 0x93d7c7b8   ctr: 0x93cd7c94
vrsave: 0x00000000

Binary Images:
    0x1000 -     0x1fff +ruby ??? (???) <7bee7b7b46805870795e7603aff0c0d9> /usr/bin/ruby
   0x91000 -    0x93ffe  thread.bundle ??? (???) <4be40969dadd036e3379b947e3d7de25> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/thread.bundle
   0x97000 -    0x98fff  etc.bundle ??? (???) <195b54e0ba566237b0dc20f91a52c37f> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/etc.bundle
   0x9b000 -    0xa3fff  bigdecimal.bundle ??? (???) <db206864b1bf0f5a2956004eeb572752> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/bigdecimal.bundle
   0xa6000 -    0xa8ffc  stringio.bundle ??? (???) <467a9a4814ccc4129704b2ab9935685c> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/stringio.bundle
   0xca000 -   0x174ffb  libruby.1.dylib ??? (???) <bffd5aef06759057c66e15a92ef4201c> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/libruby.1.dylib
  0x194000 -   0x196ffd  strscan.bundle ??? (???) <4bd35e5b9248030d69775346513b56c7> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/strscan.bundle
  0x199000 -   0x1aefff  syck.bundle ??? (???) <9929443e71d5896007ff5e629415a6c4> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/syck.bundle
  0x1b3000 -   0x1e1ffd  nkf.bundle ??? (???) <cbf3a3722a9abe5c4dc071fc4318ae4c> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/nkf.bundle
  0x1ec000 -   0x1f3fff  socket.bundle ??? (???) <1711eb2ef2fbd6b08c0c556e62915f5e> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/socket.bundle
  0x1f7000 -   0x1f7ffd  fcntl.bundle ??? (???) <2c04af009debc506436362f1de6f62eb> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/fcntl.bundle
  0x1fa000 -   0x1fbfff  md5.bundle ??? (???) <14e2f430e06b7651ada79d9441d692d7> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/digest/md5.bundle
  0x39f000 -   0x3a0fff  digest.bundle ??? (???) <babf4f0f24010301e3e782faf31bbd23> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/digest.bundle
  0x3a7000 -   0x3a9ffc  cparse.bundle ??? (???) <228a8ce7223d29b0160f60d5ec391252> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/racc/cparse.bundle
  0x3ac000 -   0x3aeffe  iconv.bundle ??? (???) <41003861dd2339671ca900a61397f810> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/iconv.bundle
  0x3b1000 -   0x3b7ffd  zlib.bundle ??? (???) <9ebd6509dd1848b21df33832f3108b98> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/zlib.bundle
  0x3ba000 -   0x3e3fff  openssl.bundle ??? (???) <f49b7c493629d70e40e0a62a3fd56380> /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0/openssl.bundle
  0x3ee000 -   0x3f3ffc +lsapi.bundle ??? (???) /Library/Ruby/Site/1.8/universal-darwin9.0/lsapi.bundle
0x8fe00000 - 0x8fe309d3  dyld 95.3 (???) <a7be977c203ec5c76b2f25a7aef66554> /usr/lib/dyld
0x9001f000 - 0x90115ffc  libiconv.2.dylib ??? (???) <05ae1fcc97404173b2f9caef8f8be797> /usr/lib/libiconv.2.dylib
0x91a23000 - 0x91a31fff  libz.1.dylib ??? (???) <1a70dd3594a8c5ad39d785af5da23237> /usr/lib/libz.1.dylib
0x933c2000 - 0x9347cfff  libcrypto.0.9.7.dylib ??? (???) <4ea3d7e9a1c28ac7b17ed80873fe6598> /usr/lib/libcrypto.0.9.7.dylib
0x93a13000 - 0x93a3dff7  libssl.0.9.7.dylib ??? (???) <5dac2e94552ad76696c35bd6886f5a92> /usr/lib/libssl.0.9.7.dylib
0x93c54000 - 0x93dedfe3  libSystem.B.dylib ??? (???) <8a6cd873dfa7ada786efac188f95ed1b> /usr/lib/libSystem.B.dylib
0x93fb1000 - 0x93fbcffb  libgcc_s.1.dylib ??? (???) <ea47fd375407f162c76d14d64ba246cd> /usr/lib/libgcc_s.1.dylib
0x9578c000 - 0x95791ff6  libmathCommon.A.dylib ??? (???) /usr/lib/system/libmathCommon.A.dylib
0xffff8000 - 0xffff9703  libSystem.B.dylib ??? (???) /usr/lib/libSystem.B.dylib

Apologies if I'm just wasting space and bandwidth, but I'm just trying to provide you with all the relevant information I can think off and find.
 

mistwang

LiteSpeed Staff
#9
OK, digging a little bit more, the correct patch should be
Code:
#include <crt_externs.h>
static void unset_lsapi_envs()
{
     char ** env = *_NSGetEnviron();
I thought that darwin-9.0 refers to a earlier release of Mac OSX, later found that darwin version does not match MacOSX version at all, so darwin-9.0 might be the latest.

Whether it is a universal binary or not should not matter.
 
#10
Hi mistwang,

You're a legend!! That fixed it perfectly. Works on both systems without a problem. :)

THANK YOU VERY VERY MUCH!!

Yes, I'm truly grateful! I was slightly concerned there for a while, but now I know you guys are backing up an excellent product with even more excellent support !!
 

mistwang

LiteSpeed Staff
#11
Hi Kematzy,

We will release a new release of ruby-lsapi with the fix. Thanks for your help in fixing this issue. Please help us spreading the words if you don't mind. :)
 
Top