On Fri, Aug 14, 2015 at 7:43 AM, wully <[email protected]> wrote: > Hi David > > About the Cmake: When I specify > # Set default C++ flags. > #awu150813/14: auch hier die -m32 (-fPIC folgt unten) > set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32 -Wall") > set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32 -Wall -g -O2") > > to get 32bit code, the library is built ok, but the make install will > move the library to the /usr/local/lib64 > > When I move the library (or a link to it) to /usr/local/lib my sdr does > not find the version 4 library. > > Something in the build is not as it should, but I don't understand. As > stated before, the version 3 libray is correctely built and installed in > the 32bit-lib directory /usr/local/lib.
If you're forcing a 32-bit build on a 64-bit system I would recommend using environment variables instead. The internal cmake flag variables are dependent on the type of build, CMAKE_CXX_FLAGS_RELEASE, CMAKE_CXX_FLAGS_DEBUG, etc, which is both useful, and frustrating because the build type needs to match the variable (RELEASE for Release, etc). cmake will always honor flags added through environment variables regardless of build type/variable assignment. So something like: $ CFLAGS='-m32' CXXFLAGS='-m32' cmake /path/to/codec2 should work. If no languages are specified for the project C and CXX are assumed (which is why you have to set both environment variables). Since codec2 is C only, on my next commit I'll force it to only be C so the CXXFLAGS environment variable can be dropped in the future. Additionally instead of moving the installed file, change the install location during configure by adding "-DCMAKE_INSTALL_LIBDIR=/usr/local/lib" or something like that. Thanks, Richard
------------------------------------------------------------------------------
_______________________________________________ Freetel-codec2 mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freetel-codec2
