Screenshot instructions:
Windows
Mac
Red Hat Linux
Ubuntu
Click URL instructions:
Right-click on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)
From: Bulgrien, Kevin <Kevin.Bulgrien@GDSATCOM.com> - 2006-08-01 18:01:45
|
Newb here as far as building/configuring applications with tools like libtool, automake, autoconf, etc., so apologies to the list if this is the wrong place to ask this question. I'm posting mostly to see if someone could steer me in the right direction to help me figure out what I did wrong. I have a full default install of MinGW/MSYS/msysDTK, so MinGW 5.0.0 is at C:/MinGW, and MSYS 1.0.11 and msysDTK 1.0.1 is at c:/msys/1.0. I needed pkg-config, so I dropped it and its dependencies in C:\MinGW, then I gathered all the dependencies for the application, figured out the proper environment and ./configure command. The applications compiles successfully, but the link fails with g++.exe: C:/msys/1.0/mingw/lib/dllcrt2.o: No such file or directory I tried a number of LDFLAGS settings in conjuction with ./configure to no avail before noticing that this was not a library, but an object. Now I am confused about why the build tools decided that the object file was somewhere it wasn't. dllcrt2.o is really located elsewhere: $ ls c:/MinGW/lib/dll* c:/MinGW/lib/dllcrt1.o c:/MinGW/lib/dllcrt2.o Eventually I found a reference to the object in the sources: $ grep dllcrt2 * libtool:predep_objects="/mingw/lib/dllcrt2.o c:/MinGW/bin/../lib/gcc/mingw32/3.4.2/crtbegin.o" I see libtool is here: $ which libtool ./libtool Some googling turns up various reference to a gcc spec file, so I looked for that: $ find /c/mingw -name specs /c/mingw/lib/gcc/mingw32/3.4.2/specs $ find / -name specs $ grep dllcrt /c/mingw/lib/gcc/mingw32/3.4.2/specs %{shared|mdll:dllcrt2%O%s} %{!shared:%{!mdll:crt2%O%s}} %{pg:gcrt2%O%s} %{! fno-exceptions:crtbegin%O%s} The above is greek to me, but since the tail end of that spec file looks an awful lot like the failed link, this might be a big clue about where the problem is: *link_command: %{e*} %{m} %{N} %{n} %{r} %{s} %{t} %{u*} %{x} %{z} %{Z} %{!A:%{!nostdlib:%{!nostartfiles:%S}}} %{static:} %{L*} %(link_libgcc) %o %{fprofile-arcs|fprofile-generate:-lgcov} %{!nostdlib:%{!nodefaultlibs:%(link_gcc_c_sequence)}} %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} }}}}}} Any suggestions about where to focus my investigation would be welcomed. Google resulted in some suggestions about tweaking the spec file. Does that sound right, or is that coming at the issue from the wrong end? I tend not to distrust the tool package, but rather something I might have done along the way that wasn't right. c:/MinGW/mingw32/bin/ld.exe -r -o .libs/libgnuradio-core.la-3.o .libs/libgnuradio-core.lax/libruntime.a/gr_vmcircbuf_mmap_tmpfile.o .libs/libgnuradio-core.lax/libruntime.a/gr_vmcircbuf_sysv_shm.o .libs/libgnuradio-core.la-2.o g++ -shared -nostdlib /mingw/lib/dllcrt2.o c:/MinGW/bin/../lib/gcc/mingw32/3.4.2/crtbegin.o .libs/libgnuradio-core.la-3.o -Lc:/MinGW/lib -LC:/msys/1.0/home/kbulgrien/gnuradio/required/fftw3/lib C:/msys/1.0/home/kbulgrien/gnuradio/required/fftw3/lib/libfftw3f.dll.a -lm -Lc:/MinGW/bin/../lib/gcc/mingw32/3.4.2 -Lc:/MinGW/bin/../lib/gcc -L/mingw/lib/gcc/mingw32/3.4.2 -Lc:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../../../mingw32/lib -L/mingw/lib/gcc/mingw32/3.4.2/../../../../mingw32/lib -L/mingw/lib -Lc:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../.. -L/mingw/lib/gcc/mingw32/3.4.2/../../.. -lstdc++ -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt c:/MinGW/bin/../lib/gcc/mingw32/3.4.2/crtend.o -o .libs/libgnuradio-core-0.dll -Wl,--image-base=0x10000000 -Wl,--out-implib,.libs/libgnuradio-core.dll.a g++.exe: C:/msys/1.0/mingw/lib/dllcrt2.o: No such file or directory make[4]: *** [libgnuradio-core.la] Error 1 make[4]: Leaving directory `/home/kbulgrien/gnuradio/gnuradio-core-2.8/src/lib' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/kbulgrien/gnuradio/gnuradio-core-2.8/src/lib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/kbulgrien/gnuradio/gnuradio-core-2.8/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/kbulgrien/gnuradio/gnuradio-core-2.8' make: *** [all] Error 2 --- Kevin R. Bulgrien Design and Development Engineer http://www.gdsatcom.com/ VertexRSI CONFIDENTIAL/PROPRIETARY Unless otherwise indicated, all information (including attachments) contained in this e-mail communication is confidential and proprietary information exclusively owned by the sender and/or its related or affiliated companies and shall not, without the prior written consent of the sender, be used, disclosed, distributed or reproduced, in whole or in part, by anyone other than the individual or entity to whom this communication is addressed exclusively for the purpose expressly indicated in this communication. This e-mail communication is intended for the use of the individual or entity to whom it is addressed. If you are not the intended recipient of this communication, you are hereby notified that any use, dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please destroy any copies, electronic, paper or otherwise that you may have. |