Hey everyone, I am trying to build and link some 32bit binaries on Ubuntu 15.10 64bit, but no matter what combination of arguments I give FIND_LIBRARY I cannot get it to use the 32bit libs. I have been scouring the mailing lists and came up with all these things to try but nothing has worked so far. I am using cmake 3.0.2. Please let me know what I am missing. Thanks in advance for your help. Nick
The relevant part of my cmake file: Set(CFLAGS "-m32") Set(CXXFLAGS "-m32") Set(CMAKE_C_FLAGS "-m32") Set(CMAKE_CXX_FLAGS "-m32") Set(CMAKE_SHARED_LINKER_FLAGS "-m32") Set(FIND_LIBRARY_USE_LIB64_PATHS OFF) MESSAGE( STATUS "CMAKE_LIBRARY_PATH: " ${CMAKE_LIBRARY_PATH} ) MESSAGE( STATUS "CFLAGS: " ${CFLAGS} ) MESSAGE( STATUS "CXXFLAGS: " ${CXXFLAGS} ) MESSAGE( STATUS "CMAKE_C_FLAGS: " ${CMAKE_C_FLAGS} ) MESSAGE( STATUS "CMAKE_CXX_FLAGS: " ${CMAKE_CXX_FLAGS} ) MESSAGE( STATUS "CMAKE_SHARED_LINKER_FLAGS: " ${CMAKE_SHARED_LINKER_FLAGS} ) MESSAGE( STATUS "FIND_LIBRARY_USE_LIB64_PATHS: " ${FIND_LIBRARY_USE_LIB64_PATHS} ) FIND_LIBRARY(DL_LIBRARY NAMES dl PATHS ${LIB_PATH} NO_DEFAULT_PATH) FIND_LIBRARY(NL_LIBRARY NAMES nl PATHS ${LIB_PATH} NO_DEFAULT_PATH) FIND_LIBRARY(PTHREAD_LIBRARY NAMES pthread PATHS ${LIB_PATH} NO_DEFAULT_PATH) MESSAGE(STATUS "DL_LIBRARY is ${DL_LIBRARY}") MESSAGE(STATUS "NL_LIBRARY is ${NL_LIBRARY}") MESSAGE(STATUS "PTHREAD_LIBRARY is ${PTHREAD_LIBRARY}") The output I get: -- CMAKE_LIBRARY_PATH: /lib/i386-linux-gnu -- CFLAGS: -m32 -- CXXFLAGS: -m32 -- CMAKE_C_FLAGS: -m32 -- CMAKE_CXX_FLAGS: -m32 -- CMAKE_SHARED_LINKER_FLAGS: -m32 -- FIND_LIBRARY_USE_LIB64_PATHS: OFF -- DL_LIBRARY is DL_LIBRARY-NOTFOUND -- NL_LIBRARY is NL_LIBRARY-NOTFOUND -- PTHREAD_LIBRARY is PTHREAD_LIBRARY-NOTFOUND Without NO_DEFAULT_PATH: -- DL_LIBRARY is /usr/lib/x86_64-linux-gnu/libdl.so -- NL_LIBRARY is /lib/x86_64-linux-gnu/libnl.so -- PTHREAD_LIBRARY is /usr/lib/x86_64-linux-gnu/libpthread.so Proof that I have the 32bit libs installed: $ ls -l /lib/i386-linux-gnu/*pthread* -rwxr-xr-x 1 root root 137044 Feb 16 14:06 /lib/i386-linux-gnu/libpthread-2.21.so* lrwxrwxrwx 1 root root 18 Feb 16 14:06 /lib/i386-linux-gnu/libpthread.so.0 -> libpthread-2.21.so* $ ls -l /lib/i386-linux-gnu/*libnl* -rw-r--r-- 1 root root 165936 Jul 15 2015 /lib/i386-linux-gnu/libnl-3.a lrwxrwxrwx 1 root root 19 Jul 15 2015 /lib/i386-linux-gnu/libnl-3.so -> libnl-3.so.200.21.0 lrwxrwxrwx 1 root root 19 Jul 15 2015 /lib/i386-linux-gnu/libnl-3.so.200 -> libnl-3.so.200.21.0 -rw-r--r-- 1 root root 132852 Jul 15 2015 /lib/i386-linux-gnu/libnl-3.so.200.21.0 $ ls -l /lib/i386-linux-gnu/*libdl* -rw-r--r-- 1 root root 13808 Feb 16 14:06 /lib/i386-linux-gnu/libdl-2.21.so lrwxrwxrwx 1 root root 13 Feb 16 14:06 /lib/i386-linux-gnu/libdl.so.2 -> libdl-2.21.so -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake