1. 程式人生 > >在ubuntu14.04上搭建Objective-C開發環境

在ubuntu14.04上搭建Objective-C開發環境

我們的機器人需要iOS客戶端,於是要招iOS開發人員,而我們都不懂iOS開發,於是我緊急瞭解了下Objective-C(以下簡稱OC)的歷史和語法,然後想在ubuntu上動手試試OC程式設計,於是按照這篇文章搭建環境並編譯helloworld程式碼

gcc `gnustep-config --objc-flags` -lgnustep-base hello.m -o hello

結果報錯:
/tmp/ccNFKMXF.o:在函式‘main’中:
/home/haipeng/projetcs/ios/hello.m:5:對‘objc_get_class’未定義的引用
/home/haipeng/projetcs/ios/hello.m:5:對‘objc_msg_lookup’未定義的引用
/home/haipeng/projetcs/ios/hello.m:5:對‘objc_msg_lookup’未定義的引用
/home/haipeng/projetcs/ios/hello.m:7:對‘NSLog’未定義的引用
/home/haipeng/projetcs/ios/hello.m:8:對‘objc_msg_lookup’未定義的引用
/tmp/ccNFKMXF.o:在函式‘__objc_gnu_init’中:
/home/haipeng/projetcs/ios/hello.m:10:對‘__objc_exec_class’未定義的引用
/tmp/ccNFKMXF.o:(.data.rel+0x0):對‘__objc_class_name_NSConstantString’未定義的引用
/tmp/ccNFKMXF.o:(.data.rel+0x8):對‘__objc_class_name_NSAutoreleasePool’未定義的引用
collect2: error: ld returned 1 exit status

上面的報錯資訊明顯是連結錯誤,我檢查了GNUstep的安裝,有gnustep-base庫。又搜尋了其他相關文章,原來還依賴objc庫,加上
gcc `gnustep-config --objc-flags` -lobjc -lgnustep-base hello.m -o hello

結果還是相同的錯誤尷尬

該有的庫都有了,還出錯,想起gcc由來已久的feature:

        GCC在連結時對依賴庫的順序是敏感的,被依賴的庫必須放在後面,比如libfoo.a依賴libbar.a,必須寫成-lfoo -lbar這樣的順序,否則連結將出錯。

命令列調整成以下後問題解決。

gcc `gnustep-config --objc-flags` hello.m -o hello -lgnustep-base -lobjc

執行輸出
[email protected]:~/projetcs/ios$ ./hello 
2016-07-29 09:43:39.422 hello[4253] hello world

老外寫的文章一樣不讓人放心呀再見

相關推薦

ubuntu14.04搭建Objective-C開發環境

