Jump to content

Recommended Posts

Posted

Кто не помнит старую добрую Дюну? Smile Вот и я решил ее скачать и немножко погамать - в виде Dune Legacy. Однако при "make" у меня вылетает такая ошибка:

Ошибка:

[root@Zal dunelegacy-0.94]# make

Package zziplib was not found in the pkg-config search path.

Perhaps you should add the directory containing `zziplib.pc'

to the PKG_CONFIG_PATH environment variable

No package 'zziplib' found

gcc -g -pipe -c zlib/SDL_rwops_zzip.c -o zlib/SDL_rwops_zzip.o

Package zziplib was not found in the pkg-config search path.

Perhaps you should add the directory containing `zziplib.pc'

to the PKG_CONFIG_PATH environment variable

No package 'zziplib' found

c++ -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread -lSDL_mixer -lSDL_net -lSDL_ttf -lSDL_image -lGL -L/usr/X11R6/lib -lm -o dunelegacy AiPlayerClass.o BuildItemClass.o BulletClass.o CutScene.o CommViewClass.o DataFile.o editor.o Link.o LinkedList.o ListIterator.o listStuff.o MapClass.o MapGenerator.o MentatClass.o Menu.o Net.o mmath.o ObjectClass.o PlayerClass.o PriorityQ.o sand.o SoundPlayerClass.o TerrainClass.o gui/Box.o gui/Button.o gui/Container.o gui/Graphics.o gui/HBox.o gui/Entry.o gui/Label.o gui/MessageBox.o gui/VBox.o gui/Widget.o gui/Window.o structures/BarracksClass.o structures/BuilderClass.o structures/ConstructionYardClass.o structures/GunTurretClass.o structures/HeavyFactoryClass.o structures/HighTechFactoryClass.o structures/IXClass.o structures/LightFactoryClass.o structures/PalaceClass.o structures/RadarClass.o structures/RefineryClass.o structures/RepairYardClass.o structures/RocketTurretClass.o structures/SiloClass.o structures/StarPortClass.o structures/StructureClass.o structures/WindTrapClass.o structures/WallClass.o structures/WORClass.o units/AirUnit.o units/Carryall.o units/DevastatorClass.o units/DeviatorClass.o units/FremenClass.o units/Frigate.o units/GroundUnit.o units/HarvesterClass.o units/InfantryClass.o units/LauncherClass.o units/MCVClass.o units/QuadClass.o units/SiegeTankClass.o units/SonicTankClass.o units/TankClass.o units/TrackedUnit.o units/TrikeClass.o units/TrooperClass.o units/Ornithopter.o units/RaiderClass.o units/Saboteur.o units/SandWorm.o units/SardaukarClass.o units/UnitClass.o zlib/SDL_rwops_zzip.o

/usr/bin/ld: cannot find -lSDL_ttf

collect2: ld returned 1 exit status

make: *** [dunelegacy] Error 1

Как лечить? SDL-ttf у меня последней версии. В инете много чего прочитал, но решения так и не нашел.

Заранее спасибо.

P.S. Сорри, что надоедаю такими простыми вопросами, но надо же мне как-то оклематься в этом линуксоидном мире Smile

Posted

Может быть требуется создать символическую ссылку на вашу библиотеку, чтоб в ее названии не было номера версии. Например, вместо ln -s libSDL_ttf.1.2.3.so.1 libSDL_ttf.so

Покажите вывод find /usr/lib/ -name 'libSDL*'.

Posted

Вот вывод этой команды:

Вывод

[root@Zal ~]# find /usr/lib/ -name 'libSDL*'

/usr/lib/libSDL.a

/usr/lib/libSDL_net-1.2.so.0

/usr/lib/libSDL.so

/usr/lib/libSDL-1.2.so.0

/usr/lib/libSDL_image-1.2.so.0

/usr/lib/libSDL_gfx.so.13

/usr/lib/libSDL-1.2.so.0.7.3

/usr/lib/libSDL_ttf-2.0.so.0

/usr/lib/libSDL_image-1.2.so.0.1.4

/usr/lib/libSDL_net.so

/usr/lib/libSDL_ttf-2.0.so.0.6.1

/usr/lib/libSDL_mixer-1.2.so.0

/usr/lib/libSDL_gfx.so.13.0.0

/usr/lib/libSDL_ttf-2.0.so.0.6.2

/usr/lib/libSDL_mixer-1.2.so.0.2.5

/usr/lib/libSDL_mixer.so

/usr/lib/libSDL_net-1.2.so.0.0.6

/usr/lib/libSDLmain.a

А как это - создать символическую ссылку? Просто я еще новичок, слышал про что-то такое, но, как говорится, не видел...

И еще. Почему ошибка в файле lSDL_ttf? Откуда буква "l"?

Posted

Обратите внимание, что у вас ДВЕ (0.6.1, 0.6.2) версии одной и той же библиотеки установлено. Интересно узнать, как это произошло. Если добавили руками - удаляйте ту, которую добавили сами.

А что покажет, интересно, ls -l /usr/lib/libSDL_ttf*?

Posted

Спасибо, поставилась Дюна! Как раз с помощью создания ссылки на файл. Только почему-то не запускается. Вот какую странную ошибку выдает:

Ошибка

[root@Zal DuneLegacy]# ./dunelegacy

./dunelegacy: error while loading shared libraries: /usr/local/lib/libSDL-1.2.so.0: cannot restore segment prot after reloc: Permission denied

Что бы это значило? В этой папке данный файлик спокойно лежит...

P.S. Как второй файл библиотеки там оказался - ума не приложу Smile

Posted

В-общем, и эту проблему я решил. Пришлось, правда, отключить SElinux, но я на это пошел.

Однако, теперь у меня проблема в самой игре. Когда я запускаю любую карту - мной созданную, или оригинальную - неважно, появляется интерфейс, а на игровом экране... Пустота. Может, кто-нибудь имел похожую проблему?

Сейчас я просто снес Дюну - и все. Во-первых, из-за того, что не работает, а во-вторых из-за того, что пора готовиться к поступлению в МГТУ в марте Smile

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...