我希望我的程序在运行时(日志文件等)创建文件,因此它需要知道用户的主目录,否则他/她将不得不以root身份运行程序时间(在/ var目录中创建文件)。Autotools主目录
是否有某种方法在Makefile.am中添加-D定义,并自动填充主目录?例如,我已经有AM_CPPFLAGS=-DDATADIR='"$(datadir)"'
来定义数据目录。
我希望我的程序在运行时(日志文件等)创建文件,因此它需要知道用户的主目录,否则他/她将不得不以root身份运行程序时间(在/ var目录中创建文件)。Autotools主目录
是否有某种方法在Makefile.am中添加-D定义,并自动填充主目录?例如,我已经有AM_CPPFLAGS=-DDATADIR='"$(datadir)"'
来定义数据目录。
Autotools中没有任何代表用户主目录的宏或内置路径,您可以在运行时使用(例如)environment variables来获取它。
顺便说一句。对于日志记录我推荐syslog()。
为什么不使用HOME环境变量代替您的程序?