আপনি যদি এটি সহজভাবে করেন তবে:
ar x a.a
ar x b.a
ar c c.a *.o
আ ও বা উভয় ক্ষেত্রে একই নামের সদস্য থাকলে আপনি কিছু অবজেক্ট ফাইল হারিয়ে ফেলবেন, আপনাকে বিভিন্ন সংরক্ষণাগারের সদস্যদের আলাদা ফোল্ডারে বের করতে হবে:
ar x a.a && mv *.o a_objs
ar x b.a && mv *.o b_objs
ar c c.a a_objs/*.o b_objs/*.o
আরও উল্লেখযোগ্য যে, একই সংরক্ষণাগারে একই নামের একাধিক সদস্য রয়েছেন ( আ-তে বলুন), আপনি যদি আর এক্স এএ চালান , আপনি একই নামের সেই সদস্যদের জন্য কেবল একজন পাবেন।
একটি সংরক্ষণাগারে একই নামের সমস্ত সদস্যকে বের করার একমাত্র উপায় হল 'N' বিকল্পের মাধ্যমে সদস্য সংখ্যাটি নির্দিষ্ট করা:
ar xN 1 a.a xxx.c.o && mv xxx.c.o xxx.c.1.o
ar xN 2 b.a xxx.c.o && mv xxx.c.o xxx.c.2.o
...
এটি একটি ক্লান্তিকর কাজ হবে, সুতরাং সেই কাজটি করার জন্য আপনাকে আরও পরিশীলিত স্ক্রিপ্ট লিখতে হবে।
একটি alচ্ছিক সমাধান হ'ল আপনি একাধিক সংরক্ষণাগারকে একটি ভাগ করা লাইব্রেরিতে সংযুক্ত করতে পারেন:
g++ -shared -o c.so -Wl,--whole-archive a.a b.a
এইভাবে লিঙ্কার আপনার জন্য সমস্ত জিনিস পরিচালনা করবে!
libtool
libtool -static -o new.a old1.a old2.a