मैं निम्नलिखित makefile है:OSX 10.8.3 में X11 उपयोग करना: "ld: पुस्तकालय -lX11 के लिए नहीं मिला"
PROG = draw
CFLAGS = -w -s -O2 -ansi -DSHM
XLIBS = -lX11 -lXext -lXmu -lXext -lXmu -lXt -lXi -lSM -lICE
LIBS = -framework OpenGL
INCLS = -I/usr/X11R/include -I/share/mesa/include
LIBDIR = -L/usr/X11/lib -L/usr/X11R6/lib
#source codes
SRCS = draw_main.cpp $(PROG).cpp
#substitute .cpp by .o to obtain object filenames
OBJS = $(SRCS:.cpp=.o)
#$< evaluates to the target's dependencies,
#[email protected] evaluates to the target
$(PROG): $(OBJS)
g++ -o [email protected] $(OBJS) $(LIBDIR) $(LIBS) $(XLIBS)
$(OBJS):
g++ -c $*.cpp $(INCLS)
clean:
rm $(OBJS)
हर बार जब मैं इसे चलाने के लिए प्रयास करते हैं, मैं निम्नलिखित त्रुटि मिलती है:
ld: library not found for -lX11
collect2: ld returned 1 exit status
क्या कोई मुझे यह जानने में मदद कर सकता है कि एक्स 11 के लिए पुस्तकालय ओएसएक्स 10.8.3 में कहां होना चाहिए? मेरे लिए, यह सही दिखता है।
अग्रिम धन्यवाद।
मुझे जोड़ना चाहिए, लाइन: 'LIBS = -framework OpenGL'' XLIBS = -lX11 -lXext -lXmu -lXext -lXmu -lXt -lXi -lSM -lICE' होने के लिए प्रयोग किया जाता था, लेकिन इससे मुझे और भी त्रुटियां मिलीं ओएसएक्स में (हालांकि यह लिनक्स में ठीक काम करता है) और मैंने पढ़ा है कि मुझे इसके बजाय 'फ्रेमवर्क ओपनजीएल' का उपयोग करना चाहिए। – UndefinedReference
क्या आपने libX11.so या libX11.a में/usr/X11/lib में देखा है? – parkydr
@parkydr: मैंने अभी अभी किया है और मैं ईमानदारी से उस फ़ाइल को नहीं देख सकता। क्या मेरी एक्स 11 स्थापना से कुछ गुम है? – UndefinedReference