makefile和git路径在不同电脑上的问题。

问题描述 投票:0回答:2

在我的makefile中,我有一个路径变量

SDK_PATH = /home/myname/Documents/SimplicityStudio_v4

但这个文件在我的另一台电脑上,每次我在git上推送时,我都要适应另一台电脑上的另一条路径,我试图在.gitignore中添加makefile,但问题是每次都会被删除。

我试着在我的.bachrc中添加一个变量,但没有成功。

请你帮我找一个解决方案

问候

c++ ubuntu makefile
2个回答
0
投票

你可以在makefile的主机名和变量值之间做一个映射,比如说

hostname := $(shell hostname)

# Path for hostname one.
SDK_PATH.one := /home/someone/Documents/SimplicityStudio_v4

# Use a hostname-specific value, if any, otherwise a default.
SDK_PATH := $(or ${SDK_PATH.${hostname}},/home/myname/Documents/SimplicityStudio_v4)

$(info SDK_PATH=${SDK_PATH})

输出。

$ make
SDK_PATH=/home/myname/Documents/SimplicityStudio_v4

# Now override hostname value.
$ make hostname=one
SDK_PATH=/home/someone/Documents/SimplicityStudio_v4

0
投票

还有一个选项可以在 makefile 中设置变量。

VAR ?= value

在这种情况下 VAR 将会被设置,如果它还没有被设置。在任何情况下,你都可以在运行之前设置环境变量。make 功用。

VAR=value make all
© www.soinside.com 2019 - 2024. All rights reserved.