Отладка кода, который использует CGAL с Xcode

Я хочу использовать XCode для отладки программ, использующих CGAL, но я не могу заставить XCode запустить программу или остановиться на точке останова. Xcode скомпилирует программу (я проверил это, запустив результат в окне терминала). Я могу установить точки останова, но Xcode не запускается, когда я нажимаю кнопку «Выполнить».

Я сократил код до этого простого примера:

#include <CGAL/Exact_predicates_exact_constructions_kernel.h>
#include <CGAL/Polygon_2.h>
#include <iostream>

typedef CGAL::Exact_predicates_exact_constructions_kernel K;
typedef K::Point_2 Point_2;
typedef CGAL::Polygon_2<K> Polygon_2;

int main(int argc, char *argv[]) {
Point_2 pts[] = { Point_2(0.0,0.0), Point_2(2.0,0.0), Point_2(1.0,2.0) };
Polygon_2 poly( pts, pts + 3 );
if(poly.is_simple()) std::cout << "Polygon is simple\n";
else std::cout << "Polygon is not simple\n";
return 0;
}

Я создал проект Xcode, используя cgal_create_CMakeLists. Этот скрипт создает файл проекта для меня:

#!/bin/sh

~/dev/CGAL-4.1/scripts/cgal_create_CMakeLists -s cgal_xcode -c Core
cmake -GXcode -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS=-O0 -DCGAL_DONT_OVERRIDE_CMAKE_FLAGS=TRUE .

Я использую CGAL 4.1 и Xcode 4.6.1 на OS X 10.8.3 (работает на MacBook, конец 2008 года).

Я очень неопытен с XCode, так что это, вероятно, простая ошибка (пропущенные настройки или тому подобное).

1

Решение

Я нашел ответ на свой вопрос. У меня не было исполняемого набора для схемы отладки. Еще один пост указал мне в правильном направлении, Продукт Xcode 4.2 -> Run Greyed Out

Чтобы установить исполняемый файл, я иду в Product-> Scheme-> Edit Scheme … Это открывает диалоговое окно. В левой части окна я нажимаю «Отладка». В центральном регионе я выбираю вкладку «Информация». Наконец, в центре я изменяю выбор «Исполняемый» с «Нет» на имя моей программы. Теперь моя программа запускается и останавливается на точках останова.

Достаточно просто, когда я узнал, где искать.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector