2011-09-19 23 views
10

मेरे पास मैक चल रहा है मैक है और मैंने अभी अपाचे का नवीनतम संस्करण डाउनलोड किया है।मैं कैसे जांच सकता हूं कि एक संकलित बाइनरी 32 बिट या 64it है या नहीं?

$./configure --prefix=/Users/daniels/Sandbox 
$ make 
$ make install 

क्या वास्तुकला के लिए httpd द्विआधारी संकलित किया गया है: मैं हमेशा की तरह बातें किया था? 32 या 64? क्या यह खोजने का कोई तरीका है? मैं जो खोज रहा हूं वह यह है कि मैं एप्लिकेशन की तरह एक एमएएमपी बनाना चाहता हूं और मैं अपाचे, PHP, MySQL को इस तरह से संकलित करना चाहता हूं ताकि मैं उन्हें एक डीएमजी फ़ाइल में डाल सकूं और फिर इसे अन्य लोगों को दे सकूं और वे कर सकते हैं चलाओ।

+0

के संभावित डुप्लिकेट [एक निष्पादन यदि निर्धारित (या पुस्तकालय) 32-64-बिट्स (ओएसएक्स पर) है] (http://stackoverflow.com/questions/1941825/determine-if-an-executable-or-library-is-32-or-64- बिट्स ऑन-OSX) – outis

उत्तर

18

file कमांड देखें।

$ file /usr/bin/grep 
/usr/bin/grep: Mach-O universal binary with 2 architectures 
/usr/bin/grep (for architecture x86_64): Mach-O 64-bit executable x86_64 
/usr/bin/grep (for architecture i386): Mach-O executable i386 
0

अगर अपाचे निर्धारित करने के लिए एक आसान तरीका है 32-बिट या 64-बिट dtrace का उपयोग करके वैश्विक क्षेत्र में निम्नलिखित को निष्पादित करने के लिए है:

sudo dtrace -qn 'syscall::: /execname == "httpd"/ { ab = (curpsinfo->pr_dmodel == PR_MODEL_ILP32) ? "32-bit" : "64-bit" ; exit(0); } END { printf("Apache: %s",ab); }' 
संबंधित मुद्दे

 संबंधित मुद्दे