Re: win32 port of libglademm doesn't work



Viktor Dick wrote:
Hey, Cedrig Gustin gave me the solution:
under Windows the order of compiler and linker flags matters.
So it is important to do give the LDFLAGS after the source files:
$(GCC) $(CFLAGS) -o $(BIN) $(SRC) $(LDFLAGS)
and not
$(GCC) $(CFLAGS) $(LDFLAGS) -o $(BIN) $(SRC

Yes, in Makefiles though it's better to separate the compiling and linking concerns, then only the compiler or linker flags would be needed instead of both at once. E.g.:

exename: main.o Foo.o Bar.o
	$(CXX) $(LDFLAGS) $^ $(GTKMM_LIBS) $(BAZ_LIBS) -o $@
.cpp.o:
	$(CXX) $(CFLAGS) -c $< $(GTKMM_CFLAGS) $(BAZ_CFLAGS) -o $@

It also helps to invoke 'g++' for compiling C++ source rather than 'gcc'. :) I'm surprised that works for you at all. (If I had a dollar for the number of times I've accidentally used gcc for compiling C++ tests, and been baffled by it spitting out errors when there shouldn't be any...)

...Of course, there's always autotools. ;)

--
Michael J M Thomson (mjmt|doom|patient0)

Knock knock, Neo...
main(){int/* gcc matrix.c -o matrix */i=0,j,s[40]={0,},l[40];for(;;){s[i]||
(l[i]=s[i]=rand()%10);for(j=0;j<25;++j)printf("\x1b[%d;%dH\x1b[%d;3%cm%c",s
[i]+j,i*2+1,l[i]-j==1||l[i]-j!=2&&l[i]-j<6||l[i]-j>15&&l[i]-j<21||0,(l[i]-j
<3?7:(l[i]-j<16)*2)+'0',j<l[i]?rand()%93+33:32);s[i]*=++l[i]<25;i=++i%40;}}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]