Задать вопрос

Как подключить статическую библиотеку (.a) в C++?

Использую GCC, есть два файла: lib.a и lib.h. Код пишу в VS Code.
Пробовал добавить файл .a (включая путь к нему) в конец аргументов запуска в tasks.json, но вылетает ошибка, что lib.a не найден.
  • Вопрос задан
  • 274 просмотра
Подписаться 1 Простой 6 комментариев
Решения вопроса 1
AshBlade
@AshBlade
Просто хочу быть счастливым
Для g++ надо добавить флаги:
- -LlibraryPath - путь до директории с библиотеками, где libraryPath - это путь
- -llibraryName - название библиотеки, но без префикса lib

Примерно так:
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe build active file",
            "command": "d:\\Soft\\msys64\\ucrt64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-LD:\\Projects\\console\\Bank System App",
                "-lpdcurces"
            ],
            "options": {
                "cwd": "d:\\Soft\\msys64\\ucrt64\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

P.S. на Windows с gcc не собирал, могу ошибаться
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы