Gael de Sailly wrote:I don't manage to compile valleys_c :
Code: Select all
CMakeFiles/minetest.dir/mapgen_v7.cpp.o: in function « MapgenV7::generateCaves(short) »:
mapgen_v7.cpp:(.text+0x38f3): undefined reference to « CaveV7plus<MapgenV7>::CaveV7plus(MapgenV7*, PseudoRandom*) »
mapgen_v7.cpp:(.text+0x3964): undefined reference to « CaveV7plus<MapgenV7>::makeCave(irr::core::vector3d<short>, irr::core::vector3d<short>, int) »
mapgen_v7.cpp:(.text+0x398e): undefined reference to « CaveV7plus<MapgenV7>::CaveV7plus(MapgenV7*, PseudoRandom*) »
mapgen_v7.cpp:(.text+0x39f5): undefined reference to « CaveV7plus<MapgenV7>::makeCave(irr::core::vector3d<short>, irr::core::vector3d<short>, int) »
mapgen_v7.cpp:(.text+0x3a14): undefined reference to « CaveV7plus<MapgenV7>::CaveV7plus(MapgenV7*, PseudoRandom*) »
mapgen_v7.cpp:(.text+0x3a7c): undefined reference to « CaveV7plus<MapgenV7>::makeCave(irr::core::vector3d<short>, irr::core::vector3d<short>, int) »
mapgen_v7.cpp:(.text+0x3a8e): undefined reference to « CaveV7plus<MapgenV7>::CaveV7plus(MapgenV7*, PseudoRandom*) »
mapgen_v7.cpp:(.text+0x3af6): undefined reference to « CaveV7plus<MapgenV7>::makeCave(irr::core::vector3d<short>, irr::core::vector3d<short>, int) »
collect2: error: ld returned 1 exit status
make[2]: *** [bin/minetest] Erreur 1
make[1]: *** [src/CMakeFiles/minetest.dir/all] Erreur 2
make: *** [all] Erreur 2
The error message was partly in French, I've translated.
I don't think you're using the same version that I am, since I commented out the generateCaves function a while ago. [Actually, that's the v7 that's complaining, but it doesn't do so on my system.] The one I'm pushing to is
https://github.com/duane-r/minetest/tree/valleys_c (zip from
https://github.com/duane-r/minetest/arc ... leys_c.zip).
However, let me download everything fresh and check.
Edit: Ok, after cloning with:
Code: Select all
git clone https://github.com/duane-r/minetest.git
I checkout valleys_c:
I configure:
and make:
and after several eons... it compiles with the usual error about the locale directory, but it works.
I modified the cavegen.* files to use a template, so that I could have two versions, for v7 and for valleys, but I may end up striking the v7 caves from valleys altogether. In any case, it's not affecting compile for me.
What system/compiler are you using? Maybe other compilers aren't dealing with templates the same way.
Believe in people and you don't need to believe anything else.