【发布时间】:2014-05-04 19:07:44
【问题描述】:
我在这里是因为我无法解决我的问题;事实上,我正在使用 Eclipse CDT C/C++ IDE 中的 arm-none-eabi-gcc 编译器制作一个 C 项目(它用于 STM32 嵌入式卡),并且我已经实现了 PolarSSL 来创建一个 HTTPS 服务器:
我在很多论坛上看到我需要删除printf、malloc、file、path 以避免这个错误(实际上我在一个嵌入式项目中,所以这些功能被禁止了!)。但是即使我删除了所有这些功能,这些错误仍然存在!所以现在我不知道如何解决这些错误,请问您能帮帮我吗?
感谢您的帮助。
'Building file: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c'
'Invoking: Cross GCC Compiler'
arm-none-eabi-gcc -DARP_CACHE_SIZE=4 -D_kill -D_getpid -D_cert -DUSE_IPV4 -DUSE_IPV6 -DNDP_CACHE_SIZE=4 -DHARDWARE_ETH_TX_CRC -DHARDWARE_ETH_RX_CRC -DUSE_STDPERIPH_DRIVER -DUSE_TCP -DHSE_VALUE=25000000 -DSTM32F2XX -DUSE_MII -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/Library_StackIP/Driver_phyter_f2" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/stm32f2xx" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/urts" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/ethernet" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/agilia" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/Service_HttpServeur" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/Library_StackIP" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/include/polarssl" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/include" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1/test_serverweb_v0/src/library" -I"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\CMSIS_V3P00\CMSIS\Include" -I"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\CMSIS_V3P00\Device\ST\STM32F2xx\Include" -I"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\F2\inc" -I"C:\Sebastien\Sujet_1_ServeurWeb\Projet_1\test_serverweb\src\LibrarySSL" -I"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\F2\StdPeriph_Driver\inc" -I"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\F2\STM32_Ethernet\inc" -I"C:\AIM\uOne\F2\inc" -I"C:\AIM\uOne\F2\StdPeriph_Driver\inc" -O2 -g3 -Wall -c -fmessage-length=0 -mthumb -mcpu=cortex-m3 -mfix-cortex-m3-ldrd -mfloat-abi=softfp -fsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer -MMD -MP -MF".metadata/.plugins/org.eclipse.cdt.make.core/specs.d" -MT".metadata/.plugins/org.eclipse.cdt.make.core/specs.d" -o ".metadata/.plugins/org.eclipse.cdt.make.core/specs.o" "../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c"
'Finished building: ../.metadata/.plugins/org.eclipse.cdt.make.core/specs.c'
'Building target: test_serverweb_v0'
'Invoking: Cross GCC Linker'
arm-none-eabi-gcc -static -L"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\F2\lib" -L"C:\AIM\uOne\F2\lib" -L"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\F2\StdPeriph_Driver\lib" -L"C:\Program Files\AIM\uOne\Tools\eclipse\..\..\F2\STM32_Ethernet\lib" -L"C:\AIM\uOne\F2\STM32_Ethernet\lib" -L"C:\AIM\uOne\F2\StdPeriph_Driver\lib" -mthumb -mcpu=cortex-m3 -fsigned-char -ffunction-sections -fdata-sections -Wl,-T,../ldscripts/flash.ld,-Map,Debug.map,--gc-sections -o "test_serverweb_v0" ./src/urts/urts_init.o ./src/stm32f2xx/startup_stm32f2xx.o ./src/stm32f2xx/system_stm32f2xx.o ./src/library/aes.o ./src/library/aesni.o ./src/library/arc4.o ./src/library/asn1parse.o ./src/library/asn1write.o ./src/library/base64.o ./src/library/bignum.o ./src/library/blowfish.o ./src/library/camellia.o ./src/library/certs.o ./src/library/cipher.o ./src/library/cipher_wrap.o ./src/library/ctr_drbg.o ./src/library/debug.o ./src/library/des.o ./src/library/dhm.o ./src/library/ecdh.o ./src/library/ecdsa.o ./src/library/ecp.o ./src/library/ecp_curves.o ./src/library/entropy.o ./src/library/entropy_poll.o ./src/library/error.o ./src/library/gcm.o ./src/library/havege.o ./src/library/md.o ./src/library/md2.o ./src/library/md4.o ./src/library/md5.o ./src/library/md_wrap.o ./src/library/memory.o ./src/library/memory_buffer_alloc.o ./src/library/net.o ./src/library/oid.o ./src/library/padlock.o ./src/library/pbkdf2.o ./src/library/pem.o ./src/library/pk.o ./src/library/pk_wrap.o ./src/library/pkcs11.o ./src/library/pkcs12.o ./src/library/pkcs5.o ./src/library/pkparse.o ./src/library/pkwrite.o ./src/library/ripemd160.o ./src/library/rsa.o ./src/library/sha1.o ./src/library/sha256.o ./src/library/sha512.o ./src/library/ssl_cache.o ./src/library/ssl_ciphersuites.o ./src/library/ssl_cli.o ./src/library/ssl_srv.o ./src/library/ssl_tls.o ./src/library/threading.o ./src/library/timing.o ./src/library/version.o ./src/library/x509.o ./src/library/x509_create.o ./src/library/x509_crl.o ./src/library/x509_crt.o ./src/library/x509_csr.o ./src/library/x509write_crt.o ./src/library/x509write_csr.o ./src/library/xtea.o ./src/agilia/agilia_VC.o ./src/agilia/agilia_VS.o ./src/agilia/agilia_init_uRTS.o ./src/agilia/agilia_login_sha1.o ./src/agilia/agilia_moteur_info.o ./src/agilia/agilia_targetId.o ./src/agilia/agilia_xbin_mem.o ./src/Service_HttpServeur/AFS.o ./src/Service_HttpServeur/AgiliaGV.o ./src/Service_HttpServeur/Base64.o ./src/Service_HttpServeur/HtmlPage.o ./src/Service_HttpServeur/HtmlPageDynamic.o ./src/Service_HttpServeur/Http.o ./src/Service_HttpServeur/HttpServer.o ./src/Service_HttpServeur/HttpUsers.o ./src/Service_HttpServeur/MoteurHTTP.o ./src/Service_HttpServeur/StdAfx.o ./src/Service_HttpServeur/UTF8.o ./src/Service_HttpServeur/WebSite.o ./src/Service_HttpServeur/divers.o ./src/Service_HttpServeur/httpd.o ./src/Service_HttpServeur/mime.o ./src/Service_HttpServeur/sgf_sdcard.o ./src/Library_StackIP/Driver_phyter_f2/drv_buffer.o ./src/Library_StackIP/Driver_phyter_f2/drv_mac.o ./src/Library_StackIP/Driver_phyter_f2/drv_phyter_f2.o ./src/Library_StackIP/Driver_phyter_f2/drv_stats.o ./src/Library_StackIP/arp.o ./src/Library_StackIP/hntonh.o ./src/Library_StackIP/icmp.o ./src/Library_StackIP/icmpv6.o ./src/Library_StackIP/interface_ethernet.o ./src/Library_StackIP/ipv4.o ./src/Library_StackIP/ipv6.o ./src/Library_StackIP/sck_api.o ./src/Library_StackIP/tcp.o ./src/Library_StackIP/udp.o ./src/config_user.o ./src/ethernet_init.o ./src/hardware_init.o ./src/main.o ./src/peripherals_config.o ./src/ressources.o ./src/ssl_init_uRTS.o ./src/systickDelay.o ./src/timer_uRTS.o ./.metadata/.plugins/org.eclipse.cdt.make.core/specs.o -lservice_strformat -lagcomethernet -ltest_syscalls_v2 -lagcore -lagstr -lagtrycatch -lagvariables -lcrc16_soft -lcrc32_f2 -lsha1_soft -lagmetadebug -lflash_f2 -ldrv_phyter_f2 -lservice_horodateur -lservice_httpServeur -lservice_socket -lservice_STM32 -lsysirq -lsysrtc_f2 -lurts -lurtscore -ltrap12 -ltrap12core -lsystime -lsystick -lstm32_stdperiph_driver -lstm32_ethernet -lRessources
c:/program files/aim/uone/tools/bin/../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/lib/armv7-m\libc.a(lib_a-signalr.o): In function `_kill_r':
signalr.c:(.text._kill_r+0xe): undefined reference to `_kill'
c:/program files/aim/uone/tools/bin/../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/lib/armv7-m\libc.a(lib_a-signalr.o): In function `_getpid_r':
signalr.c:(.text._getpid_r+0x0): undefined reference to `_getpid'
c:/program files/aim/uone/tools/bin/../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/lib/armv7-m\libc.a(lib_a-sbrkr.o): In function `_sbrk_r':
sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'
collect2: ld returned 1 exit status
aim-make: *** [test_serverweb_v0] Error 1
**** Build Finished ****
【问题讨论】:
-
平台是否有操作系统,或者您的应用程序是否旨在“独立”?
-
感谢您的回答。我不是在命令行上编译:我在 Windows 中,我使用 eclipse 环境。 stm32 卡没有我刚才说的操作系统!所以我们可以说我的应用程序是“独立的”!所以这些操作系统功能对我来说没用......但我不能更容易地将它们分开......
-
错误信息是纯文本 - 为什么要发图!?
-
你需要弄清楚这些函数在哪里被引用——这在错误消息中应该很清楚,但如果不是递归 grep 是你的朋友。如果它们在您构建但从未使用的库代码中被引用,也许您需要一个“-Wl,--gc-sections”构建标志来使链接器修剪未使用的代码。
-
对不起,克利福德,我的意思是:在 Eclipse 中提供这些错误消息的屏幕副本!我在这里写了 3 条错误消息: