Mingw и Eclipse не могут найти библиотеку

У меня проблемы, похожие на описанные здесь. Я создал новый проект, добавил путь к библиотеке в Eclipse и добавил имя используемой библиотеки. Но компоновщик MingW не может найти библиотеку. Я пробовал использовать «/» вместо «\» (это было решение проблемы, которая мне нравилась), а также несколько других вещей, но безуспешно. Не удалось найти ничего, что работало в документации mingw.

Моя команда выглядит следующим образом:

g++ -LD:/ocv/build/x86/mingw/lib -o OCVTest.exe "src\\OCVTest.o" -ltest.a 
c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: cannot find -ltest.a
collect2.exe: error: ld returned 1 exit status

Файл называется test.a

В командной строке я попытался использовать

g++ -L"D:/ocv/build/x86/mingw/lib" -o OCVTest.exe "src\\OCVTest.o" -ltest.a 

Но и это не помогло.

Я установил MingW и Make для Windows. Я добавил оба из них в свою переменную PATH.


person Gustavo Litovsky    schedule 26.01.2013    source источник
comment
назовите его libtest.a и используйте параметр -ltest для g++   -  person zaufi    schedule 26.01.2013
comment
@zaufi: ты прав. Это устранило проблему. Я предполагаю, что у меня было несколько проблем. Пожалуйста, опубликуйте это как ответ, чтобы я мог пометить его как таковой.   -  person Gustavo Litovsky    schedule 26.01.2013


Ответы (1)


назовите его libtest.a и используйте опцию -ltest для g++. статические библиотеки в * nix (включая mingw), которые должны называться как libxxx.a, опция -l указывает компилятору искать библиотеки по указанным путям (текущие и заданные через опции -L). но для ссылки со статической библиотекой можно указать полное имя (без каких-либо опций)... просто передайте libtest.a

person zaufi    schedule 26.01.2013