Не удалось загрузить магическую базу данныхC++

Программы на C++. Форум разработчиков
Ответить
Гость
 Не удалось загрузить магическую базу данных

Сообщение Гость »

Я совершенно новичок в CPP и его библиотеках, моя цель - найти тип файла MIME, чтобы я использовал Magic Library для него в CPP. И я хочу сделать исполняемый файл, который будет портативным, т.е. он должен работать на любой машине, независимо от того, присутствует или нет либмагического присутствия на этой машине. Исполняемый файл работает должным образом на моей машине Ubuntu, но когда я передал его в другую виртуальную машину (Ubuntu) (где магия не установлена), и я пытался запустить исполняемый файл, мой магический базу данных не загружается, и я получаю следующие ошибки < /p>
ПРЕДУПРЕЖДЕНИЕ - не удалось загрузить магическую базу данных. Не удается определить тип MIME для файла: < /p>
Вот функция, чтобы найти тип MIME файла < /p>

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

std::string mime_type(const std::string& filename) {
magic_t cookie = magic_open(MAGIC_MIME_TYPE);

if (cookie == nullptr) {
logger.log(WARNING, "Failed to open libmagic. Cannot determine MIME type for file: '" + filename + "'");
return "unknown";
}

if (magic_load(cookie, NULL) != 0) {
logger.log(WARNING, "Failed to load magic database. Cannot determine MIME type for file: '" + filename + "'");
magic_close(cookie);
return "unknown";
}

std::string mimetype = magic_file(cookie, filename.c_str());
// Close libmagic handle before returning
magic_close(cookie);

if (mimetype.empty()) {
// logger.log(WARNING, "Failed to determine MIME type for file: '" + filename + "'");
return "unknown";
}
// std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/78424226/failed-to-load-magic-database[/url]
Ответить

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

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

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

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

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