TASEmulators / fceux

FCEUX, a NES Emulator
http://fceux.com
GNU General Public License v2.0
1.23k stars 254 forks source link

build error - Package 'minizip', required by 'virtual:world', not found #750

Open 12sunflowers opened 3 months ago

12sunflowers commented 3 months ago

Devuan Daedalus

freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6/build$ sudo cmake ~/Downloads/NES$ /home/freeartist-devuan/Downloads/NES/fceux-2.6.6
[sudo] password for freeartist-devuan: 
-- GUI Frontend: Qt5
-- OpenGL preference: LEGACY
-- Address Sanitizer Disabled
-- Checking for module 'minizip'
--   Package 'minizip', required by 'virtual:world', not found
CMake Error at /usr/share/cmake-3.25/Modules/FindPkgConfig.cmake:607 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/share/cmake-3.25/Modules/FindPkgConfig.cmake:829 (_pkg_check_modules_internal)
  src/CMakeLists.txt:121 (pkg_check_modules)

-- Configuring incomplete, errors occurred!
See also "/home/freeartist-devuan/Downloads/NES/fceux-2.6.6/CMakeFiles/CMakeOutput.log".
freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6/build$ minizip
MiniZip 1.1, demo of zLib + MiniZip64 package, written by Gilles Vollant
more info on MiniZip at http://www.winimage.com/zLibDll/minizip.html

Usage : minizip [-o] [-a] [-0 to -9] [-p password] [-j] file.zip [files_to_add]

  -o  Overwrite existing file.zip
  -a  Append to existing file.zip
  -0  Store only
  -1  Compress faster
  -9  Compress better

  -j  exclude path. store only the file name.

freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6/build$ 
keithbowes commented 3 months ago

You need the development files, not the executable. What you should be trying to check whether you have it is pkg-config --modversion minizip instead of minizip. If you're on an RPM-based distro, try sudo dnf install 'pkgconfig(minizip)' to install the development files (I'm not sure about other distros but it's probably similar). For me:

$ pkg-config --modversion minizip
1.2.13
$ minizip
minizip: command not found

I've always thought it was silly that the executables, runtime libraries, and development files are in separate packages, but I suppose there's a reason for it (the majority of distros do it, after all; I think some like ArchLinux and Gentoo don't, but again, don't quote me on that).

12sunflowers commented 3 months ago

@keithbowes Thanks after installing libminizip-dev and qt6-base-dev build ok but now error at launch

configured with qt6

freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6$ fceux
timeStampModuleInit
Starting FCEUX 2.6.6-interim git...
NTSC mode set
NTSC mode set
Running on Platform: xcb
Emulator Start
GL Version: 4.5 (Compatibility Profile) Mesa 22.3.6 
Segmentation fault
freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6$ 

same with qt5

freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6$ fceux
timeStampModuleInit
Starting FCEUX 2.6.6-interim git...
NTSC mode set
NTSC mode set
Running on Platform: xcb
Emulator Start
GL Version: 4.5 (Compatibility Profile) Mesa 22.3.6 
Segmentation fault
freeartist-devuan@home:~/Downloads/NES/fceux-2.6.6$