Я пытаюсь установить пользовательскую сборку на heroku, поэтому я использую различные способы для установки третьей части с помощью buildpacks. В моем файле .buildpacks у меня есть:
https://github.com/ddollar/heroku-buildpack-apt
https://github.com/heroku/heroku-buildpack-python.git
и в моем Aptfile
у меня есть следующее: libgeoip-dev
, что является предпосылкой для geoip, который устанавливается с помощью requirements.txt
(GeoIP==1.3.2
)
Вот мои переменные среды:
remote: C_INCLUDE_PATH is /app/.heroku/vendor/include:/app/.heroku/vendor/include:/app/.heroku/python/include
remote: CPATH is /tmp/build_xxxxx/.apt/usr/include:
remote: LD_LIBRARY_PATH is /app/.heroku/vendor/lib:/app/.heroku/vendor/lib:/app/.heroku/python/lib
Сообщение об ошибке, которое я получаю:
remote: building 'GeoIP' extension
remote: creating build
remote: creating build/temp.linux-x86_64-2.7
remote: gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/app/.heroku/python/include/python2.7 -c py_GeoIP.c -o build/temp.linux-x86_64-2.7/py_GeoIP.o -fno-strict-aliasing
remote: creating build/lib.linux-x86_64-2.7
remote: gcc -pthread -shared build/temp.linux-x86_64-2.7/py_GeoIP.o -lGeoIP -o build/lib.linux-x86_64-2.7/GeoIP.so
remote: /usr/bin/ld: cannot find -lGeoIP
remote: collect2: error: ld returned 1 exit status
remote: error: command 'gcc' failed with exit status 1
Каков самый умный способ исправить это? То есть Наверное, я не могу изменить место установки менеджера пакетов. Есть ли способ обойти это?