aliens

Author Topic: Segmentation fault (core dumped) on starting  (Read 27557 times)

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #30 on: June 11, 2016, 01:00:06 pm »
Hello again everyone,

Regarding version, that is suspicions. Where is the version.h file? I cant find it.

Regarding libyaml (which seems the most promising approach after all), this is my output:

ii  libyaml-cpp-dev                                             0.5.3~3~ubuntu15.10.1                    i386         YAML parser and emitter for C++ - development files
ii  libyaml-cpp0.5v5:i386                                       0.5.3~3~ubuntu15.10.1                    i386         YAML parser and emitter for C++
ii  libyaml-tiny-perl                                           1.69-1                                   all          Perl module for reading and writing YAML files

I've gotten my libyaml from this launchpad: https://launchpad.net/~winterheart/+archive/ubuntu/openxcom. Seems right?

I'll be back next week latest, have'nt got much time now!

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9106
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #31 on: June 11, 2016, 02:24:25 pm »
Regarding version, that is suspicions. Where is the version.h file? I cant find it.

1. are you compiling your own executable?

- if yes, search in folder "src"
- if not, see point 2.

2. vanilla OpenXcom does not support PirateZ, please don't even try; OpenXcom-Extended (from mod portal) also does not support PirateZ, please don't waste your time!!

You need either:
a/ the executable shipped directly with PirateZ (v0.99)
b/ or the executable from the my thread
c/ or you can compile the same executable directly from sources

If you don't see the loading screen with the same version as pictured in my previous post, you are wasting both your and our time...
« Last Edit: June 11, 2016, 02:26:25 pm by Meridian »

Offline Yankes

  • Global Moderator
  • Commander
  • *****
  • Posts: 3350
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #32 on: June 11, 2016, 03:34:46 pm »
Hello again everyone,

Regarding version, that is suspicions. Where is the version.h file? I cant find it.

Regarding libyaml (which seems the most promising approach after all), this is my output:

ii  libyaml-cpp-dev                                             0.5.3~3~ubuntu15.10.1                    i386         YAML parser and emitter for C++ - development files
ii  libyaml-cpp0.5v5:i386                                       0.5.3~3~ubuntu15.10.1                    i386         YAML parser and emitter for C++
ii  libyaml-tiny-perl                                           1.69-1                                   all          Perl module for reading and writing YAML files

I've gotten my libyaml from this launchpad: https://launchpad.net/~winterheart/+archive/ubuntu/openxcom. Seems right?

I'll be back next week latest, have'nt got much time now!
Meridian binary is compiled against older version of yaml-cpp (at leas he have only 0.5.1 on his machine). I don't know is possible easy install older version on your machine.

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #33 on: June 12, 2016, 12:19:23 pm »
Meridian binary is compiled against older version of yaml-cpp (at leas he have only 0.5.1 on his machine). I don't know is possible easy install older version on your machine.

