Первая программа Boost - PullRequest
3 голосов
/ 20 августа 2010

Я попытался написать свою первую программу Boost из информации на сайте библиотек Boost. Вот код:

#include <boost/lambda/lambda.hpp>

#include <iostream>
#include <iterator>
#include <algorithm>

int main()
{
    using namespace boost::lambda;
    typedef std::istream_iterator<int> in;

    std::for_each(
        in(std::cin), in(), std::cout << (_1 * 3) << " " );
}

Это показывает мне эту ошибку:

1>------ Build started: Project: boost_librarys, Configuration: Debug Win32 ------
1>  boost_librarys.cpp
1>LINK : fatal error LNK1104: cannot open file 'kernel32.lib'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Как эту ошибку можно исправить?

Ответы [ 4 ]

5 голосов
/ 20 августа 2010

Ответ на похожий вопрос вне SO был:

Загрузите и установите Windows SDK из здесь

(ссылка в цитате может не подходить для вашей системы)

2 голосов
/ 20 августа 2010

Убедитесь, что у вас установлен Windows SDK.

1 голос
/ 20 августа 2010

Ошибка ссылки, которую вы получаете, означает, что ваша программа не связывается с правильными библиотеками.Поскольку ошибка относится к системной библиотеке Microsoft (kernel.lib), вам необходимо убедиться, что ваша система настроена правильно.Это не проблема Boost как таковая , хотя это может быть Boost, который заинтересован в связи с kernel.lib.

0 голосов
/ 20 августа 2010

Вы находитесь на Visual, нет НИКАКОЙ причины, по которой должен быть kernel32.lib.В любом случае, это должно быть в C: / Program Files (x86) / MS Visual Studio / VC / lib

Я предполагаю, что вы что-то опечатали в конфигурации проекта.Каждая библиотека, каждый дополнительный путь должен быть отделен знаком ';'.Если вы не уверены, нажмите справа [...], в новом окне должен быть только один элемент за строкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...