Связывание и компиляция броненосца в Xcode 4

Я пользователь Mac OS X 10.8.3 (Mountain Lion). Я загрузил броненосец и установил его в OS X согласно инструкциям README.txt. Компилируется нормально, набрав:

g++ ... *stuff* ... -O2 -larmadillo

в терминале. Включив те же аргументы компоновщика в Eclipse CDT, я смог скомпилировать броненосец в Eclipse (Juno) в OS X. Однако моя проблема заключается в том, что когда дело доходит до компиляции в Xcode 4 — программе, которую я необходимость иметь броненосец внутри! Я уже пытался добавить строку «-O2 -larmadillo» к другим флагам компоновщика. Я также попытался добавить / usr / local / lib и / usr / local / include / в пути поиска заголовка и пути поиска библиотеки. Я получил Xcode 4, чтобы таким образом распознать команду:

# include < armadillo >

или же

# include "/usr/local/include/armadillo"

ОДНАКО, когда дело доходит до времени компиляции, Xcode 4 НЕ распознает такую ​​строку:

коврик A;

Итак, для кода:

# include < iostream >

# include < armadillo >

using namespace std;

int main() {

mat A;

return 0;

}

Я получаю ошибки, такие как:

Использование необъявленного идентификатора ‘mat’; Вы имели в виду «Макс»?
Ожидаемый ‘;’ после выражения
Использование необъявленного идентификатора «А»

Ссылка на перегруженную функцию не может быть разрешена; ты хотел это назвать?

Обратите внимание, что код даже не доходит до стадии компиляции!

Я хотел бы сейчас: как правильно связать и скомпилировать код C ++, который использует библиотеку armadillo в Xcode 4 ???

Большое спасибо!

Дэниел.

0

Решение

Вы забыли добавить «использование пространства имен arma»? то есть.

# include <iostream>
# include <armadillo>

using namespace std;
using namespace arma;  // make Armadillo classes and functions visible by default
3

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

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

По вопросам рекламы [email protected]