From: Patrick H. <pa...@13...> - 2007-06-28 22:14:18
|
Patrick Hartling wrote: > Doug McCorkle wrote: >> Hello, >> I am trying to build CppDOM 0.7.8 on darwin and I get this error= : >> >> using prefix: /Users/mccdo/Desktop/cppdom-0.7.8/build.darwin/instlink= s >> types: [['debug', 'optimized'], True] >> libtypes: [['shared', 'static'], False] >> archs: [['ia32', 'ppc', 'ppc64', 'universal'], True] >> Processing combo: type:debug, libtype:['shared', 'static'], =20 >> arch:ia32 >> Processing combo: type:debug, libtype:['shared', 'static'], =20 >> arch:ppc >> >> scons: warning: Two different environments were specified for target /= =20 >> Users/mccdo/Desktop/cppdom-0.7.8/build.darwin/instlinks/lib/debug/=20 >> libcppdom-0_7_8.dylib, >> but they appear to have the same action: installFunc(target, = =20 >> source, env) >> File "/Users/mccdo/Desktop/cppdom-0.7.8/cppdom/SConscript", line 50, = >> in ? >> >> scons: *** Multiple ways to build the same target were specified =20 >> for: /Users/mccdo/Desktop/cppdom-0.7.8/build.darwin/instlinks/lib/=20 >> debug/libcppdom-0_7_8.dylib (from ['/Users/mccdo/Desktop/=20 >> cppdom-0.7.8/build.darwin/type-debug--arch-ia32/cppdom/=20 >> libcppdom-0_7_8.dylib'] and from ['libcppdom-0_7_8.dylib']) >> File "/Users/mccdo/Desktop/cppdom-0.7.8/cppdom/SConscript", line 50, = >> in ? >> mccdo:~/Desktop/cppdom-0.7.8 mccdo$ scons BoostBaseDir=3D/opt/local =20 >> BoostIncludeDir=3D/opt/local/include/boost-1_34 >> >> The last line shows my build line. Not sure what I am doing wrong. >=20 > In general, you shouldn't use the Spirit-based parser. As I understand = it, > it's slower than the basic XML parser in CppDOM. What I am getting at w= ith > this is don't tell the CppDOM build where to find Boost. >=20 > Other than that, the only way that I can get CppDOM to build on Mac OS = X is > to build it as a universal binary. The instructions for that are in the= > README file. The problem lies in SConsAddons, but I haven't been able t= o > figure out what is really going wrong. I did some more digging into this, and I am not so sure that this is a bu= g in SConsAddons but rather a shortcoming of the installation directory structure currently in use. In any event, I added some more instructions = to the README file for post-0.7.8 releases. The 0.7.8 version of how to build on Mac OS X is as follows: On Mac OS X, the build may auto-detect that it can build multiple architectures (not necessarily universal binaries), but this case is n= ot currently handled well. SCons will complain that there are multiple wa= ys to build the same target and exit with an error. To work around this, specify the desired architecture explicitly (pass var_arch=3Dppc, var_arch=3Dia32, or var_arch=3Dppc64 on the scons command line) and di= sable universal binary compilation (pass darwin_universal=3Dno). For example= , to target PowerPC alone, use the following command: scons var_arch=3Dppc darwin_universal=3Dno Otherwise, build a universal binary: scons var_arch=3Duniversal darwin_sdk=3D/Developer/SDKs/MacOSX10.4u= =2Esdk -Patrick --=20 Patrick L. Hartling VP Engineering, Infiscape Corp. http://www.infiscape.com/ |