Eu me deparei com um problema semelhante, e a única solução que encontrei é ir para o diretório de criação do pip (/ tmp / pip- {random hash}, geralmente pode ser encontrado no final do erro , também pode ser / usr / tmp /, ou pysqlite, depende da sua configuração) e altere o pysqlite setup.cfg. Quando baixado, é assim:
[build_ext]
#define=
#include_dirs=/usr/local/include
#library_dirs=/usr/local/lib
libraries=sqlite3
define=SQLITE_OMIT_LOAD_EXTENSION
Quando descomenteio o include_dirs e o library_dirs, o pysqlite será instalado corretamente. A desvantagem disso, é que eu ainda não encontrei uma maneira de automatizar facilmente essa etapa, então ela precisa ser feita com cada configuração virtualenv. É feio, desagradável e uma dor no rabo, mas deixa pysqlite ser instalado.
Espero que isso ajude.
PS Se você estiver tentando executar a instalação do pip em um virtualenv, os arquivos baixados provavelmente serão encontrados em {virtualenv} / build / pysqlite.