Well, this seems to be the problem then, doing a fresh dowload, unraring, copying steam files (that are patched with the patch available here: https://openxcom.org/downloads-extras/ ) and then running the bundled executable (supplying ./OpenXcomExPlusElf -user "./user" -config "./user") gives:

./OpenXcomExPlusElf: symbol lookup error: ./OpenXcomExPlusElf: undefined symbol: _ZN4YAML6detail9node_data12empty_scalarE

So I try the one you supply in the thread (what's the difference by the way?), gives the identical response. So I guess I should start there. What EXACT version of libyaml-cpp should I have then?

Edit: I don't want to waste anyone's time or anything, just help me if you have spare. I'll be sure to give back once I get this going!
« Last Edit: June 12, 2016, 12:22:17 pm by buenaventura »

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #34 on: June 12, 2016, 02:39:44 pm »
Okay, I've gotten hold of libyaml-cpp and -dev version 0.5.1 (from Trusty Tahr repositories, downloaded here: https://packages.ubuntu.com/trusty/i386/libyaml-cpp0.5/download and installed with dpkg -i, I removed all other versions first). Now I do not get the previous error (./OpenXcomExPlusElf: undefined symbol: _ZN4YAML6detail9node_data12empty_scalarE) yay, now I just get:

Failed to open directory:

With no directory specified, just like that. Wierd huh? At least it seems happy about my libyaml-cpp version. I've given -user "./user" -config "./user" -data "./" so it should find those. I've tried both with the bundled executable and with the one from Meridians thread, same thing (compiling my own I might try next, if you think it might make any difference). Any ideas?
« Last Edit: June 12, 2016, 02:43:56 pm by buenaventura »

Offline Yankes

  • Global Moderator
  • Commander
  • *****
  • Posts: 3350
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #35 on: June 12, 2016, 03:05:51 pm »
It look as it try open directory from empty path, could you call exe without arguments or pass in absolute directory paths?

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9106
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #36 on: June 12, 2016, 09:38:22 pm »
Maybe try this:

I set up a buildbot that builds binaries on the three current ubuntu releases. Results can be had here: https://lxnt.wtf/oxem/

The bot should pick up any changes in github repo in a day or so.

Libyaml is 0.5.3 statically linked. Libsdl1.2 is pretty much the same across the releases, so the main difference would be the compilers, and gcc 5.2/5.3 spits way more warnings (than 4.8 in trusty).

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #37 on: June 13, 2016, 09:39:58 am »
It look as it try open directory from empty path, could you call exe without arguments or pass in absolute directory paths?

I tried with absolute paths, like this:
./OpenXcomExPlusElf -data "/home/simon/Downloads/OpenXcom_XPiratez/UFO" -user "/home/simon/Downloads/OpenXcom_XPiratez" -config "/home/simon/Downloads/OpenXcom_XPiratez"

And I got a new result, see attached .png. Progress! But what now? libyaml-cpp 0.5.1 (from Trusty Tahr repos) gives that, while 0.5.3~3 (from winterhearts repo) gives the other error above. Should I try some other libyaml?

The executable Meridian suggested gives identical response as the other one (see attachment), so libyaml-cpp seems to be the culprit. Unless I need to move something more than these to the UFO folder:
simon@simon-Aspire-E5-521G:~/Downloads/OpenXcom_XPiratez/UFO$ ls -a
.  ..  GEODATA  GEOGRAPH  MAPS  ROUTES  SOUND  TERRAIN  UFOGRAPH  UNITS
I don't trust the readme's, so I might as well ask :)

Edit: I found this: https://openxcom.org/bugs/openxcom/issues/666 (omnious! the devil's issue), related? But I give the path to the config when I invoke? ...
Edit2: https://stackoverflow.com/questions/23108179/how-to-load-yaml-file-via-yaml-cpp - It might not be missing the config, but simply not able to parse something, like the answer suggests? Below is the config:
Spoiler:
options:
  displayWidth: 1680
  displayHeight: 1050
  fullscreen: true
  asyncBlit: true
  keyboardMode: 1
  maxFrameSkip: 0
  traceAI: false
  verboseLogging: false
  StereoSound: true
  geoscapeScale: 0
  battlescapeScale: 1
  useScaleFilter: false
  useHQXFilter: false
  useXBRZFilter: false
  useOpenGL: false
  checkOpenGLErrors: false
  useOpenGLShader: Shaders/5xbr_squared.opengl.shader
  vSyncForOpenGL: true
  useOpenGLSmoothing: true
  debug: true
  debugUi: false
  soundVolume: 98
  musicVolume: 0
  uiVolume: 79
  language: en-US
  battleScrollSpeed: 8
  battleEdgeScroll: 2
  battleDragScrollButton: 2
  dragScrollTimeTolerance: 300
  dragScrollPixelTolerance: 10
  battleFireSpeed: 6
  battleXcomSpeed: 23
  battleAlienSpeed: 30
  battleNewPreviewPath: 3
  fpsCounter: false
  globeDetail: true
  globeRadarLines: true
  globeFlightPaths: false
  globeAllRadarsOnBaseBuild: true
  audioSampleRate: 22050
  audioBitDepth: 16
  pauseMode: 0
  battleNotifyDeath: true
  showFundsOnGeoscape: true
  allowResize: false
  windowedModePositionX: -1
  windowedModePositionY: -1
  borderless: false
  captureMouse: true
  keyBattleCenterEnemy3: 51
  battleTooltips: true
  keepAspectRatio: true
  nonSquarePixelRatio: false
  cursorInBlackBandsInFullscreen: false
  cursorInBlackBandsInWindow: true
  cursorInBlackBandsInBorderlessWindow: false
  saveOrder: 3
  geoClockSpeed: 139
  dogfightSpeed: 50
  geoScrollSpeed: 28
  geoDragScrollButton: 2
  preferredMusic: 0
  preferredSound: 0
  preferredVideo: 0
  musicAlwaysLoop: false
  playIntro: false
  autosave: true
  autosaveFrequency: 4
  newSeedOnLoad: true
  mousewheelSpeed: 3
  changeValueByMouseWheel: 10
  maximizeInfoScreens: true
  geoDragScrollInvert: false
  aggressiveRetaliation: false
  customInitialBase: false
  allowBuildingQueue: true
  craftLaunchAlways: true
  storageLimitsEnforced: true
  canSellLiveAliens: true
  anytimePsiTraining: true
  globeSeasons: true
  psiStrengthEval: false
  canTransferCraftsWhileAirborne: true
  canManufactureMoreItemsPerHour: true
  spendResearchedItems: true
  fieldPromotions: true
  battleDragScrollInvert: false
  sneakyAI: false
  showMoreStatsInInventoryView: true
  battleHairBleach: true
  battleInstantGrenade: false
  includePrimeStateInSavedLayout: true
  battleUFOExtenderAccuracy: true
  battleExplosionHeight: 2
  weaponSelfDestruction: false
  battleSmoothCamera: false
  disableAutoEquip: false
  battleConfirmFireMode: false
  battleAutoEnd: true
  allowPsionicCapture: true
  allowPsiStrengthImprovement: false
  strafe: true
  forceFire: true
  skipNextTurnScreen: true
  TFTDDamage: false
  noAlienPanicMessages: false
  alienBleeding: true
  executeUnconsciousEnemies: true
  twoHandedIndicator: true
  minimapBorderIndicator: false
  everyoneFightsNobodyQuits: false
  addVehiclesToMemorial: false
  bleedingIndicator: true
  statisticalBulletConservation: true
  showItemNameAndWeightInInventory: false
  showGunMeleeOnTop: false
  showQuickSearch: true
  keyOk: 13
  keyCancel: 27
  keyScreenshot: 293
  keyGeoRight: 275
  keyQuickSave: 286
  keyQuickLoad: 290
  keyGeoLeft: 276
  keyFps: 288
  keyGeoUp: 273
  keyGeoDown: 274
  keyGeoZoomIn: 43
  keyGeoZoomOut: 45
  keyGeoSpeed1: 49
  keyGeoSpeed2: 50
  keyGeoSpeed3: 51
  keyGeoSpeed4: 52
  keyGeoSpeed5: 53
  keyGeoIntercept: 105
  keyGeoBases: 98
  keyGeoGraphs: 103
  keyGeoSpeed6: 54
  keyGeoUfopedia: 117
  keyGeoOptions: 27
  keyGeoFunding: 102
  keyGeoToggleDetail: 9
  keyGeoToggleRadar: 114
  keyBaseSelect1: 49
  keyBaseSelect2: 50
  keyBaseSelect3: 51
  keyBaseSelect4: 52
  keyBaseSelect6: 54
  keyBaseSelect7: 55
  keyBaseSelect8: 56
  keyBattleLeft: 276
  keyBaseSelect5: 53
  keyBattleRight: 275
  keyBattleDown: 274
  keyBattleLevelUp: 280
  keyBattleLevelDown: 281
  keyBattleUp: 273
  keyBattleCenterUnit: 278
  keyBattlePrevUnit: 122
  keyBattleNextUnit: 120
  keyBattleUseLeftHand: 113
  keyBattleUseRightHand: 101
  keyBattleInventory: 105
  keyBattleDeselectUnit: 32
  keyBattleMap: 109
  keyBattleOptions: 27
  keyBattleEndTurn: 8
  keyBattleStats: 115
  keyBattleKneel: 107
  keyBattleReload: 114
  keyBattlePersonalLighting: 108
  keyBattleAbort: 97
  keyBattleReserveNone: 282
  keyBattleReserveSnap: 283
  keyBattleReserveAimed: 284
  keyBattleReserveAuto: 285
  keyBattleReserveKneel: 106
  keyBattleZeroTUs: 127
  keyBattleCenterEnemy1: 49
  keyBattleCenterEnemy2: 50
  keyBattleCenterEnemy4: 52
  keyBattleCenterEnemy5: 53
  keyBattleCenterEnemy6: 54
  keyBattleCenterEnemy7: 55
  keyBattleCenterEnemy8: 56
  keyBattleCenterEnemy9: 57
  keyBattleCenterEnemy10: 48
  keyBattleVoxelView: 291
  keyInvCreateTemplate: 99
  keyInvApplyTemplate: 118
  keyInvClear: 98
  keyBattleActionItem1: 49
  keyBattleActionItem2: 50
  keyBattleActionItem3: 51
  keyBattleActionItem4: 52
  keyBattleActionItem5: 53
  keyToggleQuickSearch: 113
  FPS: 60
  FPSInactive: 30
mods:
  - id: piratez
    active: true
  - id: xcom1
    active: false
  - id: 40k
    active: true
  - id: Aliens_Pick_Up_Weapons
    active: false
  - id: Limit_Craft_Item_Capacities
    active: false
  - id: PSX_Static_Cydonia_Map
    active: false
  - id: UFOextender_Gun_Melee
    active: false
  - id: UFOextender_Psionic_Line_Of_Fire
    active: false
  - id: UFOextender_Starting_Avalanches
    active: false
  - id: XcomUtil_Always_Daytime
    active: false
  - id: XcomUtil_Always_Nighttime
    active: false
  - id: XcomUtil_Fighter_Transports
    active: false
  - id: XcomUtil_High_Explosive_Damage
    active: false
  - id: XcomUtil_Improved_Ground_Tanks
    active: false
  - id: XcomUtil_Improved_Heavy_Laser
    active: false
  - id: XcomUtil_No_Psionics
    active: false
  - id: XcomUtil_Pistol_Auto_Shot
    active: false
  - id: XcomUtil_Skyranger_Weapon_Slot
    active: false
  - id: XcomUtil_Starting_Defensive_Base
    active: false
  - id: XcomUtil_Starting_Defensive_Improved_Base
    active: false
  - id: XcomUtil_Starting_Improved_Base
    active: false
  - id: XcomUtil_Statstrings
    active: false
  - id: altSmokeOps
    active: true
  - id: altTacArmor
    active: true
  - id: altSGC
    active: false
  - id: Aliens_Pick_Up_Weapons_TFTD
    active: false
  - id: Limit_Craft_Item_Capacities_TFTD
    active: false
  - id: StrategyCore_Swap_Small_USOs_TFTD
    active: false
  - id: UFOextender_Gun_Melee_TFTD
    active: false
  - id: UFOextender_Psionic_Line_Of_Fire_TFTD
    active: false
  - id: XcomUtil_Always_Daytime_TFTD
    active: false
  - id: XcomUtil_Always_Nighttime_TFTD
    active: false
  - id: XcomUtil_High_Explosive_Damage_TFTD
    active: false
  - id: XcomUtil_Improved_Gauss
    active: false
  - id: XcomUtil_Infinite_Gauss
    active: false
  - id: XcomUtil_No_Psionics_TFTD
    active: false
  - id: XcomUtil_Pistol_Auto_Shot_TFTD
    active: false
  - id: XcomUtil_Starting_Defensive_Base_TFTD
    active: false
  - id: XcomUtil_Starting_Defensive_Improved_Base_TFTD
    active: false
  - id: XcomUtil_Starting_Improved_Base_TFTD
    active: false
  - id: piratezNaughtyMod
    active: true
  - id: altCorpses
    active: false
  - id: ocpgranny
    active: false
Edit3: yaml-cpp obv. sucks. ;) Perhaps I should try to build the latest version myself? But then how do I tell the piratez to use it? (github). I'll stop spamming now and wait for some suggestions from you guys.
« Last Edit: June 13, 2016, 10:00:01 am by buenaventura »

Offline ohartenstein23

  • Commander
  • *****
  • Posts: 1933
  • Flamethrowers fry cyberdisk circuits
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #38 on: June 13, 2016, 03:06:29 pm »
Hi buenaventura, here's another thread you might want to watch for more information on linux versions of OXCE+ (Meridian's version of the executable) and how it works with XPiratez.  https://openxcom.org/forum/index.php/topic,4526.0.html

At this point, you should try compiling a fresh executable with the 0.5.1 libraries.  If you put the compiled file in the XPiratez folder, same location as the windows .exe file, you shouldn't have to specify the data folder - it'll search the correct directory automatically.  You should also specify the user and config file paths as "/home/Simon/Downloads/OpenXcom_XPiratez/user" - it's not always necessary to do so, since the code should search for that directory, but it may help.  The mod files are contained in the user folder, and enabling it will be in the options menu once you get the executable working.

Offline Arthanor

  • Commander
  • *****
  • Posts: 2488
  • XCom Armoury Quartermaster
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #39 on: June 13, 2016, 04:23:22 pm »
Nothing that I know of in the original game uses yaml, so a yaml error is an issue with some openxcom files (or your yaml version). Make sure that you've got the rulesets and config files in the right places.

I've got to say, this seems to be way more complicated than it should be. I typically install using CMAKE, and it has been very reliable.

Last time, I used this command to get my dependenciy:
apt-get install --no-install-recommends \
    build-essential libboost-dev libsdl1.2-dev libsdl-mixer1.2-dev \
    libsdl-image1.2-dev libsdl-gfx1.2-dev libyaml-cpp-dev xmlto


But for some reason the game wouldn't play music, so I had to install timidity as well, which you have already done, I think.

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #40 on: June 13, 2016, 04:40:16 pm »
Hi buenaventura, here's another thread you might want to watch for more information on linux versions of OXCE+ (Meridian's version of the executable) and how it works with XPiratez.  https://openxcom.org/forum/index.php/topic,4526.0.html

At this point, you should try compiling a fresh executable with the 0.5.1 libraries.  If you put the compiled file in the XPiratez folder, same location as the windows .exe file, you shouldn't have to specify the data folder - it'll search the correct directory automatically.  You should also specify the user and config file paths as "/home/Simon/Downloads/OpenXcom_XPiratez/user" - it's not always necessary to do so, since the code should search for that directory, but it may help.  The mod files are contained in the user folder, and enabling it will be in the options menu once you get the executable working.

Hi, thanks, I've tried to compile with libyaml-cpp-dev 0.5.1 (from here), after cloning from meridian's git  but alas, that libyaml seems to cause problems still... (see the bottom of this tail of the output from make -f -j10 Makefile.simple:
Spoiler:
<snipped ALOT of output>
Options.cpp:(.text+0x10911): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Options.cpp:(.text+0x10b5a): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Options.cpp:(.text+0x110e2): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/Options.o: In function `OpenXcom::Options::userSplitMasters()':
Options.cpp:(.text+0x11fdb): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/Options.o: In function `OpenXcom::Options::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
Options.cpp:(.text+0x14604): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/Language.o: In function `OpenXcom::Language::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
Language.cpp:(.text+0x65f1): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/OpenGL.o: In function `OpenXcom::OpenGL::set_shader(char const*)':
OpenGL.cpp:(.text+0x392a): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/ModInfo.o: In function `OpenXcom::ModInfo::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
ModInfo.cpp:(.text+0x4a5): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/OptionInfo.o: In function `OpenXcom::OptionInfo::save(YAML::Node&) const':
OptionInfo.cpp:(.text+0x20b9): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
OptionInfo.cpp:(.text+0x22c0): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
OptionInfo.cpp:(.text+0x24c4): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../obj/OptionInfo.o: In function `YAML::Node YAML::Node::operator[]<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
OptionInfo.cpp:(.text._ZN4YAML4NodeixINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES0_RKT_[_ZN4YAML4NodeixINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEES0_RKT_]+0x621): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: error: ld returned 1 exit status
Makefile.simple:47: recipe for target '../bin/openxcom' failed
make: *** [../bin/openxcom] Error 1
)

dpkg -l | grep libyaml-cpp gives:
Spoiler:
ii  libyaml-cpp-dev                                             0.5.1-1                                  i386         YAML parser and emitter for C++ - development files
rc  libyaml-cpp0.3v5:i386                                       0.3.0-1.2                                i386         YAML parser and emitter for C++ (0.3 series)
ii  libyaml-cpp0.5:i386                                         0.5.1-1                                  i386         YAML parser and emitter for C++
rc  libyaml-cpp0.5v5:i386                                       0.5.3~3~ubuntu15.10.1                    i386         YAML parser and emitter for C++

Nothing that I know of in the original game uses yaml, so a yaml error is an issue with some openxcom files (or your yaml version). Make sure that you've got the rulesets and config files in the right places.

I've got to say, this seems to be way more complicated than it should be. I typically install using CMAKE, and it has been very reliable.

Last time, I used this command to get my dependenciy:
apt-get install --no-install-recommends \
    build-essential libboost-dev libsdl1.2-dev libsdl-mixer1.2-dev \
    libsdl-image1.2-dev libsdl-gfx1.2-dev libyaml-cpp-dev xmlto


How can I make sure about rulesets and such? (I don't know exactly what you mean there).

I'm cloning again now to try with CMake, but I did that before as well though. (You used this git? : git clone https://github.com/MeridianOXC/OpenXcom.git ). Yeah this seems more complicated than it should be - if I did not find this quite fun/interesting, and if I was not currently at work (*snickers*), I would probably not go through so much trouble!

Edit: Oops, forget the stuff about compilation not working, forgot some stuff. Doing Cmake now which should work better I hope.
« Last Edit: June 13, 2016, 04:46:26 pm by buenaventura »

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9106
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #41 on: June 13, 2016, 04:54:48 pm »
I'm cloning again now to try with CMake, but I did that before as well though. (You used this git? : git clone https://github.com/MeridianOXC/OpenXcom.git ). Yeah this seems more complicated than it should be - if I did not find this quite fun/interesting, and if I was not currently at work (*snickers*), I would probably not go through so much trouble!

I just hope you're not using the "master" branch, but the "oxce2.9-plus-proto" branch (I never got the answer about version.h from you).
The master is just an old copy of vanilla openxcom and won't help you.

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #42 on: June 13, 2016, 05:09:18 pm »
I just hope you're not using the "master" branch, but the "oxce2.9-plus-proto" branch (I never got the answer about version.h from you).
The master is just an old copy of vanilla openxcom and won't help you.

OF COURSE NOT I WOULD NEV...  ;D
* git clone https://github.com/MeridianOXC/OpenXcom.git oxce2.9-plus-proto *
building now...

Dang! So close! :
Spoiler:
<snip>
NewBattleState.cpp:(.text._ZN4YAML4NodeaSIjEERS0_RKT_[_ZN4YAML4NodeaSIjEERS0_RKT_]+0x375): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Menu/NewBattleState.cpp.o: In function `YAML::Node YAML::Node::operator[]<char [5]>(char const (&) [5])':
NewBattleState.cpp:(.text._ZN4YAML4NodeixIA5_cEES0_RKT_[_ZN4YAML4NodeixIA5_cEES0_RKT_]+0x527): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Mod/Armor.cpp.o: In function `OpenXcom::Armor::load(YAML::Node const&)':
Armor.cpp:(.text+0x3e62): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Mod/MapScript.cpp.o: In function `OpenXcom::MapScript::load(YAML::Node const&)':
MapScript.cpp:(.text+0x415b): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Mod/Mod.cpp.o: In function `YAML::Node::Scalar[abi:cxx11]() const [clone .isra.734]':
Mod.cpp:(.text+0xd19): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Mod/Mod.cpp.o: In function `OpenXcom::Mod::loadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
Mod.cpp:(.text+0xef71): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Mod/Mod.cpp.o: In function `OpenXcom::Mod::loadExtraResources()':
Mod.cpp:(.text+0x210ff): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Mod/RuleMissionScript.cpp.o: In function `YAML::Node::Scalar[abi:cxx11]() const [clone .isra.100]':
RuleMissionScript.cpp:(.text+0x6a9): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Mod/RuleRegion.cpp.o: In function `OpenXcom::RuleRegion::load(YAML::Node const&)':
RuleRegion.cpp:(.text+0x1993): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
RuleRegion.cpp:(.text+0x199d): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
RuleRegion.cpp:(.text+0x19b4): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Mod/RuleSoldier.cpp.o: In function `OpenXcom::RuleSoldier::load(YAML::Node const&, OpenXcom::Mod*)':
RuleSoldier.cpp:(.text+0x3279): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Mod/RuleSoldier.cpp.o:RuleSoldier.cpp:(.text+0x3283): more undefined references to `YAML::detail::node_data::empty_scalar[abi:cxx11]' follow
CMakeFiles/openxcom.dir/Mod/SoldierNamePool.cpp.o: In function `OpenXcom::SoldierNamePool::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
SoldierNamePool.cpp:(.text+0x1b41): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/AlienBase.cpp.o: In function `OpenXcom::AlienBase::save() const':
AlienBase.cpp:(.text+0x147a): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
AlienBase.cpp:(.text+0x1666): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
AlienBase.cpp:(.text+0x193e): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
AlienBase.cpp:(.text+0x1e69): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
AlienBase.cpp:(.text+0x2348): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/AlienBase.cpp.o:AlienBase.cpp:(.text+0x2700): more undefined references to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
CMakeFiles/openxcom.dir/Savegame/AlienStrategy.cpp.o: In function `OpenXcom::AlienStrategy::save() const':
AlienStrategy.cpp:(.text+0x31f1): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Savegame/AlienStrategy.cpp.o: In function `void YAML::Node::Assign<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > const&)':
AlienStrategy.cpp:(.text._ZN4YAML4Node6AssignISt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS8_ESaISt4pairIKS8_iEEEEEvRKT_[_ZN4YAML4Node6AssignISt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS8_ESaISt4pairIKS8_iEEEEEvRKT_]+0x1f0): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/AlienStrategy.cpp.o: In function `YAML::convert<std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > > > > >::decode(YAML::Node const&, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > > > >&)':
AlienStrategy.cpp:(.text._ZN4YAML7convertISt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorISt4pairIS7_iESaISA_EESt4lessIS7_ESaIS9_IKS7_SC_EEEE6decodeERKNS_4NodeERSI_[_ZN4YAML7convertISt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorISt4pairIS7_iESaISA_EESt4lessIS7_ESaIS9_IKS7_SC_EEEE6decodeERKNS_4NodeERSI_]+0x4a1): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Savegame/AlienStrategy.cpp.o: In function `void YAML::detail::node_data::force_insert<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int> > > const&, boost::shared_ptr<YAML::detail::memory_holder>)':
AlienStrategy.cpp:(.text._ZN4YAML6detail9node_data12force_insertINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorISt4pairIS8_iESaISB_EEEEvRKT_RKT0_N5boost10shared_ptrINS0_13memory_holderEEE[_ZN4YAML6detail9node_data12force_insertINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorISt4pairIS8_iESaISB_EEEEvRKT_RKT0_N5boost10shared_ptrINS0_13memory_holderEEE]+0xeb): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Base.cpp.o: In function `OpenXcom::Base::saveId() const':
Base.cpp:(.text+0x8aa9): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Base.cpp.o: In function `YAML::Node::Node<char [6]>(char const (&) [6])':
Base.cpp:(.text._ZN4YAML4NodeC2IA6_cEERKT_[_ZN4YAML4NodeC5IA6_cEERKT_]+0x158): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/BaseFacility.cpp.o: In function `OpenXcom::BaseFacility::save() const':
BaseFacility.cpp:(.text+0x151e): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/BaseFacility.cpp.o: In function `YAML::Node YAML::Node::operator[]<char [10]>(char const (&) [10])':
BaseFacility.cpp:(.text._ZN4YAML4NodeixIA10_cEES0_RKT_[_ZN4YAML4NodeixIA10_cEES0_RKT_]+0x34c): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/BattleItem.cpp.o:BattleItem.cpp:(.text+0x329f): more undefined references to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
CMakeFiles/openxcom.dir/Savegame/BattleUnit.cpp.o: In function `OpenXcom::BattleUnitKills::load(YAML::Node const&)':
BattleUnit.cpp:(.text._ZN8OpenXcom15BattleUnitKills4loadERKN4YAML4NodeE[_ZN8OpenXcom15BattleUnitKills4loadERKN4YAML4NodeE]+0x589): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Savegame/BattleUnit.cpp.o: In function `YAML::Node& YAML::Node::operator=<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
BattleUnit.cpp:(.text._ZN4YAML4NodeaSINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_[_ZN4YAML4NodeaSINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERS0_RKT_]+0x3a): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Country.cpp.o: In function `OpenXcom::Country::save() const':
Country.cpp:(.text+0x12a1): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Country.cpp:(.text+0x15d4): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Country.cpp:(.text+0x1954): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Country.cpp:(.text+0x1dbd): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Country.cpp.o:Country.cpp:(.text+0x24d0): more undefined references to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
CMakeFiles/openxcom.dir/Savegame/SavedBattleGame.cpp.o: In function `YAML::Node::Scalar[abi:cxx11]() const [clone .isra.173]':
SavedBattleGame.cpp:(.text+0x359): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Savegame/SavedBattleGame.cpp.o: In function `OpenXcom::SavedBattleGame::save() const':
SavedBattleGame.cpp:(.text+0x4aa2): undefined reference to `YAML::EncodeBase64[abi:cxx11](unsigned char const*, unsigned int)'
CMakeFiles/openxcom.dir/Savegame/SavedBattleGame.cpp.o: In function `OpenXcom::SavedBattleGame::load(YAML::Node const&, OpenXcom::Mod*, OpenXcom::SavedGame*)':
SavedBattleGame.cpp:(.text+0x8925): undefined reference to `YAML::DecodeBase64(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/SavedGame.cpp.o: In function `YAML::Node::Scalar[abi:cxx11]() const [clone .isra.327]':
SavedGame.cpp:(.text+0x339): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Savegame/SavedGame.cpp.o: In function `OpenXcom::SavedGame::getSaveInfo(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, OpenXcom::Language*)':
SavedGame.cpp:(.text+0x4565): undefined reference to `YAML::LoadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/SavedGame.cpp.o: In function `OpenXcom::SavedGame::save(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const':
SavedGame.cpp:(.text+0x6653): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/SavedGame.cpp.o: In function `OpenXcom::SavedGame::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, OpenXcom::Mod*)':
SavedGame.cpp:(.text+0x9809): undefined reference to `YAML::LoadAllFromFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Soldier.cpp.o: In function `OpenXcom::Soldier::save() const':
Soldier.cpp:(.text+0x406c): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Soldier.cpp:(.text+0x4152): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Soldier.cpp:(.text+0x46ae): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/SoldierDiary.cpp.o: In function `YAML::Node::Scalar[abi:cxx11]() const [clone .isra.143]':
SoldierDiary.cpp:(.text+0x1e9): undefined reference to `YAML::detail::node_data::empty_scalar[abi:cxx11]'
CMakeFiles/openxcom.dir/Savegame/Target.cpp.o: In function `OpenXcom::Target::saveId() const':
Target.cpp:(.text+0x1d42): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Target.cpp:(.text+0x1dd5): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Target.cpp.o: In function `OpenXcom::Target::save() const':
Target.cpp:(.text+0x3311): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Target.cpp:(.text+0x33bc): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
Target.cpp:(.text+0x3721): undefined reference to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
CMakeFiles/openxcom.dir/Savegame/Target.cpp.o:Target.cpp:(.text+0x3a0b): more undefined references to `YAML::detail::node_data::set_scalar(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
collect2: error: ld returned 1 exit status
src/CMakeFiles/openxcom.dir/build.make:7867: recipe for target 'bin/openxcom' failed
make[2]: *** [bin/openxcom] Error 1
CMakeFiles/Makefile2:90: recipe for target 'src/CMakeFiles/openxcom.dir/all' failed
make[1]: *** [src/CMakeFiles/openxcom.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2
« Last Edit: June 13, 2016, 05:18:28 pm by buenaventura »

Offline Yankes

  • Global Moderator
  • Commander
  • *****
  • Posts: 3350
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #43 on: June 14, 2016, 01:05:08 am »
Its look like it try compile yaml statically. One solution could be adding yaml src to build system. It would probably resolve errors.

Offline buenaventura

  • Sergeant
  • **
  • Posts: 21
    • View Profile
Re: Segmentation fault (core dumped) on starting
« Reply #44 on: June 14, 2016, 09:28:10 am »
Its look like it try compile yaml statically. One solution could be adding yaml src to build system. It would probably resolve errors.

I'll try on my own to do this, but I would be happy to get some more in depth instruction! I've gotten the source from here and I've extracted it in .../oxce2.9-plus-proto/src/, but how do I add it to the build system?