/ / स्थानीय रूप से निर्मित पुस्तकालय में उपयोगकर्ता आईडी - लिनक्स, साझा-पुस्तकालय

स्थानीय रूप से निर्मित लाइब्रेरी में उपयोगकर्ता आईडी - लिनक्स, साझा-पुस्तकालय

अगर मैं एक पुस्तकालय का निर्माण करता हूं (उदाहरण के लिए क्वांटलिब: http://sourceforge.net/projects/quantlib/files/QuantLib/1.2/QuantLib-1.2.tar.gz/download), मैं देखता हूं कि मेरा उपयोगकर्ता आईडी निर्मित पुस्तकालय में एन्कोड किया गया है।

./configure --prefix=/usr/local --with-boost-include=/usr/include/boost --with-boost-lib=/usr/lib && make -j3 && sudo make install

$ grep rajanikanth /usr/local/lib/libQuantLib.*
Binary file /usr/local/lib/libQuantLib.a matches
Binary file /usr/local/lib/libQuantLib.so matches
Binary file /usr/local/lib/libQuantLib.so.0 matches
Binary file /usr/local/lib/libQuantLib.so.0.0.0 matches

क्या यह सामान्य है?

क्या उपयोगकर्ता आईडी को स्थानीय रूप से निर्मित पुस्तकालय में प्रदर्शित होने से रोकने के लिए वैसे भी है?

धन्यवाद, राज

उत्तर:

उत्तर № 1 के लिए 1

मैं देखता हूं कि मेरा उपयोगकर्ता आईडी निर्मित पुस्तकालय में एन्कोड किया गया है।

यह सबसे अधिक संभावना है क्योंकि

  1. आपने पुस्तकालय को COPTS= के साथ बनाया है-O2 -g (जो सबसे डिफ़ॉल्ट है configure के साथ निर्माण करते समय स्क्रिप्ट का उपयोग किया जाएगा gcc)।
  2. आपने इसे अपने होम डायरेक्टरी में बनाया है, जो इस तरह दिखता है /home/rajanikanth या कुछ ऐसे

क्या उपयोगकर्ता आईडी को स्थानीय रूप से निर्मित पुस्तकालय में प्रदर्शित होने से रोकने के लिए वैसे भी है?

आप गैर-डीबग संस्करण बनाकर इससे बच सकते हैं (make -j3 CFLAGS=-O2), या इसे "जेनेरिक" निर्देशिका में बनाकर, उदा। /tmp/build-quantlib