|
From: Nicola V. <nvi...@gm...> - 2012-05-27 19:07:06
|
On 27/mag/2012, at 20:59, Nicola Vitacolonna wrote: > > On 27/mag/2012, at 16:47, Mason wrote: > >> On Sat, May 26, 2012 at 7:32 PM, Michael Paquier >> <mic...@gm...> wrote: >>> >>> >>> On Sun, May 27, 2012 at 4:58 AM, Nicola Vitacolonna <nvi...@gm...> >>> wrote: >>>> >>>> Hi all, >>>> I have tried to build v1.0beta2 on OS X 10.7.4, using gmake 3.82 and gcc >>>> 4.2.1, but the process fails at an early stage with: >>>> >>>> ar crs libgtm.a gtm_opt_scanner.o aset.o mcxt.o gtm_utils.o elog.o >>>> assert.o stringinfo.o gtm_lock.o gtm_list.o gtm_serialize.o >>>> gtm_serialize_debug.o gtm_opt_handler.o >>>> ranlib libgtm.a >>>> Undefined symbols for architecture x86_64: >>>> "_threadinfo_key", referenced from: >>>> _AllocSetContextCreate in aset.o >>>> _AllocSetAlloc in aset.o >>>> _AllocSetRealloc in aset.o >>>> _current_memcontext in mcxt.o >>>> _MemoryContextSwitchTo in mcxt.o >>>> _MemoryContextCreate in mcxt.o >>>> _MemoryContextInit in mcxt.o >>>> etc... >>>> >>>> Since the architecture (x86_64) is supported, I am just wondering whether >>>> there is something so specific to Linux platforms that it is impossible or >>>> very hard to port Postgres-XC to other OSes, or whether I am just missing >>>> something. >>> >>> MacOSX is based on free-BSD, so there should not be that many problems to >>> compile... >>> But the module whose compilation is failing here is GTM, a module exclusive >>> to XC that has been developed and tested only on Linux platforms. I recall >>> that it is possible to compile it by modifying a but the Makefiles, and I >>> recall one guy who did some development in OSX. So Mason, any ideas about >>> how to compile XC in OSX? >>> I have ne experience developing XC in MacOS, but if someone has a patch to >>> allow compilation on OSX, I will gladly commit it. >> >> I am attaching a short patch that I use. I am still using Mac OS X 10.6.8. > > Thanks a lot, now everything builds fine (OS X 10.7.4)! > I also had to delete src/gtm/path/libgtmpath.a before building. Probably, that file should not be in the source tarball. Btw, it seems that “make” will do (no need for gmake). Nicola |