2009-09-26 40 views
0

任何人都可以編寫使用mysqlclient庫的代碼?我可以編譯工作,但沒有鏈接:(使用xcode編譯基本的mysql c代碼

XCode中生成以下的輸出:

Build TestMysql of project TestMysql with configuration Debug 

Ld build/Debug/TestMysql normal x86_64 
cd /Users/jacob/Documents/cocoa/TestMysql 
setenv MACOSX_DEPLOYMENT_TARGET 10.5 
/Developer/usr/bin/gcc-4.2 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.5.sdk 
    -L/Users/jacob/Documents/cocoa/TestMysql/build/Debug -L/usr/local/mysql/lib 
    -L/usr/local/mysql-5.1.38-osx10.5-x86_64/lib 
    -F/Users/jacob/Documents/cocoa/TestMysql/build/Debug -filelist /Users/jacob/Documents/cocoa/TestMysql/build/TestMysql.build/Debug/TestMysql.build/Objects-normal/x86_64/TestMysql.LinkFileList 
    -mmacosx-version-min=10.5 -lm -lz -lmysqlclient -lmygcc " 
" -framework CoreFoundation -o /Users/jacob/Documents/cocoa/TestMysql/build/Debug/TestMysql 

i686-apple-darwin10-gcc-4.2.1: 
: No such file or directory 
Command /Developer/usr/bin/gcc-4.2 failed with exit code 1 

並討論MySQL/Cocoa框架,我寫的代碼必須在OS/X和編譯是的,我已經知道了linux。具有諷刺意味的是,我花了20分鐘的時間來編寫make文件來編譯和鏈接並運行objective-c/mysql代碼,但是xcode太複雜了。

+0

-lmygcc後的空字符串是什麼? – nall 2009-09-26 02:34:53

+0

是的「」看起來很奇怪。從xcode內部看來它裏面有一個換行符! – Jacob 2009-09-26 02:38:23

回答

1

我相信「」字符串是造成你的悲傷 - 尤其是因爲錯誤信息的文件名是空字符串。

替代方法: 您是否考慮過使用您在XCode中生成的Makefile?

File-> New Project-> Other-> External Build System。

這種方法蘋果文檔:http://bit.ly/dYNuR

+0

好的建議,我不知道你可以做到這一點。不過,我寧願利用蘋果工具主要在我的Mac上的xcode上開發,然後使用makefile來構建Linux版本。 – Jacob 2009-09-26 02:37:23

1

好了,它的一個Xcode錯誤。在添加帶+和 - 按鈕的鏈接器選項的屏幕下,不知何故,有一個額外的鏈接選項,其中帶有CR或LF。不要問我怎麼到那裏我不知道! (:

有關怪異「的這一評論」幫我解決這個問題(最終)

+0

抱歉,這是你的偶像,但你的偶像是什麼?我在操作系統上見過很多。 – nall 2009-09-26 03:35:49

+0

似乎也發生如果你有自定義標誌列表中的空行(或任何其他列表) – AlexEzh 2011-05-11 23:01:59

0

我知道這是一個老的文章,但對任何人有同樣的問題...

確保你。安裝到/ usr /本地首先設置生成文件: sudo cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local

那麼,「使安裝」將會把一切都在正確的目錄下,在Xcode中,您必須右鍵單擊該項目的文件夾,說添加現有的框架,改變下拉選擇dylibs,最後選擇libmysql.dylib。

libmysql.dylib是xcode需要查看函數名稱的共享庫。