未定义对“ main”的引用找不到条目符号_start

时间:2019-03-07 23:25:43

标签: python c gcc cython main

我正在尝试将python程序编译为c文件。首先,经过数十个链接标志并消除了数十种错误之后,最后只剩下一个错误。当我键入:

$ gcc -Os -I /usr/include/python3.6m -o example example_cy.c -lpython3.6m     -lpthread -lm -lutil -ldl

错误是:

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':                                                
(.text+0x20): undefined reference to `main'                                                                                                          
collect2: error: ld returned 1 exit status

然后我添加 -nostartfiles

gcc -Os -I /usr/include/python3.6m -o example example_cy.c
-lpython3.6m -lpthread -lm -lutil -ldl -nostartfiles

错误变为:

/usr/bin/ld: warning: cannot find entry symbol _start; defaulting to  
00000000000022f0

我得到的图像是,问题大致上是在我的.c文件中既没有main函数又没有_start函数。

0 个答案:

没有答案