2012-04-21 9 views
5

Zainstalowałem Point Cloud Library z ppa na Ubuntu 11.10 x86_64 (w tym pakiety deweloperskie, niekoniecznie istotne dla pytania, ale ze względu na kompletność podaję ten szczegół). Kiedy próbuję skompilować (zrobić na wygenerowanym przez cmake pliku make) mój własny kod, który używa pcl, otrzymuję błąd Procesor, który wybrałeś nie obsługuje zestawu instrukcji x86-64. Co oznacza ten błąd i co powinienem sprawdzić, aby usunąć błąd?Co oznacza błąd "Procesor, który wybrałeś nie obsługuje zestawu instrukcji x86-64"?

Odpowiedz

1

Czy używasz maszyny 64-bitowej?

Wygląda na to, że oprogramowanie jest przeznaczone dla komputerów 64-bitowych i masz 32-bitowy procesor.

+0

Wyjscie z uname -a: Linux ubuntu11 3.0.0-13-server # 22-Ubuntu SMP Wed lis 2 15:09:08 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux – Anupam

+1

Wyjście 'grep - kolor = zawsze -iw lm/proc/cpuinfo' pokazuje flagę lm, co oznacza, że ​​procesor ma zdolność 64-bitową. – Anupam

5

Oznacza to, że przekazujesz flagę do gcc, która wybiera typ procesora, który nie obsługuje wersji 64-bitowej. Na przykład być może używasz flagi takiej jak -march=prescott lub podobnej. Jak wygląda twoja linia kompilacji? Kilka użytecznych informacji na temat flag można znaleźć w Gentoo (gdzie indziej?) Wiki: http://en.gentoo-wiki.com/wiki/Safe_Cflags/Intel

+0

Mam ten sam błąd, przekazując flagę -march = i486 do gcc w RHEL6 (64-bitowy). Rozwija się, usuwając to samo. – Arvind

+3

cmake robi coś "sprytnego", co powoduje, że niewłaściwy marsz jest ustawiony, nawet jeśli jest uruchomiony na komputerze x64. To mniej więcej problem z cmake. (OP wspomniał o minake). –

Powiązane problemy