From: vladimir g. <for...@ya...> - 2003-11-06 16:15:25
|
Hi again, I have not recieved an answer, but while playing around, I have gon further, but not to success yet... I have two linker commando, which differ only in style of passing input object files: First (generate successuly a valid .exe-file): c:\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\..\mingw32\bin\ld.exe -Bdynamic -o hello.exe c:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../../crt2.o c:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/crtbegin.o -Lc:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3 -Lc:/MinGW/bin/../lib/gcc-lib -Lc:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../../../mingw32/lib -Lc:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../.. hello.o -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt c:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/crtend.o Second (generate an .exe file, but it cannot be run, main procedure is undefined): c:\MinGW\bin\..\lib\gcc-lib\mingw32\3.2.3\..\..\..\..\mingw32\bin\ld.exe -Bdynamic -o hello.exe c:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../../crt2.o c:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/crtbegin.o -Lc:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3 -Lc:/MinGW/bin/../lib/gcc-lib -Lc:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../../../mingw32/lib -Lc:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/../../.. -T hello.lst -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt c:/MinGW/bin/../lib/gcc-lib/mingw32/3.2.3/crtend.o format of hello.lst: INPUT(hello.o) As far as I understand, these two commandos should be identical, but de-facto they are not. Any clues? Regards, Vladimir -- vladimir glazounov <for...@ya...> wrote: > I got a problem when linking multiple object files > in > one console executable. When I run: > gcc -Wl,-rpath-link,n:\MinGW/lib -o autodoc.exe -T > objs -Bdynamic > Where objs is a link script containing object files > inclusive main.o(with standart main function), I get > error: > ..\..\..\wntgcci1.pro\obj\main.o(.text+0x0):main.cxx: > multiple definition of `main' > The same command succeeds when the main.o is not in > the script and when I use instead of '-T objs' just > 'main.o'. Any clues? > Regards, > > Vladimir > > __________________________________ > Do you Yahoo!? > Protect your identity with Yahoo! Mail AddressGuard > http://antispam.yahoo.com/whatsnewfree > > > ------------------------------------------------------- > This SF.net email is sponsored by: SF.net Giveback > Program. > Does SourceForge.net help you be more productive? > Does it > help you create better code? SHARE THE LOVE, and > help us help > YOU! Click Here: http://sourceforge.net/donate/ > _______________________________________________ > MinGW-users mailing list > Min...@li... > > You may change your MinGW Account Options or > unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users __________________________________ Do you Yahoo!? Protect your identity with Yahoo! Mail AddressGuard http://antispam.yahoo.com/whatsnewfree |