Jangan lupa bahwa variabel $ PATH Anda di lingkungan virtual! = Variabel $ PATH global Anda. Anda dapat mengonfirmasi ini dengan 'echo $ PATH' di virtualenv Anda dan juga di shell baru. Jadi, kecuali Anda ingin menginstal PostgreSQL sebagai contoh unik di dalam lingkungan virtual Anda (bukan hal yang layak dilakukan, imo), Anda harus memodifikasi variabel $ PATH di dalam virtualenv untuk memasukkan jalur ke instalasi global Anda (yang akan memecahkan kesalahan pg_config Anda yang hilang).
Berikut langkah-langkahnya:
1.) Di shell baru, ketik 'which pg_config'. Ini akan mengembalikan jalan. Salin. Dalam kasus saya, jalurnya terlihat seperti ini: /Applications/Postgres.app/Contents/Versions/9.3/bin
2.) Kembali ke shell virtualenv Anda, ketik 'export PATH = / your-path-to-pg_config: $ PATH'
3.) Kemudian, masih dalam virtualenv, 'pip install psycopg2'
Jika semua berjalan sesuai rencana, ini akan menginstal psycopg2 dalam lingkungan virtual, tetapi penginstalan akan merujuk ke penginstalan Global PostgreSQL Anda. Dalam kasus saya, instalasi Global ini diinstal melalui Postgres.App, karenanya jalurnya. Saya lebih suka metode ini bekerja dengan psycopg2 karena itu berarti saya dapat menggunakan database dengan mudah dalam virtualenv apa pun daripada hanya dalam lingkungan virtual yang ditentukan.
Semoga ini bisa membantu siapa saja yang datang ke sini. Untuk Google Juice, berikut ini bahasa kesalahan eksplisit (dan tidak jelas) yang dikembalikan ketika Anda mengalami masalah ini:
Perintah python setup.py egg_info gagal dengan kode kesalahan 1