0

我正在尝试使用 cmake 在 64 位系统上构建 32 位共享库:

CMAKE_C_FLAGS=-m32;CMAKE_CXX_FLAGS=-m32;CMAKE_LD_FLAGS=-m32 -L/usr/lib/i386-linux-gnu;CMAKE_SHARED_LIBRARY_C_FLAGS=-m32;CMAKE_SHARED_LIBRARY_CXX_FLAGS=-m32;CMAKE_SYSTEM_LIBRARY_PATH=/usr/lib/i386-linux-gnu;CFLAGS=-m32;LDFLAGS=-m32;CXXFLAGS=-m32 cmake

如您所见,我尝试添加在堆栈溢出时发现的所有变量,但 cmake 仍在添加 64 位 libxml2 而不是 32 位:

-- 检查模块 'libxml-2.0'
-- 找到 libxml-2.0,版本 2.7.8
-- 找不到 xmllint 程序。如果要验证生成的 doc 文件,请安装它。
-- 找到 LibXml2:/usr/lib/x86_64-linux-gnu/libxml2.so

如何强制 cmake 使用位于的 32 位版本/usr/lib/i386-linux-gnu

4

1 回答 1

0

变量被调用CMAKE_LD_FLAGS,它被调用CMAKE_EXE_LINKER_FLAGS

于 2014-01-28T21:49:22.443 回答