【问题标题】:Flutter Desktop: How to handle Native Code editing in an IDE (Intellisense, Autocompletion, etc.)?Flutter Desktop:如何在 IDE(智能感知、自动完成等)中处理本机代码编辑?
【发布时间】:2021-02-08 15:31:18
【问题描述】:

我是 C++ 的绝对初学者。我正在使用 Flutter 桌面插件。一切都很好,只是我无法正确配置本机代码编辑(智能感知、自动完成等),因为它只是充当纯文本。我的颤振项目中有一个linux 命名目录,它似乎是一个 C++ 项目。如何在完全 IDE 支持的情况下使用此代码?我尝试在 CLion 中打开 linux 命名文件夹并得到了这个。

CMake Error at CMakeLists.txt:12 (apply_standard_settings):
  Unknown CMake command "apply_standard_settings".


-- Configuring incomplete, errors occurred!

这里是 CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
set(PROJECT_NAME "desktop_practice")
project(${PROJECT_NAME} LANGUAGES CXX)

# This value is used when generating builds using this plugin, so it must
# not be changed
set(PLUGIN_NAME "desktop_practice_plugin")

add_library(${PLUGIN_NAME} SHARED
  "desktop_practice_plugin.cc"
)
apply_standard_settings(${PLUGIN_NAME})
set_target_properties(${PLUGIN_NAME} PROPERTIES
  CXX_VISIBILITY_PRESET hidden)
target_compile_definitions(${PLUGIN_NAME} PRIVATE FLUTTER_PLUGIN_IMPL)
target_include_directories(${PLUGIN_NAME} INTERFACE
  "${CMAKE_CURRENT_SOURCE_DIR}/include")
target_link_libraries(${PLUGIN_NAME} PRIVATE flutter)
target_link_libraries(${PLUGIN_NAME} PRIVATE PkgConfig::GTK)

# List of absolute paths to libraries that should be bundled with the plugin
set(desktop_practice_bundled_libraries
  ""
  PARENT_SCOPE
)

即使我尝试在 VSCode 中打开项目,但我无法将其配置为正确的 C++ 项目。

【问题讨论】:

    标签: c++ flutter dart clion flutter-desktop


    【解决方案1】:

    您说您正在开发一个应用程序,但您已经显示了插件的 CMakeLists.txt。与移动设备一样,桌面 Flutter 插件不是独立的可构建项目。它们旨在构建在应用程序的上下文中。这就是为什么直接打开它会给你一个缺失的命令。

    编辑插件时,您应该打开/构建作为插件项目的一部分创建的示例应用程序。

    【讨论】:

    • 是的,对不起,这是一个插件,我刚刚打开了示例目录中的linux 目录,它就可以工作了。谢谢。
    • 但这里有一个问题,它只是显示示例代码,而不是插件代码。
    • 如果你打开了linux,插件在flutter/ephemeral/.plugin_symlinks/
    猜你喜欢
    • 1970-01-01
    • 2010-10-01
    • 2020-11-27
    • 2020-05-30
    • 2016-05-14
    • 2011-06-01
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多