我正在尝试使用CMake设置我的交叉编译版本。到目前为止,我从命令行设置了交叉编译器文件,调用CMake:
#CMAKE cross compiler file
set(CMAKE_TOOLCHAIN_FILE "Toolchain file" CACHE FILEPATH "../arm-crosscompile.cmake")
这很好用。
现在我尝试通过添加以下内容从GUI设置CMAKE_TOOLCHAIN_FILE变量:
SqlDataReader rdr = null;
SqlConnection conn = new SqlConnection("YOUR_CONNECTION_STRING_HERE");
SqlCommand cmd = new SqlCommand("select * from whatever_jira_table", conn);
rdr = cmd.ExecuteReader();
//look up how to read from a reader
conn.Close();
conn.Dispose();
到我的CMakeLists.txt。
这实际上显示了GUI中的变量,但是当我按下"配置"按钮,出现在CMAKE_CXX_COMPILER变量中的c ++编译器是默认情况下的那个,而不是工具链文件中指定的那个。
如何从Cmake-GUI设置工具链文件?
答案 0 :(得分:8)
终于明白了。很简单。
第一次按下"配置"按钮,您将指定生成器参数,为您的项目选择任何生成器。然后选择选项"指定工具链文件以进行交叉编译" 并单击下一步:
:
单击“下一步”。在下面的对话框中,输入交叉编译文件的路径并完成。
答案 1 :(得分:3)
您是在调用project()
之前还是之后设置变量?
编译器检测发生在该调用内部,因此必须在到达之前设置它。
虽然我不确定您是否能够在首次运行后更改这些设置。
通常在第一次使用向导样式对话框运行Cmake时设置工具链。