Сгенерированные файлы не добавляются для построения в проекте C#, сгенерированном CMAKEC#

Место общения программистов C#
Ответить
Anonymous
 Сгенерированные файлы не добавляются для построения в проекте C#, сгенерированном CMAKE

Сообщение Anonymous »

Я пытаюсь добавить сгенерированные файлы в проект C#, созданный Cmake. Я считаю, что, хотя Cmake может генерировать проект C# из существующих файлов, он каким -то образом относится к сгенерированным файлам по -разному. Они найдены в сгенерированном файле CSPROJ, но не отображаются в Visual Studio и не построены. Это раскрывает себя, например, При генерации файлов SWIG для модуля C#, которые приводят к файлу CXX и некоторым файлам CS. (И это моя конечная мотивация - добавьте сгенерированные файлы SWIG в сборку, не называя их конкретно - прочитав их имена из файла) < /p>
В качестве минимального примера рассмотрите каталог только с следующими файлами: < /p>
nongenerated.cs написал следующие файлы: < /p>
функциональный

Код: Выделить всё

using System;

namespace CSMinExample
{
public class NonGenerated
{
}
}
< /code>
cmakelists.txt
cmake_minimum_required(VERSION 3.16)
project(CSMinExample)

# Enable C# language support
enable_language(CSharp)

# Define the C# class content
set(CS_CLASS_CONTENT "using System;

namespace CSMinExample
{
public class MinimalClass
{
}
}")

# Generate the C# class file
file(GENERATE
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/MinimalClass.cs
CONTENT "${CS_CLASS_CONTENT}")

# Create a C# library that includes the generated file
add_library(CSMinLibrary SHARED
${CMAKE_CURRENT_BINARY_DIR}/MinimalClass.cs
NonGenerated.cs
)

# Set C# library properties
set_target_properties(CSMinLibrary PROPERTIES
VS_DOTNET_TARGET_FRAMEWORK_VERSION "v4.8"
VS_DOTNET_REFERENCES "System"
)
Результирующий проект в исследовании решения выглядит так:

и файл проекта имеет эти элементы:
и файл проекта Описание здесь "src =" https://i.sstatic.net/yrkgln10.png "/>
afaict единственное отличие - это местоположение файла, но должно быть что -то еще. Я был бы признателен за любой указатель на то, что я делаю неправильно, или как отладить это. проект. Но как контролировать это от cmake?

Подробнее здесь: https://stackoverflow.com/questions/797 ... d-by-cmake
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»