第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

結(jié)合靜態(tài)庫

結(jié)合靜態(tài)庫

C
慕姐8265434 2019-10-28 14:33:38
我在此問題中嘗試了該方法,但ar由于無法再次合并目標(biāo)文件,因此的linux版本似乎與mac版本不同。我基本上想要做的是通過運(yùn)行腳本構(gòu)建階段將另一個(gè)靜態(tài)庫合并到我的Xcode靜態(tài)庫構(gòu)建產(chǎn)品中。不幸的是,我無法將另一個(gè)庫直接編譯到我的項(xiàng)目中,因?yàn)樗哂凶约旱臉?gòu)建系統(tǒng)(因此,我使用已編譯的庫)。我認(rèn)為應(yīng)該可以將其他庫合并ar到Xcode生成的庫中,而無需反編譯生成產(chǎn)品。我該如何完成?
查看完整描述

3 回答

?
互換的青春

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊

你可以libtool用來做


libtool -static -o new.a old1.a old2.a


查看完整回答
反對 回復(fù) 2019-10-28
?
慕村225694

TA貢獻(xiàn)1880條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果要處理多體系結(jié)構(gòu)靜態(tài)庫,則需要一些額外的操作來精簡每個(gè)庫,組合精簡的版本,然后增加結(jié)果。這是一個(gè)方便的腳本,您可以對其進(jìn)行編輯以滿意的方式完成所有這些工作。這個(gè)例子有三個(gè)iOS的圖書館path/to/source/libs/libone.a,path/to/source/libs/libtwo.a以及path/to/source/libs/libthree.a和它們合并成一個(gè)單一的庫libcombined.a。


#! /bin/bash


INPATH="path/to/source/libs"


LIBPREFIX="lib"

LIBS="one two three"

LIBEXT=".a"


OUT="combined"


ARCHS="armv7 armv7s arm64"


for arch in $ARCHS

do

  for lib in $LIBS

  do

    lipo -extract $arch $INPATH/$LIBPREFIX$lib$LIBEXT -o $LIBPREFIX$lib-$arch$LIBEXT

  done

  INLIBS=`eval echo $LIBPREFIX\{${LIBS// /,}\}-$arch$LIBEXT`

  libtool -static -o $LIBPREFIX$OUT-$arch$LIBEXT $INLIBS

  rm $INLIBS

done


OUTLIBS=`eval echo $LIBPREFIX$OUT-\{${ARCHS// /,}\}$LIBEXT`

lipo -create $OUTLIBS -o $LIBPREFIX$OUT$LIBEXT

rm $OUTLIBS


查看完整回答
反對 回復(fù) 2019-10-28
?
慕田峪4524236

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超5個(gè)贊

您應(yīng)該用來ar -r在MacOS上創(chuàng)建檔案:


ar -x libabc.a

ar -x libxyz.a

ar -r libaz.a  *.o


查看完整回答
反對 回復(fù) 2019-10-28
  • 3 回答
  • 0 關(guān)注
  • 479 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號