2012-04-10 3 views
1

Я пытаюсь скомпилировать библиотеку с make-файлом UNIX, но с использованием Visual Studio 2010. Я модифицировал make-файл так, чтобы он работал, но у меня проблемы с компоновщиком. Мои параметры компилятора просты:Что такое MSVC -L эквивалент?

CSWITCHES = -O2 -I$(INC_DIR) -L$(LIB_DIR) 

(с INC_DIR и LIB_DIR указывая на ВК включают и Лив каталоги).

Я не включают проблемы поэтому я предполагаю, -I это нормально, но опция -L игнорируется компилятором:

ignoring unknown option -Lblahblah 

Я проверил MSDN сайту http://msdn.microsoft.com/en-us/library/y0zzbyt4(v=vs.80).aspx опции компоновщика, я пытался использовать параметр LIBPATH, но я тоже не работаю.

так вот мой вопрос: что такое опция командной строки msvc для указания пути каталога библиотеки к компоновщику?

+0

Вы уже запускали vcvars32.bat? см. http://msdn.microsoft.com/en-us/library/f2ccy3wt%28v=vs.100%29.aspx – CharlesB

+0

Это ничего не изменило. Я не думаю, что у меня проблема с путём. Это опция -L, которая полностью игнорируется компилятором. – undu

+0

OK Я делаю это яснее: запустите vcavars32.bat, а пути include/library установлены правильно, поэтому вам не нужно их устанавливать. Параметр '-L' не имеет эквивалента для msvc. – CharlesB

ответ

1

MSVC не имеет эквивалента опции -L, пути предоставляются непосредственно на LINK. Что касается пути поиска стандартной библиотеки, он устанавливается правильно на vcvar32.bat (см. this MSDN article)

0

Duplicated.

Вы должны предоставить/LIBPATH в качестве опции компоновщика после «/ link». Убедитесь, что на пути к системе есть cl.exe. Это мой файл bat для компиляции:

call "D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 

cl %CompilerFlags% ..\src\main.cpp /I %IncludePaths% /link %LinkerFlags% /LIBPATH:%LibraryPaths% 
Смежные вопросы