Using main and not _start is required by the gcc linker, any other symbol name will not work!.
Not really; while main is default, -e flag allows you to specify an arbitrary symbol as entry point.
Not really; while main is default, -e flag allows you to specify an arbitrary symbol as entry point.