2012-03-28 10 views
0

Ich habe Boost-Python auf anderen Macs in der Vergangenheit ohne Probleme installiert, aber aus irgendeinem Grund habe ich ein Problem auf meinem neuen MacBook. Wenn ich versuche, die Boost-Python-Beispiele "quickstart" auszuführen, bleibt bjam hängen, während die zweite verknüpft wird. Hier ist mein Build-Protokoll, das zeigt, dass das erste Beispiel erstellt und übergibt, aber das zweite beendet nie die Verknüpfung (bjam hängt an der letzten Zeile des Protokolls). Irgendwelche Vermutungen darüber, was das verursachen könnte?Boost-Python-Beispiel nicht unter Clang-Darwin-Toolset

(By the way, ich bin mit Python 2.7, steigern 1,49, osx 10.7 und Klirren 3,1)

>>> cd boost_1_49_0/libs/python/example/quickstart/ 
>>> ../../../../bjam -a --verbose-test test 
...patience... 
...patience... 
...found 1692 targets... 
...updating 40 targets... 
darwin.compile.c++ bin/darwin-4.2.1/debug/embedding.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/numeric.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/list.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/long.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/dict.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/tuple.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/str.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/slice.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/converter/from_python.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/converter/registry.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/converter/type_id.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/enum.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/class.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/function.o 
../../../../libs/python/src/object/function.cpp: In member function ‘PyObject* boost::python::objects::function::call(PyObject*, PyObject*) const’: 
../../../../libs/python/src/object/function.cpp:169: warning: comparison is always true due to limited range of data type 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/inheritance.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/life_support.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/pickle_support.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/errors.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/module.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/converter/builtin_converters.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/converter/arg_to_python_base.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/iterator.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/stl_iterator.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object_protocol.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object_operators.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/wrapper.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/import.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/exec.o 
darwin.compile.c++ ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/object/function_doc_signature.o 
darwin.link.dll ../../../../bin.v2/libs/python/build/darwin-4.2.1/debug/libboost_python.dylib 
darwin.link bin/darwin-4.2.1/debug/embedding 
testing.capture-output bin/test_embed.test/darwin-4.2.1/debug/test_embed.run 
====== BEGIN OUTPUT ====== 
registering extension module embedded_hello... 
defining Python class derived from Base... 
testing derived class from C++... 
success! 
running file script.py... 
Hello World ! 
success! 
intentionally causing a python exception... 
Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
NameError: name 'unknown' is not defined 
No errors detected. 

EXIT STATUS: 0 
====== END OUTPUT ====== 
**passed** bin/test_embed.test/darwin-4.2.1/debug/test_embed.test 
common.mkdir bin/test_ext.test 
common.mkdir bin/test_ext.test/darwin-4.2.1 
common.mkdir bin/test_ext.test/darwin-4.2.1/debug 
darwin.compile.c++ bin/darwin-4.2.1/debug/extending.o 
darwin.link.dll bin/darwin-4.2.1/debug/extending.so 

Antwort

1

klingt viel wie this Fehler. Ich konnte selbst keine Lösung finden, aber ich habe Boost.Python unabhängig von den letzten Wochen benutzt, ohne dass es mich in meinem eigenen Code beeinflusst hat.

Beachten Sie, dass, wenn Ihre Python-Testdatei (möglicherweise nach einem Build aufgerufen) aus irgendeinem Grund (z. B. an einem Pdb-Haltepunkt) hängt, dann ähnliches Verhalten angezeigt wird.

+0

Ich habe vergessen, dass ich diese Frage gepostet habe. Danke für die Antwort. [Dieser Beitrag] (http://article.gmane.org/gmane.comp.lib.boost.build/24829) von der Boost-Build-Mailing-Liste bestätigt, dass Sie das richtige Problem identifiziert haben (aber nichts löst). Der Rest dieses Threads geht in ein nicht verwandtes Problem über. –