On Nov 13, 2010, at 1:34 PM, Daniel Macks wrote:

> On Sat, 13 Nov 2010 10:12:41 -0800, Richard Miles  wrote:
>> I am on snow leopard 10.6 using a intel imac:I have been trying to 
>> get smalltalk to compile and it fails
>  
> No, libsigsegv fails, as you can see from the error message. It doesn't 
> matter what you were trying to do that led to this point... 
>  
>> /bin/sh ../libtool --tag=CC   --mode=link gcc  -g -O2 -lc 
>> -no-undefined -L/sw/lib -o libsigsegv.la -rpath /sw/lib handler.lo 
>> stackvma.lo leave.lo dispatcher.lo version.lo  
>> gcc -dynamiclib  -o .libs/libsigsegv.0.0.0.dylib  .libs/handler.o 
> .libs/stackvma.o .libs/leave.o .libs/dispatcher.o .libs/version.o  -lc 
> -L/sw/lib  -install_name  /sw/lib/libsigsegv.0.dylib 
> -Wl,-compatibility_version -Wl,1 -Wl,-current_version -Wl,1.0
>> Undefined symbols:
>>   "_vm_region", referenced from:
>>       _sigsegv_get_vma in stackvma.o
>> ld: symbol(s) not found
>> collect2: ld returned 1 exit status
>> make[2]: *** [libsigsegv.la] Error 1
>> make[1]: *** [all-recursive] Error 1
>> make: *** [all] Error 2
>> ### execution of make failed, exit code 2
>> Removing runtime build-lock... 
>> Removing build-lock package... 
>> /sw/bin/dpkg-lockwait -r fink-buildlock-libsigsegv-2.5-5
>  
> Worked for me just now (10.6; 32-bit fink). The _vm_region symbol is 
> from libSystem, seems suspicious that gcc can't find it. Do you have 
> some nonstandard compiler or system library set?

vm_region() is 32 bit only and even there it's deprecated.

[dan...@lappy:~]$ nm -arch i386 /usr/lib/libSystem.B.dylib | grep vm_region
00015399 T _mach_vm_region
000e5223 T _mach_vm_region_info
000e4ed0 T _mach_vm_region_info_64
00015d6c T _mach_vm_region_recurse
000e629b T _vm_region
000e6032 T _vm_region_64
000e6795 T _vm_region_recurse
000e6504 T _vm_region_recurse_64
[dan...@lappy:~]$ nm -arch x86_64 /usr/lib/libSystem.B.dylib | grep vm_region
00000000000836f2 T _mach_vm_region
0000000000089ac9 T _mach_vm_region_recurse
00000000000cd2d8 T _vm_region_64
00000000000cd568 T _vm_region_recurse_64

vm_region_64() is the replacement function and works on both 32 and 64 bit. I 
don't know when it was introduced. libsigsegv will have to be patched to use 
vm_region_64().

Daniel


------------------------------------------------------------------------------
Centralized Desktop Delivery: Dell and VMware Reference Architecture
Simplifying enterprise desktop deployment and management using
Dell EqualLogic storage and VMware View: A highly scalable, end-to-end
client virtualization framework. Read more!
http://p.sf.net/sfu/dell-eql-dev2dev
_______________________________________________
Fink-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fink-users

Reply via email to