Re: [問題] xcode link static library

看板MacDev作者 (遇見未來)時間17年前 (2007/09/18 21:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串8/12 (看更多)
※ 引述《zaimoku (遇見未來)》之銘言: : ※ 引述《yllan (藍永倫)》之銘言: : : 標題: Re: [問題] xcode link static library : : 時間: Fri Sep 14 11:33:47 2007 : : 應該是這樣沒錯,以前遇過一樣的問題~ : : 用 gcc compile 出 universal binary 沒想像中容易喔, : : 很多 unix 的東西直接編都只會編出 native architecture 而已。 : : 作法是先用 ppc arch 編一次,再用 intel arch 編一次, : : 最後再用 lipo 把兩個黏起來。 : : 想編 universal binary 的話,所有 dependency 都要有 ub... : : 所以原 po 改成用 intel arch 以後就可以編了,因為他的 .a 只有 x86.. : 首先...感謝各位的解答......我想應該就是我那個.a只有for x86吧.. : 我是按網路上的說明..在mac 終端機用 make build出來的....而我那台 : mac是intel的cpu..所以.build出來的東西應該 for x86的...因為對.. : linux平台的make 不是很熟也不知道他是做了些設怎麼去改設定... : 然後我用xcode建project而project的 arch 是設 : 成ppc i386..這樣就build不出來..如果只設i386就OK..... : 後來試了一下用xcode build library...arch設成 ppc i386..這樣的.a : 就可以在 別的project上build不管是設成i386或ppc : 要for i386又要for ppc.. xcode只要設arch = ppc i386 : 今天試了一下他應該是build出兩份op code在合併起來吧... : 因為size變為原來只設一種的兩倍大... : 可是...如果我要設定某些function for 386.. 某些function : for ppc..或著是某些.c檔for pcc 某些.c檔 for i386 : build成同一檔案...不知這要如何做...?? : 上面有人提到用...lipo...應該是合併兩個library成一個吧 ?? : 是否有....有可以利用 #ifdef "arch_ppc" 之類的做法嗎... : "arch_ppc"只是我舉例...不知道在arch設成ppc會有沒有 : 相對應的符號("arch_ppc")可用.. 今天發現一個好用的網站 apple developer 的 mail list 裡面還滿多東西的...找了一下..找到.. __BIG_ENDIAN__ 和 __LITTLE_ENDIAN__ 可以利用#define 去分別complier不同 的程式片段, __BIG_ENDIAN__是 for ppc, 而 __LITTLE_ENDIAN__ 是for i386.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.196.14
文章代碼(AID): #16xzDV9F (MacDev)
討論串 (同標題文章)
文章代碼(AID): #16xzDV9F (MacDev)