749 / UltraDefrag4Linux

UltraDefrag4Linux is a disk defragmenter for NTFS and FAT running on Linux, which supports defragmentation of locked system files by running during the boot process. It is easy to use without any complicated scripting or a huge load of configuration settings. You can filter the files processed by size, number of fragments, file name and path. You can terminate the process early by specifying an execution time limit.
11 stars 1 forks source link

linkage failure on Gentoo Linux #2

Open wschlich opened 1 week ago

wschlich commented 1 week ago

UltraDefrag4Linux fails to link on Gentoo Linux:

[...]
ld -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o udefrag -M \
        /usr/lib64/crt1.o /usr/lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/13/crtbegin.o \
        console/console.a dll/udefrag/udefrag.a dll/zenwinx/zenwinx.a \
        wincalls/wincalls.a /lib64/libntfs-3g.so.*.0.0 \
        -lgcc -L/usr/lib/gcc/x86_64-pc-linux-gnu/13 -L/usr/lib64 -lc -lm -lpthread -lncurses \
        /usr/lib/gcc/x86_64-pc-linux-gnu/13/crtend.o /usr/lib64/crtn.o > udefrag.map
ld: wincalls/wincalls.a(curses.o): undefined reference to symbol 'stdscr'
ld: /usr/lib64/libtinfo.so.6: error adding symbols: DSO missing from command line
make: *** [Makefile:72: udefrag] Error 1

/usr/lib64/libtinfo.so.6 belongs to the following ncurses package version:

[wschlich@zephyr(pts/12):src]$ qfile -v /usr/lib64/libtinfo.so.6
sys-libs/ncurses-6.4_p20240414: /usr/lib64/libtinfo.so.6 -> libtinfo.so.6.4
[wschlich@zephyr(pts/12):src]$ 
749 commented 4 days ago

Thank you for your interest. I mostly built this repository because I wanted to see what if any Features where added in the Windows version. But I realized, that they just added a UI on Top and that is it.

The only addition of mine is adding colors to the console output: https://github.com/749/UltraDefrag4Linux/commit/6a6b3229879b7a482671292a7ca86faad1c92cd9

I do not have gentoo experience nor the time to support it. I would be happy to merge any fixes, when you find them though.