我們的機器人需要iOS客戶端,於是要招iOS開發人員,而我們都不懂iOS開發,於是我緊急瞭解了下Objective-C(以下簡稱OC)的歷史和語法,然後想在ubuntu上動手試試OC程式設計,於是按照這篇文章搭建環境並編譯helloworld程式碼 gcc `gnustep

在Ubuntu17.04搭建Android Studio開發環境

term ora jdk1.8 png ava upd com all img 在實驗課上都是在Ubuntu環境下,雖然之前都是在windows系統裏寫android程序,但是我還是準備在Ubuntu下配置一個Android Studio環境。 通過百度,我先看到一個最簡單

Objective C 學習心得 (一):--Windows下搭建objective C開發環境

      最近打算針對iPhone、iPod touch和iPad開發一些應用,所以,需要開始學習Objective C(蘋果推出的類似C語言的開發語言)。由於蘋果的自我封閉的產業鏈發展模式(從晶片、機器、開發語言、終端產品、服務)的限制,要想開發針對蘋果iPhone等產品

windows下 Codeblocks 搭建 Objective-c 開發環境

若你的電腦是windows的,但是又對Objectice-c感興趣,而電腦執行虛擬機器上的Mac OX又比較卡,那不妨試試在windows下執行Objective-c編譯器吧! 這裡是用Codeblocks整合Objective-c開發環境。在硬體方面沒有啥要求,而且操作簡

Windows10搭建Kinect 2 開發環境

app 應用 系統版本 開發 環境 windows 面向 文檔 comm 因為Visual Studio 2017的應用最低只能面向windows10,而Kinect SDK 2.0的系統版本要求是windows 8,所以不得不下載Visual Studio

Windows下配置Objective-C開發環境

hello rtc linker ces objc 安裝 指定 lighting 如果 一、IDE的安裝(Code::Blocks) 我們選用Code::Blocks作為IDE,它的安裝包可以從網上各處下載下來,對版本無特別要求。筆者使用的是16.10的版本(鏈接: htt

vs2017搭建linux c++開發環境

學習 桌面 .com 無法 zh-cn href logs aic ice segmentfault對應博文頁面:https://segmentfault.com/a/1190000016300215 最近一直在閱讀ovs的源碼,看到用戶態代碼的時候,需要對用戶態的代碼進行

在樹莓派2B搭建indigo ros 開發環境

第一次接觸ros,感覺無從下手,在學了了官網wiki20篇教程後對ros有了一個初步的瞭解。由於我所在的科研小組專案的需要,需要在raspberry pi 2B上搭建indigo ros的開發環境,在經過兩天的努力後終於搞定,在pi2上執行也十分流暢。 1、在https:/

ubuntu14.04(32位)配置Qt開發環境

今晚忙活了好久,就做了一個Ubuntu配置Qt的工作。 現在總結以下,無非3點: 1. 安裝ubuntu 2. 安裝qt安裝包(從qt-project.org)下載 3. 安裝C++開發環境 4. 安裝OpenGL 下面是詳細的方法。 // ===============

Windows搭建React-Native開發環境

技術是進步的,如果你還在為糾結學習Android還是IOS,那麼你已經OUT了,這是網友說的。React-Native怎麼樣我還不知道,只知道要學習這個東西。今天給大家說一說,如何在Windows上搭建React-Native的開發環境。 第一步:如果你是An

在Ubuntu16.04搭建Android8.0編譯環境

1. 安裝AOSP編譯工具sudo apt install git-core sudo apt install gnupg sudo apt install flexsudo apt install bisonsudo apt install gperfsudo apt in

在Mac搭建React Native開發環境

概述 前面我們介紹過在window環境下開發React Native專案,今天說說怎麼在mac上搭建一個RN的開發環境。 配置mac開發環境 基本環境安裝 1.先安裝Homebrew:用於安裝NodeJS和其他工具。 注:Homebrew詳

虛擬機器中在Ubuntu14.04搭建QT交叉編譯環境--2014/8/14

一、Ubuntu安裝及配置 在windows上下載VMware10.0.2 並安裝,在網上找永久金鑰啟用。開啟後是中文版 在Ubuntu官網上下載ubuntu-14.04.1-desktop-i386 開啟虛擬機器,並建立新的虛擬機器,記憶體1g,硬碟20g 。虛擬磁碟檔案

Eclipse搭建Spring的開發環境

              一、安裝Spring Tool Suite外掛 如圖:   點選Finish之後等待安裝,安裝完之後彈窗點選yes重啟Eclipse,重啟後顯示如下介面:

用cl和sublime搭建簡易c++開發環境

一些方法。。記錄一下。。僅供日後查閱。。 1.設定正確的環境變數,包括將VC\bin,Common7\IDE加入PATH,設定好INCLUDE和LIB變數。 2.由於使用vc的編譯器CL,所以需要新建一個build-system 我的sublime-build配置檔案:

15分鐘在筆記本搭建 Kubernetes + Istio開發環境

實例 整合 cpu iyu -- win yun power fault 11月13~15日,KubeCon 上海大會召開,雲原生是這個秋天最火熱的技術。很多同學來問如何上手 Kubernetes和Istio 服務網格開發。本文將幫助你利用Docker CE桌面版,15分鐘

MAC搭建eclipse+android開發環境

下載eclipse 找到“Eclipse IDE for java Developers”,選擇“Mac OS X(Cocoa)” 根據你的mac處理器,去選在是下載64bit或32bit, 這裡我的Pro是i5處理器支援64位,點選右邊的“Mac OS X 64bit”。(如何檢視MAC處理器多少

在蘋果Mac電腦搭建Android Eclipse開發環境

在Mac電腦上搭建Android Eclipse開發環境在Mac電腦上搭建Android Eclipse開發環境有如下4步:1. 先安裝JDK,注意不要安裝最新的1.9,安裝1.8就好2. 下載Eclipse3. 在Eclipse上安裝ADT 外掛4. 通過 Android

用NDK在Ubuntu14.04安裝arm交叉編譯環境

之前沒有接觸過交叉編譯,後來因為在實驗室要在機器人上跑arm程式,所以就嘗試著用Ubuntu來編譯arm的程式,自己上網查方法並諮詢了很多同學同事,最終搭建成功了這個交叉編譯環境。 由於NDK中帶有一整套arm的gcc和g++編譯器,庫和檔案,所以用NDK安裝

Ubuntu14.04搭建Kinect V2的環境以及出現的問題解決方案

請各位注意是kinect V2,kinect有兩個版本,V1和V2 一、安裝 1、Download libfreenect2 source git clone [email protected].com:DongdongBai/l