Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Premake5编译其他可执行文件_C++_Testing_Compilation_Premake - Fatal编程技术网

C++ Premake5编译其他可执行文件

C++ Premake5编译其他可执行文件,c++,testing,compilation,premake,C++,Testing,Compilation,Premake,我有点被premake atm卡住了。我想添加多个测试文件,运行测试。这些可执行文件彼此完全独立,并且与实际生成最终可执行文件的main.cpp文件完全独立 我不能100%确定如何指示为测试预先生成组装命令。我已经阅读了模块和操作,但我不完全确定它们是否符合我的需要 关于模块的文档似乎并不意味着这是它们的预期用途 假设这是我要运行的测试: #include "gtest/gtest.h" TEST(DummyTest, Negative) { EXPECT_EQ(1, 0); EXP

我有点被premake atm卡住了。我想添加多个测试文件,运行测试。这些可执行文件彼此完全独立,并且与实际生成最终可执行文件的main.cpp文件完全独立

我不能100%确定如何指示为测试预先生成组装命令。我已经阅读了模块和操作,但我不完全确定它们是否符合我的需要

关于模块的文档似乎并不意味着这是它们的预期用途

假设这是我要运行的测试:

#include "gtest/gtest.h"

TEST(DummyTest, Negative) {

  EXPECT_EQ(1, 0);
  EXPECT_EQ(1, 1);
  EXPECT_GT(93, 0);
}

int main(int argc, char **argv) {
  ::testing::InitGoogleTest(&argc, argv);
  return RUN_ALL_TESTS();
}

如何让premake独立编译和链接此文件以创建独立的可执行文件?

您需要为要生成的每个可执行文件创建一个项目

workspace“我的工作区”
--背景
项目“我的项目”
--背景
“DummyTest”项目
--背景
--根据需要重复
您发现创建一个可以为您设置这些测试项目的函数很有用

function testProject(name)
    project(name)
    kind "ConsoleExe"
    -- etc.
end

testProject("DummyTest1")
testProject("DummyTest2")
如果您使用的是VisualStudio,那么您可能希望在工作区中使用来组织这些测试项目