Netbeans не откроет

Чтобы дать контекст ответу Павла, скомпилированный двоичный файл Google Mock не распространяется вместе с пакетом Ubuntu из-за причины, приведенной здесь. Это объяснение для Google Test, но этот принцип применим к любой библиотеке C ++.

В частности, он говорит:

В первые дни мы сказали, что вы можете установить скомпилированные библиотеки Google Test on * nix, используя make install. Затем каждый пользователь вашей машины может писать тесты без перекомпиляции Google Test. Это показалось хорошей идеей, но у нее есть got-cha: каждый пользователь должен скомпилировать свои тесты, используя те же флаги компилятора, которые использовались для компиляции установленных тестовых библиотек Google; в противном случае он может столкнуться с неопределенным поведением (т. е. тесты могут вести себя странно и могут даже сбой по очевидным причинам). Зачем? Поскольку C ++ имеет эту вещь, называемую Правилом одного определения: если два исходных файла C ++ содержат разные определения одного и того же класса / функции / переменной, и вы связываете их вместе, вы нарушаете правило. Компилятор может или не может поймать ошибку (во многих случаях не требуется, чтобы стандарт C ++ обнаружил нарушение). Если это не так, вы получаете странное поведение во время выполнения, которое неожиданно и сложно отлаживать. Если вы скомпилируете Google Test и ваш тестовый код с использованием разных флагов компилятора, они могут видеть разные определения одного и того же класса / функции / переменной (например, из-за использования #if в Google Test). Поэтому для вашего удобства мы рекомендуем избегать установки предварительно скомпилированных библиотек Google Test. Вместо этого каждый проект должен скомпилировать сам Google Test, так что он может быть уверен, что те же флаги используются как для Google Test, так и для тестов.

Итак, ваша первоначальная проблема заключалась в том, что при установке пакета google-mock был установлен только исходный код, а когда вы пытались скомпилировать свое приложение-образец, библиотека gmock не была найдена.

1
задан 18 January 2014 в 00:09

1 ответ

Это заставило меня работать для меня:

sudo add-apt-repository ppa:vajdics/netbeans-installer
sudo apt update
sudo apt install netbeans-installer
0
ответ дан 24 May 2018 в 12:53

Другие вопросы по тегам:

Похожие вопросы: