Compilation problem

...IDE, compilers, κλπ

Συντονιστής: konnn

Compilation problem

Δημοσίευσηαπό anagno » 19 Απρ 2012, 01:21

Προσπαθώ να κάνω ένα πρόγραμμα compile και κατά την διάρκεια του make μου βγάζει το παρακάτω:

Κώδικας: Επιλογή όλων
anagno@anagno:~/Documents/CloudCompare/trunk$ make
[ 1%] Built target triangle
[ 11%] Built target CC_DLL
[ 11%] Built target GLEW
[ 13%] Built target CC_FBO
Linking CXX shared library libQCC_DB_DLL.so
/usr/bin/ld: ../Glew/libGLEW.a(glew.c.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
../Glew/libGLEW.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libs/qCC_db/libQCC_DB_DLL.so] Error 1
make[1]: *** [libs/qCC_db/CMakeFiles/QCC_DB_DLL.dir/all] Error 2
make: *** [all] Error 2
anagno@anagno:~/Documents/CloudCompare/trunk$


Γνωρίζει κανείς ποιο ακριβώς είναι το πρόβλημα ???

Ευχαριστώ εκ των προτέρων :)
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό modenas88 » 19 Απρ 2012, 01:38

anagno έγραψε:~/Documents/CloudCompare/trunk

Μήπως πρέπει να πας σε διαφορετική διαδρομή ;

Αν όχι, δείξε μας τον σύνδεσμο για τον πηγαίο κώδικα.
Γνώσεις ⇛ Linux: Μέτριο ┃ Προγραμματισμός: Λίγο (Pascal>mysql>html>uml>C) ┃ Αγγλικά: Καλά
Διανομές ⇛ Ubuntu 12.04 64-bit [κανονική εγκατάσταση, ΌΧΙ wubi] +..
Προδιαγραφές ⇛ Pentium IV 64-bit!│ RAM 3GB │ GeForce 6200 TurboCache │ HD Audio │ TFT 19"
# < Τί είναι το Linux; >_&&_< Γιατί το Linux είναι καλύτερο? >_&&_< Κάτι δεν πάει καλά με τα Vista >
Αν είσαι αρχάριος στο Ubuntu, ακούμπησε το ποντίκι στην λέξη... drivers ;)
Άβαταρ μέλους
modenas88
daemonTUX
daemonTUX
 
Δημοσιεύσεις: 815
Εγγραφή: 16 Νοέμ 2008, 22:21
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό anagno » 19 Απρ 2012, 01:51

modenas88 έγραψε:
anagno έγραψε:~/Documents/CloudCompare/trunk

Μήπως πρέπει να πας σε διαφορετική διαδρομή ;

Αν όχι, δείξε μας τον σύνδεσμο για τον πηγαίο κώδικα.


Τον πηγαίο κώδικα τον βρίσκεις εδώ.

Νομίζω πως το πρόβλημα από αυτά που έψαξα είναι ότι το glew έχει κάποια θέματα με τα 64bit, αν και δεν κατάλαβα και πολύ καλά ...
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό simosx » 19 Απρ 2012, 01:54

anagno έγραψε:
/usr/bin/ld: ../Glew/libGLEW.a(glew.c.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC


Πρέπει να τροποποιήσεις το Makefile ώστε τα CFLAGS να προστεθεί το -fPIC. Και μεταγλωττίζεις ξανά.
Μου έτυχε το ίδιο πράγμα σε μένα, με κάποιο άλλο πακέτο.
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό anagno » 19 Απρ 2012, 02:20

simosx έγραψε:
Πρέπει να τροποποιήσεις το Makefile ώστε τα CFLAGS να προστεθεί το -fPIC. Και μεταγλωττίζεις ξανά.
Μου έτυχε το ίδιο πράγμα σε μένα, με κάποιο άλλο πακέτο.


Πως ακριβώς το κάνω αυτό ???
Παραθέτω το αρχείο του cmakelist

Κώδικας: Επιλογή όλων
cmake_minimum_required(VERSION 2.8)

project( CloudCompare )

# Default debug suffix for libraries
set( CMAKE_DEBUG_POSTFIX d )

if( UNIX )
list( APPEND CMAKE_CXX_FLAGS "-fPIC" )
endif()

if( MSVC )
OPTION( OPTION_MP_BUILD "Check to activate multithreaded compilation with MSVC" OFF )
if( ${OPTION_MP_BUILD} )
set( CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}\ /MP)
endif()
endif()

# Default install folders
# (_debug suffix is automatically added for debug configurations)
set( INSTALL_DESTINATIONS qCC )

# CCViewer
OPTION( OPTION_BUILD_CCVIEWER "Check to compile CCViewer project" ON )
if( ${OPTION_BUILD_CCVIEWER} )
list( APPEND INSTALL_DESTINATIONS ccViewer )
endif()

# Load advanced scripts
include( CMakeInclude.cmake )

add_subdirectory( CC )

# Add external libraries
include( CMakeExternalLibs.cmake )
# Libs requested by both qCC & ccViewer
add_subdirectory( libs/Glew )
add_subdirectory( libs/CCFbo )
add_subdirectory( libs/qCC_db )

# liblas support
include( LiblasSupport.cmake )

# qCC
add_subdirectory( qCC )

# CCViewer
if( ${OPTION_BUILD_CCVIEWER} )
add_subdirectory( ccViewer )
endif()
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό simosx » 19 Απρ 2012, 02:26

anagno έγραψε:
if( UNIX )
list( APPEND CMAKE_CXX_FLAGS "-fPIC" )
endif()


Αυτή η εντολή προσθέτει αυτόματα το -fPIC. Ίσως για Linux το UNIX να μην ταιριάζει (θα έπρεπε να ταιριάζει).
Μπορείς να αντικαταστήσεις το παραπάνω με
έγραψε: list( APPEND CMAKE_CXX_FLAGS "-fPIC" )

και να δοκιμάσεις ξανά. Για τη σωστή επαναμεταγλώττιση, τρέχεις και ένα make clean ώστε να παραχθούν τα object files ξανά.
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό anagno » 19 Απρ 2012, 02:38

simosx έγραψε:και να δοκιμάσεις ξανά. Για τη σωστή επαναμεταγλώττιση, τρέχεις και ένα make clean ώστε να παραχθούν τα object files ξανά.


Ξαναδοκίμασα και έβγαλε το ίδιο :

Κώδικας: Επιλογή όλων
Linking CXX shared library libQCC_DB_DLL.so
/usr/bin/ld: ../Glew/libGLEW.a(glew.c.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
../Glew/libGLEW.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libs/qCC_db/libQCC_DB_DLL.so] Error 1
make[1]: *** [libs/qCC_db/CMakeFiles/QCC_DB_DLL.dir/all] Error 2
make: *** [all] Error 2


Μήπως υπάρχει κάποιο άλλο αρχείο που πρέπει να αλλάξω ??? Η είναι κάτι άλλο ???
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό pros » 22 Απρ 2012, 10:06

Δοκίμασε πριν το make να εκτελέσεις

Κώδικας: Επιλογή όλων
export CFLAGS=-"fPIC"
10.04 / 12.04 64bit
Άβαταρ μέλους
pros
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 3534
Εγγραφή: 28 Ιαν 2009, 22:28
IRC: sterios
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό anagno » 22 Απρ 2012, 13:07

pros έγραψε:Δοκίμασε πριν το make να εκτελέσεις

Κώδικας: Επιλογή όλων
export CFLAGS=-"fPIC"


Δυστυχώς επειδή βιαζόμουν εγκατέστησα τα 32 bit ... Αλλά μόλις βγει η σταθερή έκδοση θα περάσω πάλι στα 64 bit ... Θα το δοκιμάσω και θα σου πω :)

Thanks για τον χρόνο που αφιέρωσες
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Compilation problem

Δημοσίευσηαπό simosx » 22 Απρ 2012, 22:26

anagno έγραψε:
simosx έγραψε:και να δοκιμάσεις ξανά. Για τη σωστή επαναμεταγλώττιση, τρέχεις και ένα make clean ώστε να παραχθούν τα object files ξανά.


Ξαναδοκίμασα και έβγαλε το ίδιο :

Κώδικας: Επιλογή όλων
Linking CXX shared library libQCC_DB_DLL.so
/usr/bin/ld: ../Glew/libGLEW.a(glew.c.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
../Glew/libGLEW.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libs/qCC_db/libQCC_DB_DLL.so] Error 1
make[1]: *** [libs/qCC_db/CMakeFiles/QCC_DB_DLL.dir/all] Error 2
make: *** [all] Error 2


Μήπως υπάρχει κάποιο άλλο αρχείο που πρέπει να αλλάξω ??? Η είναι κάτι άλλο ???


Δοκίμασα να μεταγλωττίσω το πακέτο και λαμβάνω το ίδιο σφάλμα με fPIC. Δεν κατάφερα να το παρακάμψω, μιας και δε γνωρίζω πολλά για cmake και το πως λειτουργεί. Αυτό που προτείνω είναι να γραφτείς στη λίστα ανάπτυξης του λογισμικού (developer mailing list) και να εκθέσεις το πρόβλημα. Το πιο πιθανό είναι να δοθεί μια τελική λύση πολύ γρήγορα.
προσωπικό ιστολόγιο ϗ πλανήτης Ubuntu-gr
Συμβάλετε και εσείς στο ελληνικό βιβλίο Ubuntu!
1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.10 saucy 3.11.0-031100rc1-generic 64bit (el_GR.UTF-8, Unity ubuntu)
3 AMD E-450 APU with Radeon HD Graphics ‖ RAM 3555 MiB ‖ Sony Corporation VAIO
4 AMD nee ATI Wrestler [Radeon HD 6320] [1002:9806] {fglrx_pci}
5 eth0: Atheros Inc. AR8151 v2.0 Gigabit Ethernet [1969:1083] (rev c0) ⋮ wlan0: Atheros Inc. AR9285 [168c:002b] (rev 01)
Φτιάξτε και εσείς τη δική σας υπογραφή (παραπάνω κείμενο) αυτόματα με κλικ εδώ!
simosx
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 10334
Εγγραφή: 11 Μάιος 2008, 18:52
Launchpad: simosx
IRC: simosx
Εκτύπωση

Επόμενο

Επιστροφή στο Εφαρμογές για Ανάπτυξη Λογισμικού