NOTE: это, видимо, очередной вопрос на StackOverflow, но - за того, что я видел - людям никогда не найти способ или их решение не работает для me
Я с помощью Eclipse Юнона АДТ. Все работало нормально, пока я пытался обновить НДК. Я заменил мой НДК
папку (это был НДК-r8d
) на новую версию (т. е. НДК-r8e
) и, по моему пути и символов конфигурации, я изменил, чтобы перейти от G++ 4.6 до 4.7.
Казалось, сломать мой индекс: я могу скомпилировать мой код, но затмение дает семантические ошибки, ровно как и в [1] и [2]. Ошибки mainly приходят из символа, используемого OpenCV4Android, например, расстояние
, пт
, queryIdx
и trainIdx
.
Когда я попытался сделать резервную копию моей старой конфигурации, индекс был все еще сломан! Я не могу найти способ, чтобы изменить это.
trainIdx
появиться в моей OpenCV4Android включить в раздел дорожки и символов.Я предполагаю, что это ЦДТ индекс по следующим причинам:
Следующий код выводит сообщения об ошибках на линия
, queryIdx
, пт
:
cv::line(mRgb, keypointsA[matches[i].queryIdx].pt, keypointsB[matches[i].trainIdx].pt, cv::Scalar(255, 0, 0, 255), 1, 8, 0);
Если я пишу это следующим образом, это работает:
cv::DMatch tmpMatch = matches[i];
cv::KeyPoint queryKp = keypointsA[tmpMatch.queryIdx];
cv::KeyPoint trainKp = keypointsB[tmpMatch.trainIdx];
cv::line(mRgb, queryKp.pt, trainKp.pt, cv::Scalar(255, 0, 0, 255), 1, 8, 0);
Это не значит, что все функции в формате OpenCV нерешенные: только пт
, queryIdx
и `trainIdx являются.
Любой комментарий будет действительно оценили.
В выбранном настройки проекта в среде Eclipse, перейдите к C общие - &/с++ GT; анализ -&кодовое gt; запуск. Убедитесь, что оба флажка сняты. Закройте и снова откройте проект или перезапустить Eclipse и перестроить проект.
Поскольку индексация для Android нативного кода в Eclipse является неполной, мне удалось включить индексирование в моем НДК проекты следующих сложным способом, он должен работать, используете ли вы НДК-строить или равнина
сделатьили даже
- х`. Я'м с помощью Кеплера, но он должен работать на старых версиях.
С/C++ построить ->
редактор цепь-> снимите флажок Отображать только совместимые наборы
., Если вы're, используя
НДК-строить установить пакет Строитель` в противном случае (этот шаг может и ошибаюсь, извините заранее, если это так).С/C++ построить-и GT;
построить переменных-> убедитесь, что
построения командычитает правильную команду для вашего проекта; если это's не, снимите флажок Использовать по умолчанию построить команду и исправить ее (это может быть
НДК-строитьили
Make -J5, в нашей стране-что вы хотите). Если вы строите собственный код в отдельный терминал, вы можете пропустить этот шаг.судо
если вы Don'т иметь разрешения на запись в - установить-реж
, потому что скрипт автоматически не выполняется. ./build/tools/make-standalone-toolchain.sh \ --платформа=андроид-14 \ --установить-маршрутизатор dir=/opt/на Андроид-набор инструментов \ --тулчейна=АРМ-ОС Linux-androideabi-4.8
Правой кнопкой мыши на проект -и gt; "Свойства" - > С/C++ общие ->
тропы и символы- и gt; Перейти на
включаетвкладка -> выберите пункт
в GNU с++с
языков- и GT; Нажмите кнопку "Добавить" и добавьте следующие пути (если установлен автономный набор инструментов для/опт/андроид-набор инструментов
):
/opt/на Андроид-набор инструментов/включить/
/opt/на Андроид-набор инструментов/включать/с++/4.8/
/opt/на Андроид-набор инструментов/включать/с++/4.8/АРМ-ОС Linux-androideabi/
/opt/на Андроид-набор инструментов/Либ/ССЗ/АРМ-ОС Linux-androideabi/4.8/включить/
/opt/на Андроид-набор инструментов/включать/с++/4.8/назад/
/opt/на Андроид-набор инструментов/Либ/ССЗ/АРМ-ОС Linux-androideabi/4.8/включения-исправлено/
/opt/на Андроид-набор инструментов/sysroot в/usr/включать/
Вот, вы можете все добавить включить путь вы хотите. На самом деле, у меня есть в формате OpenCV причине для Android и установлен в отдельной инструментов, поэтому у меня следующие есть:
/opt/на Андроид-набор инструментов/sysroot/usr/доли/использованием OpenCV/СДК/родной/JNI, у/включить/
Теперь, индексация должна работать. Вы также должны быть в состоянии запустить НДК-строить
(или принять
, если это's ваша метода построения), а затем развернуть ваш проект на устройство внутри затмения.
Нативной разработки Android на Eclipse является неполной, поскольку индексация не't работа из коробки. Это из-за того, чтобы поддерживать несколько архитектур (ARMv7 процессор, корпорация Intel и т. д.), несколько вариантов стл различных версий Android и т. д. Вот почему у тебя голый сделать
на основе `НДК-строить и всю структуру НДК, и именно поэтому развитию НДК очень нечистым и несколько больших объемов существуют собственные проекты на Android.
Большой проект для Android в формате OpenCV, где они должны были разработать 1500 нечетные строки скрипта с CMake, чтобы сделать его правильно скомпилировать для Android. В какой-то момент они пытались экспортировать этот сценарий в качестве основы систему сборки CMake для Android, но он не мог'т идти в ногу с изменениями в системе НДК и был заброшен. Эта поддержка должна быть внутри НДК себя.
В НДК по умолчанию система сборки должны были только самостоятельный набор инструментов, с различной архитектурой/C++ библиотеки, имеющие свои собственные наборы в стоимость место для хранения, но с тем преимуществом, чистота, интуитивность и хорошая практика. Затем можно включать любые стандартные кросс-компиляции системы, которая также используется в других местах, проверено и известно, электронная.г с CMake. Вы можете, и на мой взгляд, вы должны делать это с НДК'ы сделать-автономный-toolchain и команда
, как показано выше. Но, в конце концов, это только мое мнение. Если вы чувствуете себя достаточно комфортно с помощью NDK-строить-тогда вперед.
Это'ов на самом деле очень сложно сказать в чем проблема. Вот несколько советов:
привет-JNI, у
(он находится в JNI, у'папка
образцы`). Если она работает без проблем, чем проблема с подключением OpenCV для вашего проекта.андроид-НДК расположение " в " свойствах -&проект gt; С/C++ построить -> окружающая среда
. Здесь's связь с проблемой https://stackoverflow.com/questions/9697852/issue-with-build-android-ndk-project.НДК-строить -Б
), удалить все ошибки в Eclipse вручную (в "проблемах" вид выберите все ошибки и нажмите <и>удалить</КБД и GT;) и попробуйте запустить проект сейчас. Иногда это и"рубить", которая помогает мне, чтобы запустить проект./.метаданные/.Плагины/орг.затмение.ЦДТ.ядро
(резервную копию сначала).У меня была такая же проблема, как и многие люди.
Я следил за шаги в Ayberk ÖЗГüР пост, в котором какой-то смысл. Хотя мне тоже пришлось убедиться, поставить под всех трех языках: Си GNU, проект GNU C++ и сборки. Наверное, потому что я'м не используя только цепь инструмент стенд.
Я сначала была моя включает только под си GNU и GNU Си++. А мне еще с нерешенными содержит ошибки. Нет, пока я поручил своим входит в язык ассемблера, а также сделал мои ошибки уйдут.
Я не знаю, почему Eclipse-это только поиск через ассемблер входят в мой проект. Я тоже не знаю, как в этой части решение будет работать для более сложных проектов.
Надеюсь, что это помогает.
У меня была похожая ситуация с Eclipse ЦДТ работать с библиотекой OpenCV. Я получил несколько сообщений об ошибке, когда программа правильно составлена. Я изменил параметр индексатора в "окно-и gt;Настройки->индексатор" и "и конфигурацию сборки для индексатора" в поле "и использовать в активной конфигурации" и что решить мою проблему.
Я просто потратил около 3ч трахал мою голову против этого затмения НДК вопрос индексации!..
Что получилось: убедитесь, что у вас есть архитектура только один цп указан в приложении.файл МК.
В противном случае .метаданные/.Плагины/ком.андроид.язь.затмение.НДК/*.файл pathInfo не будет создаваться сборки NDK. Этот файл содержит встроенные значения от проекта -> Свойства -> в общем - &/с++ ГТ; пути и символы -> включает (просто .файл pathInfo не устранить проблему)
Зайдите в Настройки и GT; C/с++ > язык отображения и GT; добавить (исходный файл с и выбрать GNU С) сделать то же самое для C++
У меня был тот же вопрос. Я имел включают в себя установку путей, но после открытия .c/.cpp или .H-файл и он начнет отмечать все как "нерешенным.&и" <БР>этот работал для меня...</БР> <БР>перейти к:</БР> <БР> Предпочтения -и GT; C/с++ -> индексатор <БР>Регистрация индекс источников и заголовочные файлы открыть в Редакторе.</БР>