Size: a a a

Rust — русскоговорящее сообществo

2020 September 24

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Vasily Kondratyev
при сборке получаю
warning: exe1/Cargo.toml: file found to be present in multiple build targets: exe1/src/main.rs
Почему корень библиотеки назван main.rs?
источник

Э

Эрик in Rust — русскоговорящее сообществo
У тебя либа на мейн показывает.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Либы должны быть lib.rs
источник

Э

Эрик in Rust — русскоговорящее сообществo
Можно два бинаря в одном проекте, если что.
источник

VK

Vasily Kondratyev in Rust — русскоговорящее сообществo
а там нет файла lib.rs
источник

VK

Vasily Kondratyev in Rust — русскоговорящее сообществo
это не библиотека, а программа, но нужен ещё бинарь
источник

Э

Эрик in Rust — русскоговорящее сообществo
Vasily Kondratyev
это не библиотека, а программа, но нужен ещё бинарь
Так и сделай бинарь.
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Vasily Kondratyev
это не библиотека, а программа, но нужен ещё бинарь
Если это не библиотека, почему ты в Cargo.toml положил еe в секцию lib?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Бинарей в проекте сколько угодно может быть
[[bin]]
name …
path …

[[bin]]
name …
path …
источник

VK

Vasily Kondratyev in Rust — русскоговорящее сообществo
я сделал - exe2
но из него нужно использовать модули объемлющего проекта exe1
источник

Z

Zymlex (Юрий) in Rust — русскоговорящее сообществo
Mikail Bagishov
Это тип.  Алиас указателя на функцию некоторого вида.
И как с ними работать?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Vasily Kondratyev
я сделал - exe2
но из него нужно использовать модули объемлющего проекта exe1
Так выдели модули в либу.
источник

VK

Vasily Kondratyev in Rust — русскоговорящее сообществo
OK, спасибо, понял
источник

Z

Zymlex (Юрий) in Rust — русскоговорящее сообществo
Эрик
Вообще, без строки и столбца не понятно, куда ошибка показывает.
Пока такое "получилось"
источник

Э

Эрик in Rust — русскоговорящее сообществo
Zymlex (Юрий)
Пока такое "получилось"
Убери some вокруг procaddr
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Zymlex (Юрий)
И как с ними работать?
Пока я не очень понял, что конкретно ты хочешь.
Ты хочешь вызвать какую-то функцию, которая принимает такой тип в качестве параметра?
источник

Z

Zymlex (Юрий) in Rust — русскоговорящее сообществo
Mikail Bagishov
Пока я не очень понял, что конкретно ты хочешь.
Ты хочешь вызвать какую-то функцию, которая принимает такой тип в качестве параметра?
Есть функция GetProcAddress, которая возвращает FARPROC, мне его надо привести к LPTHREAD_START_ROUTINE, это всё указатели на функцию
источник

Э

Эрик in Rust — русскоговорящее сообществo
Да очевидная же ошибка. Ты куда-то пихаешь эту функцию, а в функцию пихают аргументы отличные от тех, с которыми ты создал тип функции.
источник

Z

Zymlex (Юрий) in Rust — русскоговорящее сообществo
Zymlex (Юрий)
Без приведения, такая ошибка:
expected enum std::option::Option<unsafe extern "system" fn(*mut std::ffi::c_void) -> u32> found raw pointer *mut winapi::shared::minwindef::__some_function
вот их конфликт
источник

Э

Эрик in Rust — русскоговорящее сообществo
fn bar(_: i32) {}
fn foo(f: fn(u32)) { f(0) }

fn main() {
fn foo(bar)
}
источник