Fedora 42에서 Sharkey/Misskey 설치하기 (FreeBSD 수정사항 포함)

甘瀬ここあ @cocoa@hackers.pub
Fedora 42 환경에서 패치된 버전의 Misskey(Pull Request 제공됨)와 Sharkey(변경사항이 이미 적용됨)를 설치할 때, 다음과 같은 오류가 발생할 수 있습니다:
error: 'uint8_t' was not declared in this scope
error: 'state' was not declared in this scope
이러한 문제는 사용 중인 GCC 버전에서 비롯된 것으로 보입니다(참조). 아래에서는 Fedora 42에서 이러한 문제를 해결하는 방법을 설명하겠습니다.
1단계: 의존성 설치
먼저, 위키에 명시된 대로 필요한 의존성을 설치합니다:
sudo dnf install cairo-devel libjpeg-turbo-devel pango-devel giflib-devel pixman-devel
2단계: GCC/G++ 컴파일
Fedora에 번들로 제공되는 기본 GCC를 사용하면 pnpm install
을 실행할 때 설치가 실패할 수 있습니다(2025년 5월 27일 기준). 이 문제를 피하기 위해 다른 버전의 GCC/G++를 컴파일하고 사용해야 합니다.
wget을 사용하여 GCC 소스 코드를 다운로드한 다음, 압축을 풀고 소스 디렉토리로 이동합니다:
wget https://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-13.3.0/gcc-13.3.0.tar.gz
tar xzf gcc-13.3.0.tar.gz
cd gcc-13.3.0
mkdir build
cd build
다음으로, GCC/G++ 빌드에 필요한 의존성을 설치합니다:
sudo dnf group install development-tools
sudo dnf install mpfr-devel gmp-devel libmpc-devel zlib-devel glibc-devel.i686 glibc-devel isl-devel libgphobos-static
이제 빌드를 구성합니다(필요에 따라 플래그를 변경하세요):
../configure --disable-bootstrap --prefix=/usr --program-suffix=-13.3 --mandir=/usr/share/man --enable-languages=c,c++
구성 후, 다음 명령으로 GCC를 컴파일합니다:
make
더 빠른 빌드를 위해 여러 코어를 활용하려면 -j
플래그를 사용하세요:
make -j6
컴파일이 완료되면 새 GCC 버전을 설치합니다:
sudo make install
다음 명령으로 컴파일된 GCC의 설치를 확인할 수 있습니다:
gcc-13.3 -v
3단계: Misskey/Sharkey 설치 명령 수정
마지막으로, Sharkey와 Misskey를 성공적으로 설치하기 위해 설치 명령을 다음과 같이 수정합니다:
CXX=/usr/sbin/g++-13.3 CC=/usr/sbin/gcc-13.3 pnpm install --frozen-lockfile
이러한 조정으로 Misskey와 Sharkey를 문제 없이 설치할 수 있을 것입니다. Fediverse를 즐기세요!
*텍스트를 더 자연스럽게 수정하기 위해 LLM을 어느 정도 사용했습니다. 게시 전에 어느 정도 확인했지만, 부자연스러운 부분이 있으면 알려주세요.