我有一個庫說libX.a我創建一個庫myLib2.ai想要靜態鏈接libX.a與myLib2.a 問題是當我使用myLib2.a它投訴要求libX .a但是我希望libX.a成爲myLib2.a的一部分,以便我可以直接使用myLib2.a靜態鏈接庫
我已經嘗試生成myLib2.a併成功完成此操作,但是當我嘗試使用它時我得到錯誤。 你可以請建議這是可能的嗎?如果可能的話,我們如何使用makefile來實現這一點。
感謝和問候,
羅希特
我有一個庫說libX.a我創建一個庫myLib2.ai想要靜態鏈接libX.a與myLib2.a 問題是當我使用myLib2.a它投訴要求libX .a但是我希望libX.a成爲myLib2.a的一部分,以便我可以直接使用myLib2.a靜態鏈接庫
我已經嘗試生成myLib2.a併成功完成此操作,但是當我嘗試使用它時我得到錯誤。 你可以請建議這是可能的嗎?如果可能的話,我們如何使用makefile來實現這一點。
感謝和問候,
羅希特
我想這兩個庫鏈接,讓一個庫。
你不想鏈接這兩個庫;你想結合他們。配方是here。
從libX.a
(使用ar -x
)中提取目標文件,然後將它們添加到myLib2.a
(使用ar -r
)。
在生成文件:
CONTENTS := $(filter %.o,$(shell ar -t libX.a))
libMy2.a: libX.a
ar -x libX.a
ar -r [email protected] $(CONTENTS)
rm $(CONTENTS)
你的意思是你要這兩個庫結合起來,形成一個庫?或者你想鏈接兩個庫(也可能是其他對象)來形成一個可執行文件? 'myLib2.a'使用'libX.a'的元素嗎? – Beta
我想鏈接兩個庫來創建一個庫。 – Rohit