Opened 10 years ago
Closed 10 years ago
#6887 closed Bugs (fixed)
Hardcoded path to g++ in gcc.mak and gcc-shared.mak for regex
| Reported by: | Owned by: | John Maddock | |
|---|---|---|---|
| Milestone: | To Be Determined | Component: | regex | 
| Version: | Boost 1.49.0 | Severity: | Problem | 
| Keywords: | gcc makefile g++ path | Cc: | 
Description
The makefiles gcc.mak and gcc-shared.mak in boost/libs/regex/build both contain the lines
CXX=g++ LINKER=g++ -shared
which means that the compiler will pick the g++ defined by the PATH variable.
This is unfortunate if you have multiple gcc version on the machine and intend to link boost regex with modules compiled with another g++ version than the one defined by PATH.
To fix this, I suggest that these lines are changed to
CXX?=g++ LINKER=$(CXX) -shared
so that a CXX value passed to the makefile will prevail, and "g++" is still if no value is passed.
In other words: this suggestion adds the option of passing an alternative CXX value to the makefile - the suggestion will be backward compatible by working as before if no value is passed.
The changes in diff format:
diff gcc.mak.orig gcc.mak 24,25c24,25 < CXX=g++ < LINKER=g++ -shared ---
CXX?=g++ LINKER=$(CXX) -shared
diff gcc-shared.mak.orig gcc-shared.mak 24,25c24,25 < CXX=g++ < LINKER=g++ -shared ---
CXX?=g++ LINKER=$(CXX) -shared
Change History (2)
comment:1 by , 10 years ago
comment:2 by , 10 years ago
| Resolution: | → fixed | 
|---|---|
| Status: | new → closed | 


(Sorry for lousy formatting - read below instead)
The makefiles gcc.mak and gcc-shared.mak in boost/libs/regex/build both contain the lines
which means that the compiler will pick the g++ defined by the PATH variable.
This is unfortunate if you have multiple gcc version on the machine and intend to link boost regex with modules compiled with another g++ version than the one defined by PATH.
To fix this, I suggest that these lines are changed to
so that a CXX value passed to the makefile will prevail, and "g++" is still if no value is passed.
In other words: this suggestion adds the option of passing an alternative CXX value to the makefile - the suggestion will be backward compatible by working as before if no value is passed.
The changes in diff format: