The compilation devel/simgear (version 2.6.0_1) fails with multiple errors. The reason for this is, according to my analysis, missing include path. Many includes are written as following:
, whereas simgear directory is not specified as an include path, i.e. no corresponding -I flag is issued to the compiler. simgear directory is located in source top directory.
Fix: Solved by making CMake pass simgear directory to the include paths. Modified SimGearComponent.cmake file to eliminate code duplication, because it is used by several modules that failed to compile.
--- SimGearComponent.cmake 2012-05-13 22:21:59.000000000 +0000
+++ SimGearComponent.cmake.new 2012-05-13 22:23:37.000000000 +0000
@@ -1,4 +1,6 @@
macro(simgear_component_common name includePath sourcesList sources headers)
Patch attached with submission follows:
How-To-Repeat: # cd /usr/ports/devel/simgear
Over to maintainer (via the GNATS Auto Assign Tool)
Thanks for your report.
> Synopsis: devel/simgear 2.6.0_1 build fails due to missing
> include path
> # cd /usr/ports/devel/simgear
> # make
Unfortunately, I could not reproduce the problem ; neither locally, nor
on my Tinderbox, and have not found build errors for Simgear on Pointyhat.
Could you check that your /etc/make.conf does not override some
variables and triggers those errors ?
Ganael LAPLANCHE <firstname.lastname@example.org>
http://www.martymac.org | http://contribs.martymac.org
FreeBSD: martymac <martymac@FreeBSD.org>, http://www.FreeBSD.org
Hi, I have checked my /etc/make.conf. Here it is:
CFLAGS= -O2 -pipe
#avoid compiling profiled libraries
# added by use.perl 2012-03-07 21:55:03
The only suspect was CFLAGS. However I have tried to recompile the simgear
port with and without the CFLAGS definition in /etc/make.conf. Both time
the build succeeded.
The failure that I observed happened when I tried to update installed
simgear-2.4.0 to simgear-2.6.0_1.
Considering these facts I can state that the build failure occurs when
trying to update an installed simgear port. In my case when updating an
installed 2.4.0 version to version 2.6.0 the lookup for
<simgear/io/raw_socket.hxx> led to inclusion of raw_socket.hxx which was
located in /usr/local/include/simgear/io. However, the one from
/usr/ports/devel/simgear/work/simgear-2.6.0/simgear/io should have been
To summarize this:
Build of simgear-2.6.0 when no simgear is installed succeeds.
Rebuild of simgear-2.6.0 when simgear-2.6.0 is installed succeeds.
Build of simgear-2.6.0 when simgear older than 2.6.0 is installed fails and
this is the only case that requires my patch.
martymac 2012-05-15 12:43:59 UTC
FreeBSD ports repository
Fix inclusion order of headers to allow upgrade from Simgear 2.4.0
Submitted by: Oleksii <email@example.com>
Revision Changes Path
1.48 +1 -1 ports/devel/simgear/Makefile
1.1 +9 -0 ports/devel/simgear/files/patch-CMakeModules-SimGearComponent.cmake (new)
firstname.lastname@example.org mailing list
To unsubscribe, send any mail to "email@example.com"