我正在尝试编译bottledwater
loopback
Avro-c就在这里
node .
生成文件
~/bottledwater-pg$ make
make -C ext all
make[1]: Entering directory '/home/jholmes/bottledwater-pg/ext'
Package avro-c was not found in the pkg-config search path.
Perhaps you should add the directory containing `avro-c.pc'
to the PKG_CONFIG_PATH environment variable
No package 'avro-c' found
shell如何扩展PG_CONFIG?
我该怎么做才能启用主代码来检测avro-c文件夹?
我在Ubunutu 16.04编译了avro-c。
我的avrolib路径
/ /home/jholmes/avro-c-1.8.2
MODULE_big = bottledwater
EXTENSION = bottledwater
AVRO_CFLAGS = $(shell pkg-config --cflags avro-c)
AVRO_LDFLAGS = $(shell pkg-config --libs avro-c)
PG_CPPFLAGS += $(AVRO_CFLAGS) -std=c99
SHLIB_LINK += $(AVRO_LDFLAGS)
OBJS = io_util.o error_policy.o logdecoder.o oid2avro.o schema_cache.o protocol.o protocol_server.o snapshot.o
DATA = bottledwater--0.1.sql
PG_CONFIG = pg_config
PGXS := $(shell $(PG_CONFIG) --pgxs)
include $(PGXS)
里面没有avro-c.pc。 Bin内容
home/jholmes/avro-c-1.8.2/build/avrolib
答案 0 :(得分:1)
由于您已将库安装在非标准位置,因此需要告知pkg-config有关该非标准位置的信息。最简单的方法是设置if (!file.exists()) {
d(TAG, "doesn't exist")
return
}
环境变量。您可以在运行PKG_CONFIG_PATH
时执行此操作:
PKG_CONFIG_PATH =" /home/jholmes/avro-c-1.8.2/lib/pkgconfig"使
这假定make
是/home/jholmes/avro-c-1.8.2/lib/pkgconfig
文件所在的位置。
无论如何,总的来说,我建议改为在.pc
安装库。这应该导致一切正常工作,无需人工干预。 /usr/local
是专门用于此目的的地点。