project-navigation
Personal tools

Author Topic: Fedora29 Compile problem  (Read 25154 times)

Offline 1Nsane

  • Cannon Fodder
  • **
  • Posts: 2
    • View Profile
Fedora29 Compile problem
« on: April 02, 2019, 11:06:14 am »
Hi !

I try to compil UFO AI 2.6 on my Fedora29 but i have two problems.

First anomaly, i miss two headers files :

Code: [Select]
[duke@localhost ufoai]$ ./configure --enable-release
use c compiler: cc
use c++ compiler: c++
Compile for linux
Compile for x86_64
Compile in release mode
Disable ccache
Using default CFLAGS
Using default LDFLAGS
Found cc cc
Found cxx c++
Using bindir /usr/local/bin/
Using datadir /usr/local/games/ufo/
Using libdir /usr/local/lib/
Using prefix /usr/local
Enable hard linked cgame
Use signal handler
Setting custom data directory
Setting custom library directory
Found zip from zip
Found python from python
Found doxygen from doxygen
Found xvid.h
Found theora/theora.h
Found execinfo.h
Found libiberty.h
Could not find libiberty/libiberty.h
Found bfd.h
Found sys/utsname.h
Found link.h
Found jpeglib.h
Found zlib.h
Found png.h
Found curl/curl.h
Found lua.h
Found mxml.h
Found SDL.h
Found SDL_mixer.h
Found SDL_ttf.h
Found SDL.h
Found SDL_mixer.h
Found SDL_ttf.h
Could not find picomodel.h
Found gtk/gtk.h
Found gtksourceview/gtksourceview.h
Found libxml/parser.h
Found AL/al.h
Found gtk/gtkglwidget.h
Build modules:
Build cgame-campaign
Build cgame-multiplayer
Build cgame-skirmish
Build game
Build memory
Build testall
Build ufo2map
Build ufoded
Build ufo
Build ufomodel
Build uforadiant
Build ufoslicer

libiberty.h and picomodel.h

libiberty.h is present in /usr/lib/gcc/x86_64-redhat-linux/8/plugin/include

picomodel.h is not present on my fedora. I do not know which package to install.
dnf provides give nothing



Other thing :

Code: [Select]
[duke@localhost ufoai]$ make
===> CXX [testall] src/common/xml.cpp
src/common/xml.cpp: Dans la fonction « mxml_type_t mxml_ufo_type_cb(mxml_node_t*) Â»:
src/common/xml.cpp:513:14: error: utilisation invalide du type incomplet « mxml_node_t Â» {aka « struct _mxml_node_s Â»}
   type = node->value.element.name;
              ^~
In file included from src/common/xml.h:23,
                 from src/common/xml.cpp:26:
/usr/include/mxml.h:97:16: note: déclaration anticipée de « mxml_node_t Â» {aka « struct _mxml_node_s Â»}
 typedef struct _mxml_node_s mxml_node_t; /**** An XML node. ****/
                ^~~~~~~~~~~~
make: *** [Makefile:183: release-linux-x86_64/testall/common/xml.cpp.o] Error 1

How i can resolve that ?

Thanks u  :)


Offline Sandro

  • Squad Leader
  • ****
  • Posts: 240
  • Maintenance guy for UFO:AI 3D engine
    • View Profile
Re: Fedora29 Compile problem
« Reply #1 on: May 21, 2019, 02:21:53 am »
picomodel library should be located in the UFO:AI source tree under src/libs/picomodel -- please make sure you've checked out and compiling all the workspace. Same goes for the mxml library.

Offline 1Nsane

  • Cannon Fodder
  • **
  • Posts: 2
    • View Profile
Re: Fedora29 Compile problem
« Reply #2 on: July 13, 2019, 07:46:29 am »
Hello,

Thank you for your reply.

I will look at it as soon as I have a little time.

Offline anonymissimus

  • Sergeant
  • *****
  • Posts: 347
    • View Profile
Re: Fedora29 Compile problem
« Reply #3 on: September 14, 2019, 12:58:16 pm »
The second problem likely is the result of the missing headers.

Yes, the UFO:AI source contains lots of 'embedded' libs and uses them for building. Did you get the complete source ? See https://ufoai.org/wiki/Getting_the_source

Offline geever

  • Project Coder
  • PHALANX Commander
  • ***
  • Posts: 2560
    • View Profile
Re: Fedora29 Compile problem
« Reply #4 on: September 14, 2019, 05:23:30 pm »
The second issue could be MXML incompatibility. I've recently updated master branch to compile with mxml 3.0, before we only supported mxml 2.x.

-geever