SDL вызывает Неопределенные символы: “_main”, от которого ссылаются: запустите в crt1.10.5.o

Когда я пытаюсь использовать SDL в своей программе C++, я получаю следующее:

> g++ minimal.cpp SDLMain.m
Undefined symbols:
  "_main", referenced from:
      start in crt1.10.5.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Вот мой minimal.cpp:

#include 
int main(int argc, char **argv) {
    return 0;
}

То, что я мог собрать из http://www.libsdl.org/faq.php?action=listentries&category=7, было то, что включением SDL.h, это переименовывает мою основную функцию через некоторое макро-волшебство. Но затем SDLMain.m, как предполагается, делает вещи правом снова путем вызывания той переименованной функции. Но так или иначе которого не происходит?

Я выполняю Leopard.

Обратите внимание, что это - другой вопрос от вопроса 550455.

5
задан Bemmu 24 February 2010 в 22:48
поделиться

1 ответ

Решение заключалось в использовании файла SDLMain.m, включенного в SDL-devel-1.2.14-extras.dmg с домашней страницы SDL. По какой-то причине тот, который я использовал раньше, загадочным образом перестал работать. Вот моя рабочая команда компиляции:

g++ -framework SDL -framework Cocoa -I/usr/local/include/SDL/ minimal.cpp "/Library/Application Support/Developer/Shared/Xcode/Project Templates/SDL Application/SDLMain.m"
2
ответ дан 14 December 2019 в 08:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: