Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1问题总结及解决方案...
為什么80%的碼農都做不了架構師?>>> ??
原文地址::http://blog.csdn.net/dream_it_life/article/details/5488121
最近因為需要,要用C,C++,Objective-C三種C語言3C混編的開發程序,在當然方法也和大家說一下吧,就是在Xcode環境中把C語言的.c文件,C++的.cpp文件與Objective-C的.m文件的文件名全部修改成.mm,這樣就可以啟用Objective-C++的編譯環境3C混編了,可是遇到了上述問題,網上的說法不一致,而且我也遇到了多次這個問題,最后解決的方式也不一樣,所以最后把所有可能的情況總結了一下:
??1)static方法名重復-因為C語言里沒有對象的概念,它的方法只要加入相應的.h文件就可以使用,所以,如果和C++ or Objective-C的靜態方法重名了,那么環境無法區分,很明顯,這個錯誤是編譯時候的錯誤,而對于static的變量及方法是在編譯的時候便被加入的,所以無法識別.
??2)全局變量名重復,理由和上面是一樣的,當然,如果是全局變量,建議在Objective-C的.m文件(當然現在被改成.mm了)中聲名,不然,聲明在.h中單獨使用是沒有問題的,如果直接引用了C or C++的.h,那么即使這時候全局變量不重復,也會出現上面的問題.
??3)含有多個main方法,main方法是程序的入口,如果有多個文件含有main方法,那么也會出現上面的問題.
?? ?總的來說,這個問題是因為方法或是全局變量重復所導致的編譯環境無法識別并編譯 ?
轉載于:https://my.oschina.net/igames/blog/619040
總結
以上是生活随笔為你收集整理的Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1问题总结及解决方案...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 专访英特尔(中国)开源技术中心:HTML
- 下一篇: ElasticSearch 2 (7)