我正在尝试使用32位Python 2.7(来自python.org)和来自MacPorts的cairo 1.10.2在我的OS X 10.5上安装PyCairo(来自tarball源码).所以我正在安装“py2cairo”.当我运行python ./waf configure时,我明白了
Checking for 'cairo' >= 1.10.0 : not found
@H_502_8@我这里有cairo文件……
$ls /opt/local/include/cairo cairo-deprecated.h cairo-gobject.h cairo-script-interpreter.h cairo-tee.h cairo-xlib-xrender.h cairo.h cairo-features.h cairo-pdf.h cairo-script.h cairo-version.h cairo-xlib.h cairo-ft.h cairo-ps.h cairo-svg.h cairo-xcb.h cairo-xml.h $ls /opt/local/lib/cairo cairo-fdr.0.so* cairo-fdr.la* cairo-sphinx.0.so* cairo-sphinx.la* libcairo-trace.0.dylib* libcairo-trace.dylib@ cairo-fdr.a cairo-fdr.so@ cairo-sphinx.a cairo-sphinx.so@ libcairo-trace.a libcairo-trace.la*
@H_502_8@但是我将哪个目录传递给哪个参数?这些在指定cairo库时看起来不相关:
$python ./waf --help ./options() waf [commands] [options] Main commands (example: ./waf build -j4) build : executes the build clean : cleans the project configure: configures the project dist : distcheck: checks if the project compiles (tarball from 'dist') distclean: removes the build directory install : installs the targets on the system list : lists the targets to execute step : executes tasks in a step-by-step fashion,for debugging uninstall: removes the targets installed update : updates the plugins from the *waflib/extras* directory Options: --version show program's version number and exit -h,--help show this help message and exit -j JOBS,--jobs=JOBS amount of parallel jobs (1) -k,--keep keep running happily even if errors are found -v,--verbose verbosity level -v -vv or -vvv [default: 0] --nocache ignore the WAFCACHE (if set) --zones=ZONES debugging zones (task_gen,deps,tasks,etc) --nopyc Do not install bytecode compiled .pyc files (configuration) [Default:install] --nopyo Do not install optimised compiled .pyo files (configuration) [Default:install] configure options: -o OUT,--out=OUT build dir for the project -t TOP,--top=TOP src dir for the project --download try to download the tools if missing build and install options: -p,--progress -p: progress bar; -pp: ide output --targets=TARGETS task generators,e.g. "target1,target2" step options: --files=FILES files to process,by regexp,e.g. "*/main.c,*/test/main.o" install/uninstall options: -f,--force force file installation Installation directories: By default,"waf install" will put the files in "/usr/local/bin","/usr/local/lib" etc. An installation prefix other than "/usr/local" can be given using "--prefix",for example " --prefix=$HOME" --prefix=PREFIX installation prefix [default: '/usr/local/'] --destdir=DESTDIR installation root [default: ''] --exec-prefix=EXEC_PREFIX installation prefix [Default: ${PREFIX}] Pre-defined installation directories: --bindir=BINDIR user executables [Default: ${EXEC_PREFIX}/bin] --sbindir=SBINDIR system admin executables [Default: ${EXEC_PREFIX}/sbin] --libexecdir=LIBEXECDIR program executables [Default: ${EXEC_PREFIX}/libexec] --sysconfdir=SYSCONFDIR read-only single-machine data [Default: ${PREFIX}/etc] --sharedstatedir=SHAREDSTATEDIR modifiable architecture-independent data [Default: ${PREFIX}/com] --localstatedir=LOCALSTATEDIR modifiable single-machine data [Default: ${PREFIX}/var] --libdir=LIBDIR object code libraries [Default: ${EXEC_PREFIX}/lib] --includedir=INCLUDEDIR C header files [Default: ${PREFIX}/include] --oldincludedir=OLDINCLUDEDIR C header files for non-gcc [Default: /usr/include] --datarootdir=DATAROOTDIR read-only arch.-independent data root [Default: ${PREFIX}/share] --datadir=DATADIR read-only architecture-independent data [Default: ${DATAROOTDIR}] --infodir=INFODIR info documentation [Default: ${DATAROOTDIR}/info] --localedir=LOCALEDIR locale-dependent data [Default: ${DATAROOTDIR}/locale] --mandir=MANDIR man documentation [Default: ${DATAROOTDIR}/man] --docdir=DOCDIR documentation root [Default: ${DATAROOTDIR}/doc/${PACKAGE}] --htmldir=HTMLDIR html documentation [Default: ${DOCDIR}] --dvidir=DVIDIR dvi documentation [Default: ${DOCDIR}] --pdfdir=PDFDIR pdf documentation [Default: ${DOCDIR}] --psdir=PSDIR ps documentation [Default: ${DOCDIR}] C Compiler Options: --check-c-compiler=CHECK_C_COMPILER On this platform (darwin) the following C-Compiler will be checked by default: "gcc"
@H_502_8@
最佳答案
好的,得到了这个部分.不得不补充一下
export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig:$PKG_CONFIG_PATH
@H_502_8@在python ./waf配置之前,我的〜/ .MacOSX / environment.plist文件中的PKG_CONFIG_PATH中定义了一些其他路径.
从阅读日志文件得到这个说
Checking for 'cairo' >= 1.10.0 ['/opt/local/bin/pkg-config','--atleast-version=1.10.0','cairo'] not found
@H_502_8@然后意识到/ opt / local / bin / pkg-config –libs cairo正在寻找其他地方(GTK目录).一些额外的信息here.设置PKG_CONFIG_PATH变量后,我能够进入下一步.