PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : cygwin, g++ und ncurses: undefined reference



panzi
07-10-2004, 20:55
Hi

Wenn ich unter cygwin ein C++ Programm von mir versuche zu kompelieren bekomm ich lauter linker errors (z.B. "gameoflife.hpp:70: undefined reference to `_stdscr'").
Meine Makefile schaut so aus:

CXX = g++
FLAGS = -Wall -fmessage-length=0 -g -O2 -DBROKEN_LINKER
LIBS = -lncurses
OBJ = obj/main.o obj/gameoflife.o
BIN = bin/gameoflife.exe

.PHONY: all clean

all: $(BIN)

$(BIN): $(OBJ)
$(CXX) $(FLAGS) $(LIBS) -o $@ $(OBJ)

obj/main.o: main.cpp
$(CXX) $(FLAGS) -o $@ $< -c

obj/gameoflife.o: gameoflife.cpp gameoflife.hpp
$(CXX) $(FLAGS) -o $@ $< -c

clean:
rm -f $(BIN) $(OBJ)


Über ein Problem mit cygwin, ncurses und c++ hab ich per google erfahren: da wurde gesagt man solle -DBROKEN_LINKER definieren. Das half bei mir aber garnix.

Hat jemand eine Idee?
Bin für jede Hilfe dankbar, panzi.

detonation997
22-04-2005, 16:45
*Nach oben schieb*

Hat sonst noch niemand diese undefined references gehabt?

peschmae
22-04-2005, 18:35
Jede Menge. Das Patentrezept besteht darin gegen diejenige Bibliothek zu linken gegen die zu linken man vergessen hatte...

MfG Peschmä

panzi
22-04-2005, 21:19
Ich hatte ja -lncurses angegeben!

peschmae
23-04-2005, 08:25
Du schon aber er vielleicht nicht.

MfG Peschmä

detonation997
23-04-2005, 10:18
Hallo,

oja, meine Beschreibung stimmt exakt mit der von panzi überein.

LG Rainer

detonation997
24-04-2005, 15:52
Hallo,

ich bin in einem anderen Forum auf einen Thread mit ähnlichem Inhalt gestoßen:
http://www.talkaboutprogramming.com/group/comp.lang.objective-c/messages/21184.html

Linken funktioniert jetzt:



gcc hello_ncurses.c -lncurses.dll -o hello_ncurses.exe


Ich habs auch mit g++ ausprobiert, kein Problem!

LG Rainer