草庐IT

cmake-modules

全部标签

Verilog Tutorial(1)如何编写一个基本的 Verilog Module(模块)

写在前面在自己准备写verilog教程之前,参考了许多资料----FPGATutorial网站的这套verilog教程即是其一。这套教程写得不错,只是没有中文,在下只好斗胆翻译过来(加了自己的理解)分享给大家。这是网站原文:https://fpgatutorial.com/verilog/这是系列导航:Verilog教程系列文章导航1、概述这篇文章主要介绍了Verilog在FPGA设计中的概念和使用方法。首先讨论使用模块(module)关键字构造Verilog设计的方式,以及这与所描述的硬件的关系。这包括对参数、端口(port)和例化(instantiaton)的讨论及一个完整示例。虽然不需要

c++ - 可以使用位置信息编写改进的 cmake 日志记录宏吗?

在调试cmake代码的时候,我发现自己写了类似下面的东西:message("[some_filename.cmake]:somemessageaboutwhatisgoingonhere.")在C++中,我使用宏来自动记录文件名和行号-这在cmake中可行吗?理想情况下,我想编写一个包含以下内容的宏:log_info("somemessageaboutwhatisgoingonhere.")它将打印到控制台:|info|some_filename.cmake[72]somemessageaboutwhatisgoingonhere. 最佳答案

c++ - 为什么 cmake_link_libraries 包含静态库?

我希望我的可执行文件再次链接到共享库(libmy_so.so),而共享库又是使用静态库(libmy_static_lib.a)构建的。当我做的时候target_link_libraries(my_exemy_so)我在编译时看到cmake在构建行上添加了libmy_static_lib.a。这不是我想要的,我不明白为什么需要这样做。有没有办法解决?LINK_PRIVATE似乎没有任何区别。我使用CMake2.8.9。 最佳答案 来自CMakedocumentationfortarget_link_libraries:target_l

c++ - cmake编译组

我有一个项目,其中编译生成许多可执行文件。我使用cmake生成Makefile。然后当我说make时,它们都被编译了。我知道我可以使用maketarget1来编译所需的目标。但我想将我所有的目标分成几组,并能够使用,比如makegroup_A来编译目标的一个子集。如何实现?该项目用C++编写,在Linux和OSX下开发。 最佳答案 查看CMake文档中的add_custom_target和add_dependencies。您可以将一个组添加为自定义目标,并将您想要构建的目标作为该组的依赖项。http://www.cmake.org/

c++ - (Swig to python)导入错误:dynamic module does not define init function

我正在尝试通过swig将我的C++代码移植到Python。当我完成py、pyd、cxx和lib文件的构建时,在Python(命令行)下,我键入“模块Dnld”,它显示->导入错误:动态模块未定义初始化函数。以下是我的代码,进一步:添加我的构建步骤以避免误解,谢谢MarkTolonen文件->新建->项目->Windows控制台应用程序->选择DLL和空项目(无unicode)将我的SerialComm文件夹添加到项目中(包括DownloaderEngine.hSerial.hPortEnumerator.h等)。配置属性->c/c++->附加包含目录->C:\Python27\incl

c++ - 如何让 CMake 检查我的 header 是否自给自足?

设置我有一个使用CMake构建和运行良好的项目。我的项目设置是这样的:├──CMakeLists.txt|├──include/│└──standalone/│└──x.hpp|├──src/└──standalone/└──main.cpp我的header的内容是这样的://------x.hpp--------#pragmaonce#includeclassX{public:voidhello(){std::cout}};//-------main.cpp-------#includeintmain(){Xx;x.hello();}我使用以下CMakeLists.txtcmake_

c++ - 如何使用 cmake 一次运行所有 gtest 文件?

我有几个包含不同类测试的.cpp文件,看起来像这样:#includenamespace{//lotsoftests}intmain(intargc,char**argv){::testing::InitGoogleTest(&argc,argv);returnRUN_ALL_TESTS();}和一个如下所示的CMakeLists.txt文件:add_subdirectory(/usr/src/gtestgtest)include_directories(${GTEST_INCLUDE_DIR})add_executable(TestATestA.cpp)target_link_libr

c++ - cmake:读取并编译动态生成的 cpp 文件列表

我有一个自定义工具,可以处理给定的IDL文件列表并生成许多.cpp和.h文件作为输出。我想将这些文件添加到我的CMakeLists中要编译的事物列表中,并模拟这些文件对IDL的依赖性。为简单起见,我将声明对任何IDL文件的任何更改都应触发所有cpp/h的重新生成。我有一个自定义命令负责运行生成器工具并将所有IDL文件列为依赖项。我的问题是在构建时将后续的cpp/h文件列表放入cmake。无法从IDL文件的名称推断出将生成哪些cpp文件。但是,我的生成器工具会将生成的文件列表输出到文本文件。所以我的问题是:我如何指示cmake“从这个文本文件中读取并将内容添加为要编译的额外源文件和头文件

c++ - 使用 QT5_ADD_RESOURCES 和使用 CMake 进行多线程编译时损坏的资源 .cpp 文件

Qt5.0版本带来了一组更简单的命令来使用CMake构建Qt项目。参见http://qt-project.org/doc/qt-5/cmake-manual.html.需要使用命令QT5_ADD_RESOURCES包含项目的资源。如果我的资源文件名为Icon32.qrc,QT5_ADD_RESOURCES(RESOURCESIcon32.qrc)命令会自动将其转换为qrc_Icon32.cpp文件并定义一个${RESOURCES}变量,然后我可以将其包含到适当的目标中。这样做很完美,除了我在CDash中大约每20个构建出现一次编译错误。错误通常采用以下形式:/.../CMake/bui

c++ - CMake 错误 : CMake was unable to find a build program corresponding to "MinGW Makefiles"

我正在尝试使用cmake为C++构建Box2D库。当我运行cmakegui时出现错误:CMakeError:CMakewasunabletofindabuildprogramcorrespondingto"MinGWMakefiles".CMAKE_MAKE_PROGRAMisnotset.Youprobablyneedtoselectadifferentbuildtool.CMakeError:CMakewasunabletofindabuildprogramcorrespondingto"MinGWMakefiles".CMAKE_MAKE_PROGRAMisnotset.Youp