В проекте C у меня есть функция main() в нескольких файлах. Когда я компилирую, у меня, таким образом, возникает ошибка «множественные декларации основного». Можно ли выбрать в Makefile какую-либо из этих main() функций для компиляции? (другие будут проигнорированы ...)Выбор метода main() для использования в Makefile
2
A
ответ
4
Вы можете скрыть их, используя препроцессор:
В file1.c:
#if defined FILE1_MAIN
int main(void)
{
printf("Running main() in file1.c");
return 0;
}
#endif
Это может повторяться по мере необходимости в любом количестве файлов C.
Этот метод также может быть полезен при реализации, например. библиотечные модули, чтобы включить опцию main()
для тестирования в одном файле C.
0
Возможно, у вас есть только одна функция main()
в вашем источнике. Вам придется либо переименовать все остальные экземпляры, либо исключить те исходные файлы, которые содержат другие экземпляры main()
из сборки.
1
Вы можете просто написать цель для каждого main()
, где вы проигнорируете все, кроме одного файла, который содержит main()
.
Смежные вопросы
- 1. Выбор метода экземпляра для использования
- 2. Makefile для нескольких файлов `main`
- 3. Несколько определений main с Makefile
- 4. Комментарий XML для метода main?
- 5. вызов метода main в java
- 6. Вызов метода String в Main
- 7. Печать сообщения на консоли без использования метода main()
- 8. Выбор метода сортировки для массива
- 9. Ошибка ссылки на файл Makefile: undefined main
- 10. makefile error: undefined ссылка на main
- 11. Очистка package.json «main» для использования с требованием
- 12. Как настроить Makefile для использования OpenCV
- 13. Makefile для использования make as gcc
- 14. vNext Выбор основного метода для ввода
- 15. Как настроить JVM для вызова настраиваемого метода вместо метода Main?
- 16. Использование очереди событий для выполнения простого метода в main()
- 17. Настройка метода Main Class и main() в Netbeans IDE
- 18. Использование метода, отличного от Main
- 19. Выбор формата изображения для использования
- 20. Наиболее подходящая вещь для использования метода Main() для длительных процессов async
- 21. ClearCase, пример использования файла makefile
- 22. Программный поиск метода main() в коллекции классов
- 23. блок тестирования статического метода Main() в C#
- 24. Неопределенная ошибка метода при вызове метода в 'main' в Ruby?
- 25. Выход из метода обратно в Main?
- 26. Выбор опрыскивателя для использования в нескольких действиях
- 27. Выбор переменной для использования в php mailer
- 28. Почему нет метода main() в android
- 29. Хорошие методы использования Makefile в VisualStudio?
- 30. Вызов нестатического метода, написанного ниже Main, от Main
Спасибо, хорошо работает! –