News:

Want to praise Simutrans?
Your feedback is important for us ;D.

Merging Standard 112.x into Experimental

Started by Bernd Gabriel, November 03, 2012, 05:04:13 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Zeno


Junna

Since no one seems to have the time or patience to compile, I'm trying to compile myself. I've run into this error:

Quote1>imagelist3d_writer.obj : error LNK2001: unresolved external symbol "public: void __thiscall imagelist2d_writer_t::write_obj(struct _iobuf *,class obj_node_t &,class slist_tpl<class slist_tpl<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > const &)" (?write_obj@imagelist2d_writer_t@@QAEXPAU_iobuf@@AAVobj_node_t@@ABV?$slist_tpl@V?$slist_tpl@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@@@@@Z)
1>imagelist3d_writer.obj : error LNK2001: unresolved external symbol "public: void __thiscall obj_node_t::write(struct _iobuf *)" (?write@obj_node_t@@QAEXPAU_iobuf@@@Z)
1>imagelist3d_writer.obj : error LNK2001: unresolved external symbol "public: void __thiscall obj_node_t::write_uint16(struct _iobuf *,unsigned short,int)" (?write_uint16@obj_node_t@@QAEXPAU_iobuf@@GH@Z)
1>imagelist3d_writer.obj : error LNK2001: unresolved external symbol "public: __thiscall obj_node_t::obj_node_t(class obj_writer_t *,unsigned int,class obj_node_t *)" (??0obj_node_t@@QAE@PAVobj_writer_t@@IPAV0@@Z)
1>imagelist3d_writer.obj : error LNK2001: unresolved external symbol "private: static class imagelist2d_writer_t imagelist2d_writer_t::the_instance" (?the_instance@imagelist2d_writer_t@@0V1@A)

How do I proceed?

Zeno

It's been almost ten years since I compiled C++ stuff the last time... maybe a file missing?

Junna

Quote from: Zeno on March 04, 2013, 07:03:10 PM
It's been almost ten years since I compiled C++ stuff the last time... maybe a file missing?

Indeed, I've already had to add a few others that were missing according to what Carl experienced in a previous attempt to compile (imagesomethingetc were missing). I can't figure out what files else are missing, though...

Milko

Hello James

Quote from: jamespetts on February 27, 2013, 09:08:11 PM
Hmm - I am suspecting that the makefile might be missing some things, but am not sure what. Some things that I had to add to my MSVC++ project to get it to compile were:

simunits.cc
simloadingscreen.cc/.h
script/api/api_gui.cc
gui/convoy_item.cc/.h

Try adding these to the makefile to see whether this helps.

Adding float32e8_t.cc reduce the errors.

But I'm unable to locate the file (.cc) where the class path_explorer_t and gui_table:t are defined.

Maybe some <include> is missing?

Giuseppe

jamespetts

path_explorer_t is in path_explorer.cc and gui_table_t is in /gui/components/gui_component_table.cc.

I have not put out a revised version yet because I am considering whether to put out a version which combines the latest in 112.x-merge with the latest work on walking passengers and private cars.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Junna

Quote from: jamespetts on March 04, 2013, 09:33:15 PM
path_explorer_t is in path_explorer.cc and gui_table_t is in /gui/components/gui_component_table.cc.

I have not put out a revised version yet because I am considering whether to put out a version which combines the latest in 112.x-merge with the latest work on walking passengers and private cars.

If it doesn't take too long to do, that sounds like a good idea to include.

Dwachs

Quote from: Junna on March 04, 2013, 06:32:26 PM
Since no one seems to have the time or patience to compile, I'm trying to compile myself. I've run into this error:
[...]
How do I proceed?
It seems that you included too much files in the compilation. In order to compile the program, you should not add the files in besch/writer to the project. These are only needed to compile makeobj.
Parsley, sage, rosemary, and maggikraut.

Junna

