Czy ktoś może mi powiedzieć, czy robię coś złego.Budynek/w tym Boost.Python w VS2013
Jestem na Windows 7 przy użyciu Visual Studio 2013 i chciałbym móc skonfigurować prosty projekt Boost.Python. Nie wiem, czy coś złego zrobiłem. Budowanie doładowania lub kiedy w tym doładowanie w moim projekcie.
Błąd
Kiedy próbuję #include
dowolny moduł Pythona doładowania, np #include <boost/python/module.hpp>
Otrzymuję następujący błąd w programie Visual Studio.
1>c:\boost_1_55_0\boost\python\detail\wrap_python.hpp(50): fatal error C1083: Cannot open include file: 'pyconfig.h': No such file or directory
budynku
starałem się postępować zgodnie z instrukcjami z this SO thread in which KTC addresses Python i this Python howto from Boost, ale ponieważ obie linki są nieco przestarzałe, robią to inaczej, a niektóre z etapów wydaje się zmieniło w nowszych wersjach of Boost, musiałem improwizować na niektórych instrukcjach.
Oto, co zrobiłem.
- Rozpakowano najnowszą wersję (1.55) pliku źródłowego boost do
C:\boost_1_55_0
. - Używane
cmd.exe
do nawigacji doC:\boost_1_55_0
. (Nie używaćDeveloper Command Prompt for VS2013
znaleźć pod\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts
. Nie powinno to żadnej różnicy, należy go? Boosts official guide for 1.55 nie miało żadnego wyraźnego wspominania o użyciuCommand Prompt for VS2013
. - Używane
bootstrap
w cmd. - redakcją
project-config.jam
(utworzony przezbootstrap
) i dodano ścieżkę do mojej instalacjiC:\Python34
Python 3.4. Mój plik.jam
teraz wyglądał jak widać w Project-Config.jam. - Używane
.\b2
w cmd, aby rozpocząć proces kompilacji. Chociaż miałem dużo ostrzeżeń podczas zbudowany (forcing value to bool 'true' or 'false' (performance warning)
, itp.), tak się stało nie wydają się być komunikatami o błędach po zakończeniu budowy.
Łącznie
ten sposób tworzę projekt w Visual Studio.
- Utworzono nowy projekt.
- Dodany kod widoczny w Kod testowy.
- podkatalogi VC++ we właściwościach projektu:
- Dodany
C:\boost_1_55_0
doInclude Directories
. - Dodano
C:\boost_1_55_0\stage\lib
(folder, w którym mogłem znaleźć pliki.lib
) naLibrary Directories
.
- Dodany
Project-Config.jam
import option ;
using msvc ;
option.set keep-going : false ;
using python : 3.4 : C:\\Python34\\python ;
kod testowy
Od: boost_1_55_0\libs\python\example\getting_started1.cpp
#include <boost/python/module.hpp>
#include <boost/python/def.hpp>
#include <string>
namespace
{
// A couple of simple C++ functions that we want to expose to Python.
std::string greet() { return "hello, world"; }
int square(int number) { return number * number; }
}
namespace python = boost::python;
BOOST_PYTHON_MODULE(getting_started1)
{
// Add regular functions to the module.
python::def("greet", greet);
python::def("square", square);
}
miałem to dla pytona, zwróć uwagę na to wielokrotność katalogów: 'Pythonie : 3.5 : D: \\ \\ \\ temp pyton PCbuild \\ python.exe # cmd-lub-prefix : D: \ \ temp \\ \\ pyton obejmują D: temperatura \\ \\ \\ cpythonorig PC D: \\ \\ temp pytona \\ PCbuild; ' – stijn
' pomocą pytona: 3.4 C: \\ Python34 \\ języka; '- czy zbędny jest" tailing "\\ python'? –
@UlrichEckhardt Tak myślisz? Nie wiedziałbym. Właśnie skopiowałeś z postu [KTC w tej bieżnika] (http://stackoverflow.com/questions/2629421/how-to-use-boost-in-visual-studio-2010/2655683#2655683). Ale byłbym szczęśliwy z wszystkiego, co pomaga mi złapać błąd. Mój projekt wydaje się działać jako know, ale mam jedno ostrzeżenie nie mogę pozbyć, '1> c: \ python \ python34 \ include \ pymath.h (22): Ostrzeżenie C4273: 'okrągły': niespójne dll linkage "więc być może nadal zrobiłem coś złego. – Adelost