[postgis-users] Error when building from source on mac os x 10.6
William Kyngesburye
woklist at kyngchaos.com
Tue Oct 19 06:38:57 PDT 2010
The machine architecture is not the same as what you archs you compile for, though GCC does default to x86_64.
Anyways...
Did you try setting only "-arch x86_64", without i386?
P.S. Are you compiling everything yourself for any paricular reason? Have you tried my PostGIS package?
On Jul 19, 2011, at 4:00 AM, Gis Mage wrote:
> Hi, again!
>
> Thanks for your clues, but that didn't help.
> I still have the same error.
> I've exported and double checked theese variables.
> I've rebuilt GEOS and PROJ with this flags.
>
> My arch is:
> uname -m
> x86_64
>
> I still get the same
> "ld: symbol(s) not found for architecture i386"
> error.
>
> But it fires up in a different place now:
>
> "_lwline_free", referenced from:
> _LWGEOM_addpoint in lwgeom_functions_basic.o
> _LWGEOM_envelope in lwgeom_functions_basic.o
> _LWGEOM_line_from_mpoint in lwgeom_functions_basic.o
> _BOX2DFLOAT4_to_LWGEOM in lwgeom_box2dfloat4.o
> ld: symbol(s) not found for architecture i386
> collect2: ld returned 1 exit status
> lipo: can't open input file: /var/tmp//cccyfTRP.out (No such file or directory)
> make[1]: *** [postgis-2.0.so] Error 1
> make: *** [all] Error 1
>
> Is there still a library built for a different arch?
> How to check that out?
>
>
> 2011/7/18 William Kyngesburye <woklist at kyngchaos.com>
> It looks like the different parts of postgis compilation (ie most of it comes from the Postgres make system) don't have the same information about what architectures to compile for.
>
> I always specify these before configuring postgis:
>
> export CFLAGS="-Os -arch i386 -arch x86_64"
> export PG_CPPFLAGS="-arch i386 -arch x86_64"
> export SHLIB_LINK="-arch i386 -arch x86_64"
> export LDFLAGS="-arch i386 -arch x86_64"
>
> Note that you need to know which architectures GEOS, PROJ and Postgres are compiled for. Use as many -arch flags in each of the above exports as is common to these. It may be i386 and x86_64, but it could also be only x86_64. If i386 is the only common arch, you should recompile to get at least x86_64.
>
> On Jul 17, 2011, at 11:42 AM, Gis Mage wrote:
>
> > Hi list!
> > I'm trying to build postgis from source on a snow leopard machine.
> > So I download the 1.5.3 source, configure like this:
> >
> > sudo ./configure --prefix=/opt/postgis --with-pgconfig=/opt/pgsql/bin/pg_config --mandir=/opt/pgsql/man --with-geosconfig=/opt/geos/bin/geos-config --with-projdir=/opt/proj
> >
> > and get a successful result:
> >
> > PostGIS is now configured for x86_64-apple-darwin10.7.0
> >
> > -------------- Compiler Info -------------
> > C compiler: gcc -g -O2
> > C++ compiler: g++ -g -O2
> >
> > -------------- Dependencies --------------
> > GEOS config: /opt/geos/bin/geos-config
> > GEOS version: 3.3.0
> > PostgreSQL config: /opt/pgsql/bin/pg_config
> > PostgreSQL version: PostgreSQL 9.1beta3
> > PROJ4 version: 47
> > Libxml2 config: /usr/bin/xml2-config
> > Libxml2 version: 2.7.3
> > PostGIS debug level: 0
> >
> > -------- Documentation Generation --------
> > xsltproc: /usr/bin/xsltproc
> > xsl style sheets:
> > dblatex:
> > convert:
> >
> > Then I do
> > sudo make
> > And get an error:
> >
> > "_lwline_free", referenced from:
> > _askml2_inspected_buf in lwgeom_kml.o
> > _askml2_inspected_size in lwgeom_kml.o
> > ld: symbol(s) not found for architecture i386
> > collect2: ld returned 1 exit status
> > lipo: can't open input file: /var/tmp//ccsIJfa2.out (No such file or directory)
> > make[1]: *** [postgis-1.5.so] Error 1
> > make: *** [postgis] Error 2
> >
> > So I've checked my /var/tmp dir and I really don't have ccsIJfa2.out file.
> > What am I doing wrong here?
> >
-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/
"We are at war with them. Neither in hatred nor revenge and with no particular pleasure I shall kill every ___ I can until the war is over. That is my duty."
"Don't you even hate 'em?"
"What good would it do if I did? If all the many millions of people of the allied nations devoted an entire year exclusively to hating the ____ it wouldn't kill one ___ nor shorten the war one day."
<Ha, ha> "And it might give 'em all stomach ulcers."
- Tarzan, on war
More information about the postgis-users
mailing list