Quote from: Dwachs on March 05, 2013, 11:00:23 AM
It seems that you included too much files in the compilation. In order to compile the program, you should not add the files in besch/writer to the project. These are only needed to compile makeobj.

Ah. I added them thinking they would fix some of the other errors, but I guess only float32_etc was necessary.

It compiles now. Thank you.

Zeno

Quote from: Junna on March 05, 2013, 01:34:37 PM
It compiles now. Thank you.
Great! Did you compile it for windows? Would you be so kind of sharing the binary? :D

Junna

Quote from: Zeno on March 05, 2013, 05:19:18 PM
Great! Did you compile it for windows? Would you be so kind of sharing the binary? :D

It's for Windows. 32-bit compiled (couldn't figure out how to properly set it to 64, as the MSVC2010 only came with default 32 for options). Shouldn't be a problem though (runs well on my Win7 so far.)

http://www.mediafire.com/?7n04ctuphhp3yd0

Zeno

Thanks so much. I hope it will run in my 32bit Win7 too! 8)
I'll give it a try when I'm back at home later.

Milko

Hello James

Quote from: jamespetts on February 27, 2013, 09:08:11 PM
Hmm - I am suspecting that the makefile might be missing some things, but am not sure what. Some things that I had to add to my MSVC++ project to get it to compile were:

simunits.cc
simloadingscreen.cc/.h
script/api/api_gui.cc
gui/convoy_item.cc/.h

Try adding these to the makefile to see whether this helps.

I'm able to build sim.exe (branch 112.x) adding to makefile:

SOURCES += simunits.cc

SOURCES += convoy.cc
SOURCES += utils/float32e8_t.cc
SOURCES += path_explorer.cc
SOURCES += gui/components/gui_component_table.cc
SOURCES += gui/components/gui_table.cc
SOURCES += gui/components/gui_convoy_assembler.cc
SOURCES += gui/components/gui_convoy_label.cc
SOURCES += gui/replace_frame.cc
SOURCES += dataobj/livery_scheme.cc
SOURCES += dataobj/replace_data.cc

I do not know if they are all necessary as I am not an expert on makefiles.

The program compile and I don't have the "alloca" error.

Adding SOURCES += script/api/api_gui.cc (as you suggest) I obtain the error in attach.

Giuseppe

jamespetts

Hmm - odd. I wonder whether Bernd would be able to assist with that error?

Incidentally, would you be able to post your makefile? It needs to be updated for the 112.x-merge branch in any event.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Milko

Hello

This is my makefile.

Giuseppe

jamespetts

Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Milko

Hello James

I left a comment on file script /api/api_gui.cc, I do not understand why you had to plug it in and everything is ok, if I insert instead, the project will not compile.
Maybe I added some file conflicts, however, are not able to understand it.

Giuseppe

jamespetts

Yes, I noticed that. I am not sure either - I haven't really looked into scripted scenarios.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Dwachs

Quote from: Milko on March 08, 2013, 08:35:51 AM
I left a comment on file script /api/api_gui.cc, I do not understand why you had to plug it in and everything is ok, if I insert instead,
api_gui.cc is already included in the makefile. Including it twice will give you those errors.
Parsley, sage, rosemary, and maggikraut.

Milko

Hello

it's true! I was convinced that I have checked if they were already included, I must have been mistaken. Thanks Dwachs.

James, you can totally eliminate my line with the comment.

Giuseppe

jamespetts

Giuseppe and Dwachs - thank you: that is most helpful.

I have now released a new Release Candidate build: see here featuring the merging on this branch and also my recent features relating to private car route finding and passenger walking. The two sets of features were helpfully merged by Bernd this week-end. All testing is appreciated.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Carl

James - the download link in the new topic seems to still contain the old RC version, 10.9029.

jamespetts

Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Carl

Thanks James! I'll test more extensively tomorrow, but a quick problem to note: there seem to be some graphical problems in the Halt Detail window:



jamespetts

Thank you very much for the report - found and fixed.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.