"Fossies" - the Fresh Open Source Software Archive

Member "brlcad-7.32.4/doc/README.Linux" (29 Jul 2021, 5027 Bytes) of package /linux/misc/brlcad-7.32.4.tar.bz2:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the last Fossies "Diffs" side-by-side code changes report for "README.Linux": 7.32.0_vs_7.32.2.

    1 BRL-CAD on Linux README
    2 =======================
    3 
    4 Below are installation and platform notes of relevance to particular
    5 Linux distributions.
    6 
    7 Table of Contents
    8 -----------------
    9 Parallel Builds
   10 64-bit Compile
   11 32-bit Compile
   12 Arch Linux
   13 Ubuntu/Debian
   14 PPC64 Linux
   15 
   16 Parallel Builds
   17 ---------------
   18 BRL-CAD compilation can take advantage of multiple CPUs.  With
   19 Make based builds, this is done using the "-j" flag - e.g. a
   20 six core machine will build faster using "make -j6" to utilize
   21 all cores.
   22 
   23 
   24 64-bit Compile (on a platform that defaults to 32-bit)
   25 --------------
   26 
   27 cmake ../brlcad -DBRLCAD_WORD_SIZE=32BIT
   28 
   29 32-bit Compile (on a platform that defaults to 64-bit)
   30 --------------
   31 
   32 cmake ../brlcad -DBRLCAD_WORD_SIZE=64BIT
   33 
   34 * Note that in both of the above situations you need both a compiler that
   35 works in the alternate mode and system libraries of the correct type.
   36 
   37 
   38 Arch Linux
   39 ----------
   40 
   41 An example PKGBUILD and needed scripts are provided in misc/archlinux.
   42 Review and edit the PKGBUILD to suit your preferred configuration and
   43 build situation (e.g. building from a tarball vs building from SVN).
   44 Run `makepkg` in that directory to build the package.
   45 
   46 
   47 Ubuntu/Debian
   48 -------------
   49 
   50 Users of Ubuntu, Debian, and other similar packaging distributions of
   51 Linux will need to ensure that a few essentials are in place before
   52 you will be able to compile BRL-CAD.
   53 
   54 Following the build instructions in the INSTALL file.  You will need:
   55 
   56 gcc (6+, e.g. 6.0.3)
   57 g++ (6+, e.g. 6.0.3)
   58 make (e.g. gnu make 3.8.0)
   59 cmake (3.0.2 or newer)
   60 
   61 All three of those have implicit dependencies on other packages.
   62 
   63 You will also want to make sure that you have the X11 development
   64 headers installed:
   65 
   66   apt-get install xserver-xorg-dev libx11-dev libxi-dev libxext-dev
   67 
   68 Other development packages needed to build on Debian-based platforms:
   69 
   70   for building the Tcl/Tk libraries:  libfontconfig-dev
   71 
   72   for OpenGL: libglu1-mesa-dev
   73 
   74 Note there is a supported Debian package generation script in file
   75 'sh/make_deb.sh' which can function only on a Debian or Ubuntu system.
   76 It can be used like so:
   77 
   78   $ cd <BRL-CAD source directory>
   79 
   80   # get help for the script:
   81   $ ./sh/make_deb.sh
   82 
   83   # create a binary package:
   84   $ ./sh/make_deb.sh -b
   85 
   86 You can customize the script's cmake build options by modifying the
   87 file 'misc/debian/rules'.  Note that the BRL-CAD source directory
   88 should be deleted and recreated for each new attempt at package
   89 generation.
   90 
   91 
   92 Redhat/CentOS/Fedora
   93 -------------
   94 
   95 If you don't already have the necessary development tools:
   96 
   97   yum install gcc gcc-c++ cmake
   98 
   99 Development packages for building on Redhat/Fedora platforms:
  100 
  101   yum install libX11-devel
  102   yum install libXext-devel    # optional
  103   yum install libXi-devel      # optional
  104   yum install freetype-devel   # optional
  105   yum install fontconfig-devel # optional
  106   yum install mesa-libGL-devel # optional
  107 
  108 If you wish to create rpm packages, you'll need rpmbuild
  109 
  110   yum install rpm-build        # optional
  111 
  112 When setting up older versions for building BRL-CAD, it is sometimes
  113 necessary to install some non-default compilation tools in addition to the
  114 usual dependencies.  (The default toolchain is sometimes too old to
  115 properly build BRL-CAD, if the compilers don't support sufficiently modern
  116 standards.)  The following example is for CentOS 7:
  117 
  118 yum install centos-release-scl
  119 yum install devtoolset-7
  120 
  121 Then to run within that environment:
  122 
  123 scl enable devtoolset-7 bash
  124 
  125 
  126 The CMake version is often too old as well.  One way forward is to download the
  127 source code and bootstrap it (do this within the devtoolset enabled bash):
  128 
  129 sudo yum install openssl-devel
  130 
  131 curl -L -o cmake-3.18.2.tar.gz https://github.com/Kitware/CMake/releases/download/v3.18.2/cmake-3.18.2.tar.gz
  132 tar -xvf cmake-3.18.2.tar.gz
  133 cd cmake-3.18.2
  134 ./bootstrap --prefix=/opt/cmake
  135 make -j3 && make install
  136 export PATH=/opt/cmake/bin
  137 
  138 From there, with the devtoolset enabled and the PATH set to include the new
  139 CMake, it should be possible to proceed normally with the build.
  140 
  141 -------
  142 
  143 To determine what particular version of Redhat or Fedora you are
  144 using, check these files:
  145 
  146 cat /etc/redhat-release
  147 cat /etc/fedora-release
  148 
  149 -------
  150 
  151 Note there is a supported rpm package generation script in file
  152 'sh/make_rpm.sh' which can only function on a Fedora or openSUSE
  153 system.  It can be used like so:
  154 
  155   $ cd <BRL-CAD source directory>
  156 
  157   # create an rpm file:
  158   $ ./sh/make_rpm.sh
  159 
  160 It is also possible to create an RPM package using CPack with the
  161 make package build target, on systems with the proper RPM tools.
  162 
  163 -------
  164 
  165 One issue encountered running CentOS in VirtualBox - networking
  166 is off by default.  To enable, look for a file in
  167 /etc/sysconfig/network-scripts/ called something like enp0s3 and
  168 set ONBOOT=yes (see https://unix.stackexchange.com/a/79273)
  169 
  170 
  171 PPC64 Linux
  172 -----------
  173 
  174 If you happen to be installing on a ppc64 Linux system, the binaries
  175 may not resolve correctly without being installed first.  Be sure to
  176 install before testing applications (i.e., even before running the
  177 benchmark or "make test").