Mam obiekt C++, który konwertuję do Perl przy użyciu Perl XS. Ten proces działa dobrze z Perl 5.8.5 i 5.8.7. Ale gdy tylko spróbuję użyć Perl 5.10.0, napotkam wiele błędów kompilacji. Większość z nich są wzdłuż tych linii:Dlaczego pojawiają się błędy "undefined reference" podczas kompilowania XS z Perl 5.10?
undefined reference to 'PL_stack_max' undefined reference to 'PL_stack_sp' undefined reference to 'Perl_sv_2pv_flags' undefined reference to 'Perl_sv_setref_pv'
To mówi mi, że z jakiegoś powodu rzeczy Perl XS nie jest powiązany w prawidłowo. Kiedy przeszedłem od 5.8.5 do 5.8.7, musiałem tylko zmienić wersję i zrobić to ponownie.
Jakieś wskazówki?
perl 5.10.0 nie można uzyskać kompatybilności binarnej z 5.8.x. – ysth
@Ysth: jeśli tak mówisz. Pamiętam, jak widziałem pytanie konfiguracyjne, ale nie pamiętam, czy te pytania przychodziły z 5.10.0. Kilka razy w tym roku zbudowałem tylko Perl 5.10.0 i nie zwracałem zbyt wiele uwagi na odpowiedzi, ponieważ nigdy nie szukałem kompatybilności wstecznej, a domyślną jest "Nie". –
, ale w tym przypadku próbuję przekompilować z 5.10.0; nie używaj czegoś skompilowanego przy pomocy 5.8.5 z 5.10.0 – shergill