| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Выёжывается компилятор... а не должен... |
| Автор: Hedrox 14.3.2005, 18:48 |
| Привет всем! Есть такая проблема - нужно скомпилить исходник на си, прога виндовая, компилятор - Borland C++ 5.02, синтаксических ошибок в коде нет, файл компилится, но линковаться не хочет - компилятор говорит что ошибка и пишет вот такую вешь: Error: Unresolved external '_main' referenced from D:\PROGRAM FILES\BC5\LIB\C0X32.OBJ Причём это с любой виндовой программой, в любой винде... В чём же ошибка, и это всё обойти? |
| Автор: srd 14.3.2005, 18:55 |
| Укажи в проекте, что собираешь Win32-приложение, а не консольное приложение. Где это делается у Борланда - не знаю, посмотри ключи линкера. |
| Автор: Hedrox 14.3.2005, 20:22 |
| Поподробнее мне бы... Но всё равно спасибо... Мож кто ещё знает? |
| Автор: LuckLess 14.3.2005, 21:10 |
| не знаю сработает ли это в Борланде , но попробуй написать #pragma comment(linker, "/SUBSYSTEM:WINDOWS") |
| Автор: Hedrox 14.3.2005, 21:50 |
| не, не помогло =( |
| Автор: LuckLess 14.3.2005, 21:53 |
| Hedrox на прагму компилер ругаеться? Покажи исхожник... |
| Автор: Hedrox 14.3.2005, 23:00 |
| Именно на прагму и ругается... исходник слишком длинный... если хочешь на мыло вышлю... |
| Автор: srd 15.3.2005, 11:30 |
| Собираешь программу из командной строки или из IDE? Если из командной строки, то смотри ключи линкера, с помощью которых указывается тип приложения. Если из среды - то видимо не создаешь правильный проект, либо вообще не создаешь, а пытаешься скомпилить отдельно взятый исходник. |
| Автор: Hedrox 15.3.2005, 13:38 | ||
Да, я его не создаю, он у меня есть на винте, один фай с расширением ц, да, такой прикол выходит всегда если я хочу написать виндовое приложение на апи в иде |
| Автор: srd 15.3.2005, 13:51 |
| Файл с расширением *.c - это не файл проекта! Если работаешь в IDE, то сначала создай правильный проект, а потом добавь в проект файлы *.c и компилируй. |
| Автор: Adil' 15.3.2005, 13:59 |
| Hedrox, 1 запусти Билдер, 2. навсякий случай - File->CloseAll, 3. затем File->New..., 4. впоявившемся диалоге, вкладка New, выбери Console Wizard, OK, 5. в следующем диалоге поставь Source Type: C или С++ - взависимости от того, какой у тебя исходник *.с или *.cpp, 6. сними, если стоит, галку у Use VCL, 7. сними, если стоит, галку у Console Application 8. галка у Multi Threaded - на твоё усмотрение 9. Поставь галку, если не стоит, у Specify project source 10. Нажми кнопку с тремя точками и выбери свой файл-исходник 11. Ok 12. File->Save All... и сохрани проект в нужном месте (лучше там же где исходник 13. Бьюлд энд энжой З.Ы. О, получилось пояснение к посту srd |
| Автор: Hedrox 15.3.2005, 15:59 |
| 2Adil' - да я ж не билдер юзаю |
| Автор: _hunter 15.3.2005, 16:20 |
| ну так в нем новый проект создай. и замени содержимое основного файла с кодом |
| Автор: srd 15.3.2005, 17:12 | ||||||
| Какая разница, что юзаешь. Ищи что-нибудь "New project", а там понятно, куда нажимать. А если со средой не дружишь, то попробуй скомпилировать так:
где file1.c file2.c - это твои исходники. -W - Win32 приложение. Смотреть ключи надо так
а справку по конкретному ключу
где -W - ключ. Вроде всё, что можно, разжевали уже. |
| Автор: Hedrox 15.3.2005, 17:23 |
| Спасибо всем, у меня вышло ;) может кто может дать исходник минимального приложения на Win32API, под борланд С++ 5.02, очень нужно. Спасибо. |
| Автор: srd 15.3.2005, 17:27 | ||
Вот тебе исходник минимального win32-приложения для любого win32-компилятора.
|