Не удается найти -lC:\SQLAPI\lib\sqlapi.lib в омнет ++ IDE

Я запускаю свою простую программу на C++ в среде IDE OMNET ++. Мой код выглядит следующим образом

**#include <stdio.h>  // for printf
#include <string.h>
#include <SQLAPI.h> // main SQLAPI++ header
//#include <asaAPI.h>


int main(int argc, char* argv[])
{
    SAConnection con;
    con.setOption( "UseAPI" ) = "DB-Library";
    con.setClient( SA_SQLServer_Client );
    try
    {

                con.Connect(
                "paper2"
                "NADRA",
                "",
                SA_SQLServer_Client);

        printf("We are connected!\n");

        // Disconnect is optional
        // autodisconnect will occur in destructor if needed
        //con.Disconnect();

        printf("We are disconnected!\n");
    }
    catch(SAException &x)
    {
        // SAConnection::Rollback()
        // can also throw an exception
        // (if a network error for example),
        // we will be ready
        try
        {
            // on error rollback changes
            //con.Rollback();
        }
        catch(SAException &)
        {
        }
        // print error message
        printf("%s\n", (const char*)x.ErrText());
    }

    return 0;
}**

Я уже связал все файлы, но я получаю следующую ошибку

c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: cannot find -lC:\SQLAPI\lib\sqlapi.lib
collect2.exe: error: ld returned 1 exit status

Где как файл sqlapi.lib находится в той же папке, но компоновщик не может его найти. Может кто-то говорит мне о проблеме, почему компилятор не может связать его. Я использую MINGW как компилятор C++. Снимок экрана прилагается с вопросом о связанных файлах введите описание изображения здесь

1 ответ

Если вы используете -lзатем следует только имя библиотеки, что-то вроде:

-lsqlapi

Если вы хотите указать путь поиска, то:

-lsqlapi -LC:\SQLAPI\lib\

(Обычно путь находится в режиме Linux, поэтому `C:/SQLAPI/lib).

Тогда, если это не сработает, вы всегда можете принудительно связать библиотеку, просто используя ее как другой объект:

C:/SQLAPI/lib/sqlapi.lib

Обратите внимание, что gcc не связывается со статическими библиотеками Visual Studio, которые sqlapi может (из-за расширения .lib и не .a, но тогда это может быть библиотека экспорта для dll).

Другие вопросы по тегам