मैं संस्करण अंतर के कारण लक्ष्य प्रणाली का उपयोग करने के बजाय अपने कार्यक्रम के साथ साझा पुस्तकालयों को आपूर्ति करना चाहता हूं।एक अलग libc फ़ाइल से कैसे लिंक करें?
ldd
बताती है कि मेरी कार्यक्रम इन साझा libs का उपयोग करता है:
linux-gate.so.1 => (0xf7ef0000)**(made by kernel)**
libc.so.6 => /lib32/libc.so.6 (0xf7d88000)**(libc-2.7.so)**
/lib/ld-linux.so.2 (0xf7ef1000)**(ld-2.7.so)**
मैं सफलतापूर्वक के साथ संकलन के द्वारा ld-xxx.so लिंक किया है:
gcc -std=c99 -D_POSIX_C_SOURCE=200112L -O2 -m32 -s -Wl,-dynamic-linker,ld-2.7.so myprogram.c
लेकिन मैं सफल लिंक libc-xxx.so
करने में कामयाब नहीं किया है। मैं उसे कैसे कर सकता हूँ ?
यदि आप केवल एक निष्पादन योग्य है, तो आप स्थिर अपने कार्यक्रम को जोड़ने पर विचार कर सकते है। इस तरह कोई भी गलती से libc का अपना संस्करण खो देगा और यदि वे आपके प्रोग्राम को हटा देते हैं तो उनके पास आपका libc lingering नहीं होगा। – nategoose
वही लेकिन स्थिर रूप से: http://stackoverflow.com/questions/10763394/how-to-build-a-c-program-using-a-custom-version-of-glibc –