My OS is openSUSE Tumbleweed, I am trying to install “checkinstall” but I am having problems, I tried using zypper but says package not found, tried to find it on the YaST2 software manager and couldn’t, I tried to download the .ymp file and although it installs, it ends up with the output “Installation was only partially successful.”, and then I checked in the terminal and it is not installed, checked in YaST2 software manager and there isn’t there. What could be wrong? Why I can’t install it and how can I do it correctly?

I tried downloading the source and running make and I got errors (changed dollar sign for "<" because it is giving me errors when pasting it here)

> make

for file in locale/checkinstall-*.po ; do \
	case >{file} in \
		locale/checkinstall-template.po)  ;; \
		*) \
			out=`echo >file | sed -s 's/po/mo/'` ; \
			msgfmt -o >{out} >{file} ; \
			if [ >? != 0 ] ; then \
				exit 1 ; \
			fi ; \
		;; \
	esac ; \
done	
make -C installwatch
make[1]: Entering directory '/home/myuser/checkinstall-1.6.2/installwatch'
./create-localdecls
Checking truncate argument type... off_t
Checking readlinkat result type... ssize_t
Checking libc version... libc.so.6
Checking glibc subversion... Treated as glibc >= 2.1 (finger crossed)
gcc -Wall -c -D_GNU_SOURCE -DPIC -fPIC -D_REENTRANT -DVERSION=\"0.7.0beta7\" installwatch.c
installwatch.c: In function ‘true_stat’:
installwatch.c:152:27: error: ‘_STAT_VER’ undeclared (first use in this function)
  152 |         return true_xstat(_STAT_VER,pathname,info);
      |                           ^~~~~~~~~
installwatch.c:152:27: note: each undeclared identifier is reported only once for each function it appears in
installwatch.c: In function ‘true_mknod’:
installwatch.c:156:28: error: ‘_MKNOD_VER’ undeclared (first use in this function)
  156 |         return true_xmknod(_MKNOD_VER,pathname,mode,&dev);
      |                            ^~~~~~~~~~
installwatch.c: In function ‘true_lstat’:
installwatch.c:160:28: error: ‘_STAT_VER’ undeclared (first use in this function)
  160 |         return true_lxstat(_STAT_VER,pathname,info);
      |                            ^~~~~~~~~
installwatch.c: At top level:
installwatch.c:2942:5: error: conflicting types for ‘readlink’; have ‘int(const char *, char *, size_t)’ {aka ‘int(const char *, char *, long unsigned int)’}
 2942 | int readlink(const char *path,char *buf,size_t bufsiz) {
      |     ^~~~~~~~
In file included from /usr/include/bits/sigstksz.h:24,
                 from /usr/include/signal.h:328,
                 from /usr/include/sys/param.h:28,
                 from installwatch.c:31:
/usr/include/unistd.h:838:16: note: previous declaration of ‘readlink’ with type ‘ssize_t(const char * restrict,  char * restrict,  size_t)’ {aka ‘long int(const char * restrict,  char * restrict,  long unsigned int)’}
  838 | extern ssize_t readlink (const char *__restrict __path,
      |                ^~~~~~~~
installwatch.c:3080:5: error: conflicting types for ‘scandir’; have ‘int(const char *, struct dirent ***, int (*)(const struct dirent *), int (*)(const void *, const void *))’
 3080 | int scandir(    const char *dir,struct dirent ***namelist,
      |     ^~~~~~~
In file included from installwatch.c:49:
/usr/include/dirent.h:257:12: note: previous declaration of ‘scandir’ with type ‘int(const char * restrict,  struct dirent *** restrict,  int (*)(const struct dirent *), int (*)(const struct dirent **, const struct dirent **))’
  257 | extern int scandir (const char *__restrict __dir,
      |            ^~~~~~~
installwatch.c:3692:5: error: conflicting types for ‘scandir64’; have ‘int(const char *, struct dirent64 ***, int (*)(const struct dirent64 *), int (*)(const void *, const void *))’
 3692 | int scandir64(  const char *dir,struct dirent64 ***namelist,
      |     ^~~~~~~~~
/usr/include/dirent.h:280:12: note: previous declaration of ‘scandir64’ with type ‘int(const char * restrict,  struct dirent64 *** restrict,  int (*)(const struct dirent64 *), int (*)(const struct dirent64 **, const struct dirent64 **))’
  280 | extern int scandir64 (const char *__restrict __dir,
      |            ^~~~~~~~~
installwatch.c: In function ‘true_stat’:
installwatch.c:153:1: warning: control reaches end of non-void function [-Wreturn-type]
  153 | }
      | ^
installwatch.c: In function ‘true_lstat’:
installwatch.c:161:1: warning: control reaches end of non-void function [-Wreturn-type]
  161 | }
      | ^
installwatch.c: In function ‘true_mknod’:
installwatch.c:157:1: warning: control reaches end of non-void function [-Wreturn-type]
  157 | }
      | ^
make[1]: *** [Makefile:22: installwatch.o] Error 1
make[1]: Leaving directory '/home/myuser/checkinstall-1.6.2/installwatch'
make: *** [Makefile:11: all] Error 2