Сборка пакета Python с привязками C в Windows (VC90) приводит к фатальной ошибке LNK1181

1

Я пытаюсь создать пакет Python (pyspotify) с привязками к библиотеке C (libspotify).

Я использую Python 2.7.5 и установил VS2008 Express для некоторых необходимых инструментов командной строки.

Когда я вызываю python setup.py build из командной строки (с правами администратора), я получаю следующий вывод:

running build
running build_py
running build_ext
building 'spotify._spotify' extension

И затем ~ 18 из них, по одному для каждого .c файла в пакете:

c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox
/MD /W3 /GS- /DNDEBUG -Isrc -Ic:\Python\Python27\include -Ic:\Python\Python27\PC
/Tcsrc\module.c /Fobuild\temp.win32-2.7\Release\src\module.obj
module.c

И затем showstopper:

c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\link.exe /DLL /nologo
/INCREMENTAL:NO /LIBPATH:c:\Python\Python27\libs /LIBPATH:c:\Python\Python27\PCb
uild spotify.lib /EXPORT:init_spotify build\temp.win32-2.7\Release\src\module.ob
j build\temp.win32-2.7\Release\src\session.obj build\temp.win32-2.7\Release\src\
link.obj build\temp.win32-2.7\Release\src\track.obj build\temp.win32-2.7\Release
\src\album.obj build\temp.win32-2.7\Release\src\albumbrowser.obj build\temp.win3
2-2.7\Release\src\artist.obj build\temp.win32-2.7\Release\src\artistbrowser.obj
build\temp.win32-2.7\Release\src\search.obj build\temp.win32-2.7\Release\src\pla
ylist.obj build\temp.win32-2.7\Release\src\playlistcontainer.obj build\temp.win3
2-2.7\Release\src\playlistfolder.obj build\temp.win32-2.7\Release\src\image.obj
build\temp.win32-2.7\Release\src\user.obj build\temp.win32-2.7\Release\src\pyspo
tify.obj build\temp.win32-2.7\Release\src\toplistbrowser.obj /OUT:build\lib.win3
2-2.7\spotify\_spotify.pyd /IMPLIB:build\temp.win32-2.7\Release\src\_spotify.lib
 /MANIFESTFILE:build\temp.win32-2.7\Release\src\_spotify.pyd.manifest
LINK : fatal error LNK1181: cannot open input file 'spotify.lib'
error: command '"c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\link.
exe"' failed with exit status 1181

И я попытался выполнить поиск этой ошибки LNK1181, но все ответы, похоже, касаются запоминания кавычек вокруг строки или некоторых настроек в VS, которые я в этом случае не контролирую.

  • 0
    «LINK: фатальная ошибка LNK1181: не удается открыть входной файл« spotify.lib »»
  • 1
    На вашем пути в LIB есть spotify.lib ?
Показать ещё 1 комментарий
Теги:
linker
distutils
libspotify

1 ответ

3
Лучший ответ

Вам нужно загрузить соответствующую версию libspotify из здесь разархивировать ее и поместить в ту же директорию, которую вы пытаетесь построить, (простое место), или сообщите VS, где его найти.

  • 1
    Это похоже на решение. У меня уже был там файл libspotify.lib, но мне пришлось переименовать его в spotify.lib, прежде чем он заработал. Спасибо :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню