zxcygnus píše:
Nezkoušel jste to někdo kompilovat? Marně se pokouším zkompilovat jednu, nebo druhou verzi. Zkoušel jsem kompilovat proti libspectrum 1.4.4 i proti libspectrum 1.5.0 (vyžadováno novějším emulátorem 1.6.0) a končím na chybě
undefined reference to `LIBSPECTRUM_MACHINE_CAPABILITY_128_MEMORY'
Taktéž fuse-utils... ani to se mi nezkompiluje.
Jako asi se můžu vrátit k nějaké prastaré, která mi zkompilovat šla. Jen jsem zvědavý, jestli to zkusil i někdo jiný.
Kód:
gcc --version
gcc (Gentoo 13.3.1_p20240614 p17) 13.3.1 20240614
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Pokud zkusíte a ./configure nebude nacházet libspectrum, mohlo by pomoct:
Kód:
export LIBSPECTRUM_CFLAGS=-I/usr/local/lib
export LIBSPECTRUM_LIBS=-L/usr/local/lib
nechyba ti definicia premennej PKG_CONFIG_PATH pri pustani configure?
citacia z INSTALL v adresari fuse (z gitu), je to tam sice spominane v suvislosti s kompilaciou pre windows target, ale mozno to pomoze:
Kód:
2) On Windows, using MSYS2 + Mingw-w64 toolchain, first build libspectrum:
./configure --with-fake-glib --without-libaudiofile --without-libgcrypt \
--without-zlib --without-bzip2 --prefix=/usr/local
make install
Then, build Fuse:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig \
./configure --with-win32 --without-libxml2 --without-zlib --without-png \
--prefix=/usr/local
make
ja teda kompilujem na linuxe a pre linux, ale aj ja mam v config log:
Kód:
./configure --prefix=<path> PKG_CONFIG_PATH=<path>/lib/pkgconfig/ --enable-desktop-integration
(<path> nie je doslovne, mam tam adresar do ktoreho to potom instalujem cez make install)
ak to nepomoze, co tak skusit git verziu?
alebo skusit kompilovat ako keby z gitu (teda, ja som to neskusal, tak neviem ci su na taku kompilaciu vsetky potrebne subory v tych balikoch):
citacia z INSTALL v adresari fuse (z gitu):
Kód:
Note that if you're using version of Fuse from Git rather than
one of the released tarballs, you'll need to run `autogen.sh' before
running 'configure' for the first time.
citacia z README v libspectrum adresari (opat z gitu):
Kód:
Compiling from Git
------------------
If you're using version of libspectrum from Git rather than one
of the released tarballs, you'll need to run `autogen.sh' before
running 'configure' for the first time.
takze skusit aj ten autogen pustit
ono ta referencia, co ti chyba, je v subore:
./libspectrum.c:const int LIBSPECTRUM_MACHINE_CAPABILITY_128_MEMORY = 1 << 1;
./libspectrum.c- /* 128-style memory paging */
na ktory sa odkazuje:
./libspectrum.h-extern LIBSPECTRUM_API const int
./libspectrum.h:LIBSPECTRUM_MACHINE_CAPABILITY_128_MEMORY; /* 128-style memory paging */
ale ten je vytvarany z:
./libspectrum.h.in-extern LIBSPECTRUM_API const int
./libspectrum.h.in:LIBSPECTRUM_MACHINE_CAPABILITY_128_MEMORY; /* 128-style memory paging */
tak je otazka, ci mas to libspectrum.h alebo len libspectrum.h.in a ak to pada az pri linkovani, ci fuse vidi skompilovanu kniznicu (ona PKG_CONFIG_PATH premenna by to mohla zabezpecit, samozrejme po nainstalovani kniznice cez make install). predpokladam ale, ze prave configure ma vytvorit ono libspectrum.h na zaklade libspectrum.h.in . ja by som skusil aj ten autogen ak v tych balikoch je (a ak nie je, tak by som skusil git verziu, kde okrem released funkcionality moze byt aj novsia, este nereleasnuta funkcionalita, co nemusi byt na zahodenie, a ak by ta nereleasnuta funkcionalita nebola stable, stale sa da checkoutnut verzia z release tag-u)
zxcygnus píše:
Ke stažení zde
https://sourceforge.net/projects/fuse-emulator/files/ na SourceForge, kde se progresivní mamlasové ještě nenaučili, že přímý link je link bez balastu a kravin, aby se dal použít přímo s wget a ne to pokaždé minutu odmazávat (kompiluju na jiném stroji).
mozno prave dovod urobit git clone miesto tahania balikov ;]