C::B gcc fPIC – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C::B gcc fPIC – C / C++ – Fórum – Programujte.comC::B gcc fPIC – C / C++ – Fórum – Programujte.com

 

Miro17010
Stálý člen
4. 9. 2009   #1
-
0
-

pouzivam ubuntu 9, 64 bit, gcc kompilator, code::blocks. A pri kompilovani mi vypise chybu ze pre shared library mam pouzit fPIC, ale nastavil som ten parameter a stale mi to pise

EDIT: na win32 mi to slo, len som zmenil referencie

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
ondra.holub+1
Stálý člen
4. 9. 2009   #2
-
0
-

A máš to nastavené ve správném targetu? Mělo by stačit Menu->Project->Build options, nahoře vybrat překladač, vlevo target a pak na záložce Compiler Settings vybrat podzáložku Other options a připsat tam -fPIC

Nahlásit jako SPAM
IP: 89.203.160.–
Miro17010
Stálý člen
5. 9. 2009   #3
-
0
-

presne tam som to dal, a mam to v projekte, ne v targete ale skusal som aj tak. Ale ja mam 2 projekty Engine( dynamic library ), hra( console application ).

A este jedna vec, ako mam spravne pri tychto veciach nastavit to ze spolu suvisia

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
ondra.holub+1
Stálý člen
5. 9. 2009   #4
-
0
-

Tak sem napiš, jaký příkaz to při překladu píše.

Závislosti projektů lze nastavit v menu Project->Properties. Na záložce Project settings je dole tlačítko Project's dependencies. Je potřeba mít všechny ty projekty otevřené.

Nahlásit jako SPAM
IP: 89.203.160.–
Miro17010
Stálý člen
5. 9. 2009   #5
-
0
-

to som dal, a k search directories netreba dat nic, alebo link library??

ked to dam v linkoch hry tak mi v prikaze v engine pise undefined reference.
ked to dam v linkoch enginu tak mi pise:

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.3.3/../../../../lib/libglfw.a(init.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC

/usr/lib/gcc/x86_64-linux-gnu/4.3.3/../../../../lib/libglfw.a: could not read symbols: Bad value
collect2: ld returned 1 exit status

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
ondra.holub+1
Stálý člen
6. 9. 2009   #6
-
0
-

Řekl bych, že problém bude v tom, že se do dynamické knihovny přilinkovává libglfw, které ale není přeloženos -fPIC.

Nahlásit jako SPAM
IP: 89.203.160.–
Miro17010
Stálý člen
6. 9. 2009   #7
-
0
-

to som uz urobil, linkol( no vymazal a znova linkol) som glfw v hre a mi to spustilo ale mam tu druhy problem: ked zmenim nieco v engine tak sa mi ni nezmeni, sice mi to buildne(ak s chybou tak ju vypise), ale aj tak sa mi nic v to nepouzije v tom druhom projektu. Skusal som aj clean workspace, rebuild nic nepomohlo

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
Miro17010
Stálý člen
6. 9. 2009   #8
-
0
-

problem vyresieny, odstranil som v oboch projektoch rucne bin, obj, pre pokus a potom mi hodilo ze nevie nast Engine, tak som sa pozrel do Engine/bin/debug a tam uz bol len Engine.so a nie aj Engine.a ( co to vlastne je a preco ho tu teraz nemam?? ), tak som rucne nastavil cestu ku Engine.so

Nahlásit jako SPAM
IP: 85.159.104.–
začinajúci programátor v .Net: C# & OpenTK: OpenGL( pouzivam ), OpenAL( zatial nepouzivam ), OpenCL( este som neskusal )
tmi0
Věrný člen
14. 9. 2009   #9
-
0
-

*.a jsou tradicne archivy, soubory se staticky linkovanymi object fily ktere se pouzivaji pro staticke linkovani. Pokud delas shared objecty, tak tam *.a nemaji co delat

Nahlásit jako SPAM
IP: 213.226.226.–
ksp.mff.cuni.cz -- doporučuje 5 z 0 přetečených bufferů!
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 42 hostů

Podobná vlákna

Visual c++ vs gcc — založil rodinne.baleni.ryze

Kompilátory (GCC) — založil Bengo

ASM v gcc a C99:? — založil Jonáš

C4droid s GCC pluginem — založil Doomista

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý