Как правильно «установить» wxWidgets на MacC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Как правильно «установить» wxWidgets на Mac

Сообщение Anonymous »

Некоторое время я пытался заставить библиотеку wxWidgets работать на моем Mac, но у меня возникало множество проблем. Я пробовал и скачать исходный код, и собрать его самостоятельно, и использовать Homebrew.
Я дошел до того, что могу скомпилировать следующее:
helloworld.hpp:

Код: Выделить всё

#include 
#ifndef WX_PRECOMP
#include 
#endif

class HelloWorldApp : public wxApp {
public:
virtual bool OnInit();
};

DECLARE_APP(HelloWorldApp)
helloworld.cpp:

Код: Выделить всё

#include "helloworld.hpp"

IMPLEMENT_APP(HelloWorldApp)

bool HelloWorldApp::OnInit() {
wxFrame *frame = new wxFrame((wxFrame*) NULL, -1, _T("Hello wxWidgets World"));
frame->CreateStatusBar();
frame->SetStatusText(_T("Hello World"));
frame->Show(true);
SetTopWindow(frame);
return true;
}
Для его компиляции я использую g++ helloworld.cpp `wx-config --cxxflags --libs` -o hello. Кажется, это работает, и g++ не сообщает об ошибках или предупреждениях.
Однако, как только я пытаюсь его запустить () Я получаю много ошибок, большинство из которых выглядят следующим образом:

Код: Выделить всё

objc[92442]: Class wxNSSomething is implemented in both
/usr/local/Cellar/wxmac/3.0.5.1_1/lib/something.dylib (0x10bd00c50)
and /usr/local/opt/wxmac/lib/something.dylib (0x10b329c50). One of the two
will be used. Which one is undefined.
и

Код: Выделить всё

./src/common/object.cpp(251): assert "classTable->Get(m_className) == NULL"
failed in Register(): Class "wxSomething" already in RTTI table -
have you used IMPLEMENT_DYNAMIC_CLASS() multiple times or linked some object file twice)?
...в итоге заканчивается ошибкой сегментации.
Мне кажется, что у меня установлены две версии в двух разных одновременно ( следовательно, «Класс реализован как в ..., так и в ...»). Но если я удалю версию Hombrew, она избавится от всего, что приводит к сбою компиляции.
Я пробовал различные возможные исправления из Интернета, но ни одно из них не помогло.
Я не совсем понимаю, что здесь делать. Кто-нибудь еще испытывал это раньше? Что мне делать, чтобы это исправить?
Мой Mac — Intel и работает под управлением MacOS 11.2.3.

Подробнее здесь: https://stackoverflow.com/questions/667 ... s-on-a-mac
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Вызывая браузеры в драматурге медленнее на Mac (S) Mac (S) Mac (S) [S) [S)
    Anonymous » » в форуме JAVA
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Как правильно скомпилировать wxWidgets с VS Code и MSVC?
    Гость » » в форуме C++
    0 Ответы
    37 Просмотры
    Последнее сообщение Гость
  • Как установить Anaconda через Home-Brew Mac Mac
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Как очистить текст строки состояния wxwidgets C++
    Anonymous » » в форуме C++
    0 Ответы
    43 Просмотры
    Последнее сообщение Anonymous
  • CMake: не удалось найти файл конфигурации пакета, предоставленный «wxWidgets».
    Anonymous » » в форуме C++
    0 Ответы
    35 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»