On Thu, 6 Jun 2013, Curt, WE7U wrote: > On Thu, 6 Jun 2013, Curt, WE7U wrote: > >> A few more things (as I get further along): >> >> I tried cmake and get all kinds of nasty error messages. Nothing really >> happens. Looks like maybe the OpenSuSE cmake package is broken, or there's >> additional setup I need to do before I can use it the first time on the >> system. >> >> So... Using "./configure;make;make install", which I'm very familiar with, >> I got further. >> >> codec2 wasn't an issue. "./configure;make;make install" worked fine for >> it, from the codec2-dev directory. >> >> In the fdmdv2/src directory: "make -f Makefile.linux" got to libctb and >> quit. >> >> I did some searching and found the site for libctb distribution, but >> couldn't easily find how to download just the libctb sources. >> >> In Makefile.linux I found "wget >> https://iftools.com/download/ctb/0.16/libctb-0.16.tar.gz", so did that in >> another directory and got libctb installed from libctb-0.16/build/ using >> "make -f GNUmakefile" and "make -f GNUmakefile install". >> >> Then "make -f Makefile.linux" in the fdmdv2/src directory still errored out >> on libctb. Turned out the "kbhit.h" file didn't get installed by the >> libctb make install, so I manually copied that file to the installed area >> ("/usr/local/include/ctb-0.16/"). That must be a bug in the libctb >> Makefile. >> >> Then had to go into freetel-code/fdmdv2/src/wxWidgets-2.9.4 and type >> "./configure;make;make install" >> >> Then back to fdmdv2/src and "make -f Makefile.linux". Errored out after >> successfully compiling sox: >> >> >> make[2]: Leaving directory >> `/home/src/we7u/freetel-code/freetel-code/fdmdv2/src/sox-14.4.0' >> make[1]: Leaving directory >> `/home/src/we7u/freetel-code/freetel-code/fdmdv2/src/sox-14.4.0' >> cd codec2-dev && ./configure && make && touch .built >> configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu >> checking for a BSD-compatible install... /usr/bin/install -c >> checking whether build environment is sane... yes >> checking for gawk... gawk >> checking whether make sets $(MAKE)... yes >> checking for gcc... gcc >> checking whether the C compiler works... yes >> checking for C compiler default output file name... a.out >> checking for suffix of executables... checking whether we are cross >> compiling... no >> checking for suffix of object files... o >> checking whether we are using the GNU C compiler... yes >> checking whether gcc accepts -g... yes >> checking for gcc option to accept ISO C89... none needed >> checking for style of include used by make... GNU >> checking dependency style of gcc... none >> configure: error: cannot run /bin/sh ./../../config.sub >> make: *** [codec2-dev/.built] Error 127 > > > I found out this was being generated by "./configure" in > "freetel-code/fdmdv2/src/codec2-dev/", as I see it in the config.log file > there. > > That's interesting because running "./configure;make;make install" in > "freetel-code/codec2-dev/" (a different directory entirely) worked for me > just fine! Same for the parallel directory called "codec2". > > So why do we have yet another codec2-dev directory under fdmdv2/src? That's > the one that isn't compiling for me, and the one evidently used by the fdmdv2 > build.
I looked up the nasty-grams that cmake was giving me. Turns out I just needed to delete the CMakeCache.txt file to make them go away, then I churned through installing various libraries until it was able to finish. The only difference between my library names and what the cmake messages told me to install was with samplerate-devel: I need to install libsamplerate-devel on OpenSuSE. Now when I type "make" I see the "golay23.h" error which I remember reading about lately. That file is present in both the codec2-dev/src/ and fdmdv2/src/codec2-dev/src/ directories. I copied the file from the latter directory to /usr/local/include/ and the "make" continued, then blew up at the "Linking CXX executable freedv" stage: Linking CXX executable freedv CMakeFiles/freedv.dir/fdmdv2_main.cpp.o: In function `per_frame_rx_processing(FIFO*, int*, FIFO*, int*, int*, CODEC2*)': fdmdv2_main.cpp:(.text+0x190a): undefined reference to `golay23_decode' fdmdv2_main.cpp:(.text+0x191a): undefined reference to `golay23_count_errors' fdmdv2_main.cpp:(.text+0x1cdd): undefined reference to `golay23_decode' fdmdv2_main.cpp:(.text+0x1ced): undefined reference to `golay23_count_errors' fdmdv2_main.cpp:(.text+0x1e2d): undefined reference to `golay23_decode' fdmdv2_main.cpp:(.text+0x1e3d): undefined reference to `golay23_count_errors' CMakeFiles/freedv.dir/fdmdv2_main.cpp.o: In function `per_frame_tx_processing(short*, short*, CODEC2*)': fdmdv2_main.cpp:(.text+0x224a): undefined reference to `golay23_encode' fdmdv2_main.cpp:(.text+0x23f4): undefined reference to `golay23_encode' fdmdv2_main.cpp:(.text+0x2466): undefined reference to `golay23_encode' CMakeFiles/freedv.dir/fdmdv2_main.cpp.o: In function `txRxProcessing()': fdmdv2_main.cpp:(.text+0x2db9): undefined reference to `golay23_decode' fdmdv2_main.cpp:(.text+0x2dc9): undefined reference to `golay23_count_errors' fdmdv2_main.cpp:(.text+0x33e7): undefined reference to `golay23_decode' fdmdv2_main.cpp:(.text+0x33f7): undefined reference to `golay23_count_errors' fdmdv2_main.cpp:(.text+0x35a1): undefined reference to `golay23_decode' fdmdv2_main.cpp:(.text+0x35b1): undefined reference to `golay23_count_errors' CMakeFiles/freedv.dir/fdmdv2_main.cpp.o: In function `MainFrame::MainFrame(wxWindow*)': fdmdv2_main.cpp:(.text+0x7e6a): undefined reference to `golay23_init' collect2: ld returned 1 exit status make[2]: *** [src/freedv] Error 1 make[1]: *** [src/CMakeFiles/freedv.dir/all] Error 2 make: *** [all] Error 2 -- Curt, WE7U. http://wetnet.net/~we7u APRS Wiki: http://info.aprs.net/ ------------------------------------------------------------------------------ How ServiceNow helps IT people transform IT departments: 1. A cloud service to automate IT design, transition and operations 2. Dashboards that offer high-level views of enterprise services 3. A single system of record for all IT processes http://p.sf.net/sfu/servicenow-d2d-j _______________________________________________ Freetel-codec2 mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freetel-codec2
