wxWidgets 2.9.4 + Xcode 4.5.2 - Не могу заставить работать

У меня проблемы с использованием wxWidgets 2.9.4 и Xcode 4.5.2, я получаю всевозможные ошибки. Во-первых, я думаю, что правильно установил wxWidgets, потому что все образцы и демо работают нормально. Проблема в том, что я пытаюсь создать проект Xcode.

  1. Когда я следую руководству по wxWidgets, меняю настройки сборки следующим образом:

    • Paste the --cppflags in "Other C++ Flags"
    • Вставьте --libs в «Другие флаги компоновщика» (УДАЛЕНИЕ -L)
    • Измените компилятор на GCC, я получаю:

    • #P4# #P5#
  2. #P6# <блочная цитата> #P7# #P8#

Я полностью потерялся, и я был бы признателен за любую помощь

------------ОБНОВИТЬ------------------------

Я только что узнал, что его можно скомпилировать с помощью команды терминала:

g++ -o main main.cpp './../../build-cocoa-debug/wx-config --debug --cxxflags --libs'

Итак, я думаю, проблема в компиляторе, который использует Xcode. Но когда я меняю его на LLMV GCC 4.2, я получаю ту же ошибку (ДА, как будто он все еще использует clang). Чтобы изменить компилятор, я пошел в настройки сборки-> параметры сборки-> компилятор для c/c++/objective-c и изменил его.

-----------------------ОБНОВЛЕНИЕ2-----------------

Даже сейчас, когда я изменил компилятор на Xcode, ошибка:

ld: не найдена библиотека для -lwx_osx_cocoau_xrc-2.9

collect2: ld вернул 1 статус выхода

Ошибка команды /Applications/Xcode.app/Contents/Developer/usr/bin/llvm-g++-4.2 с кодом выхода 1


person orlandini    schedule 02.12.2012    source источник
comment
Вы можете просто скомпилировать шаги, чтобы он скомпилировался. мне бы тоже это помогло   -  person the100rabh    schedule 27.02.2013


Ответы (1)


Во-первых, используйте --cxxflags (флаги компилятора C++), а не --cppflags (флаги препроцессора C).

Во-вторых, почему вы удаляете -L? Конечно, компоновщик не сможет найти библиотеки, если вы уберете параметр, сообщающий ему, где они находятся.

person VZ.    schedule 03.12.2012
comment
Уважаемый VZ, я использовал › --cxxflags , а не › -cppflags — это была просто опечатка. Но все равно спасибо! Второй совет полностью решил мою проблему. Я удалял -L из-за учебника zebratale.tumblr.com, клянусь, я пытался, не удаляя его сначала, и это не сработало, но... Теперь это сработало, так что спасибо! - person orlandini; 04.12.2012