Difference between revisions of "JSBSim"

From PaparazziUAV
Jump to: navigation, search
(From Source: adjust date to currently used version)
(From Source)
 
Line 19: Line 19:
 
   make
 
   make
 
   sudo make install
 
   sudo make install
 +
 +
When building a [[NPS]] simulator target, the build system will first try to find JSBSim via pkg-config and fall back to ''/opt/jsbsim''.
  
 
If you want to install to a different location, change the ''prefix'' to your liking.
 
If you want to install to a different location, change the ''prefix'' to your liking.
Line 25: Line 27:
 
With the default installation to <tt>/usr/local/</tt>, this would look like
 
With the default installation to <tt>/usr/local/</tt>, this would look like
 
   <makefile location="after">
 
   <makefile location="after">
     jsbsim.CFLAGS += -I/usr/local/include/JSBSim
+
     nps.CFLAGS += -I/usr/local/include/JSBSim
     jsbsim.LDFLAGS += -L/usr/local/lib
+
     nps.LDFLAGS += -L/usr/local/lib
 
   </makefile>
 
   </makefile>
  

Latest revision as of 10:20, 11 March 2016

JSBSim is an open source flight dynamics model (FDM) used in NPS.

Installation

Debian Package

On Debian/Ubuntu you can install the paparazzi-jsbsim package.

sudo apt-get install paparazzi-jsbsim

If you don't have that in your sources, see Installation/Linux#Adding_the_APT_repository

From Source

Compile JSBSIM from source (with specified date to make sure it works and API hasn't changed)

 cvs -z3 -d:pserver:anonymous@jsbsim.cvs.sourceforge.net:/cvsroot/jsbsim co -D "23 Feb 2015" -P JSBSim 
 cd JSBSim
 ./autogen.sh
 ./configure --enable-libraries --enable-shared --prefix=/opt/jsbsim
 make
 sudo make install

When building a NPS simulator target, the build system will first try to find JSBSim via pkg-config and fall back to /opt/jsbsim.

If you want to install to a different location, change the prefix to your liking. And you need to add a <makefile> section to your airframe file and add the correct flags to point to the include files and libraries, depending on where it is installed.

With the default installation to /usr/local/, this would look like

 <makefile location="after">
   nps.CFLAGS += -I/usr/local/include/JSBSim
   nps.LDFLAGS += -L/usr/local/lib
 </makefile>

On OSX

  • Install the JSBSim libraries onto your system. This should already be installed with paparazzi-tools, but if it isn't:
 $ sudo port install jsbsim

It uses code from the cvs repo, so it should be the most up-to-date source.


Troubleshooting

  • If you get an error like "undefined reference to `pcre_compile'", edit file conf/Makefile.jsbsim, look for the line that begins with LDFLAGS and add -lpcre, e.g.:
LDFLAGS += $($(TARGET).LDFLAGS) -lpcre