Ubuntu Suomen keskustelualueet

Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: pere - 29.10.16 - klo:08.02

Otsikko: gcc ihmettelyä [ratkaistu]
Kirjoitti: pere - 29.10.16 - klo:08.02
Päivitin ubuntun versioon 16.10.
Sen jälkeen on gcc tuottanut vain tiedostoja ELF 64-bit LSB shared object, x86-64
kun pitäisi olla ELF 64-bit LSB executable, x86-64

gcc --version
gcc (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005

Käännettävä lähdekoodi ja makefile on sama kuin aikaisemminkin.

Niin ja minulla on myös fedora 25 (vielä testi versio) siinä kuitenkin sama ohjelma kääntyy oikein.

fedoran  gcc --version
gcc (GCC) 6.2.1 20160916 (Red Hat 6.2.1-2)

Mitähän tässä nyt täytyisi tehdä, ehkä joku lisä vipu?

Otsikko: Vs: gcc ihmettelyä
Kirjoitti: nm - 29.10.16 - klo:11.02
Päivitin ubuntun versioon 16.10.
Sen jälkeen on gcc tuottanut vain tiedostoja ELF 64-bit LSB shared object, x86-64
kun pitäisi olla ELF 64-bit LSB executable, x86-64

16.10:ssä GCC:ssä on oletuksena päällä -fPIE (position-independent executable (https://en.wikipedia.org/wiki/Position-independent_code#Position-independent_executables)): https://wiki.ubuntu.com/SecurityTeam/PIE

Ominaisuuden voi kytkeä pois päältä gcc:n vivulla -no-pie

Miksi shared object -binääri ei kelpaa?
Otsikko: Vs: gcc ihmettelyä
Kirjoitti: pere - 29.10.16 - klo:12.11
Päivitin ubuntun versioon 16.10.
Sen jälkeen on gcc tuottanut vain tiedostoja ELF 64-bit LSB shared object, x86-64
kun pitäisi olla ELF 64-bit LSB executable, x86-64

16.10:ssä GCC:ssä on oletuksena päällä -fPIE (position-independent executable (https://en.wikipedia.org/wiki/Position-independent_code#Position-independent_executables)): https://wiki.ubuntu.com/SecurityTeam/PIE

Ominaisuuden voi kytkeä pois päältä gcc:n vivulla -no-pie

Miksi shared object -binääri ei kelpaa?

Ai, toimiihan se luulin vain että se on jotenkin väärin kun ennen aina oli tuo executable.
ja tiedoston hallinnassa sen kuvake ei ole enää "suoritettava ohjelma"

ja toinen asia, en tiedä liittyykö tähän mutta on ilmennyt toinenkin omituisuus.
Jos joku oma tekemä gtk+ ohjelma on jo käynnissäa niin jonkun toisen oman
ohjelman käynnistys avaa vain jo käynnissä olevan ohjelman toisen kopion
eikä sitä minkä käynnistin.
No tätä omituisuutta en ole vielä tarkemmin tutkinut.


Otsikko: Vs: gcc ihmettelyä
Kirjoitti: nm - 29.10.16 - klo:12.22
Ai, toimiihan se luulin vain että se on jotenkin väärin kun ennen aina oli tuo executable.
ja tiedoston hallinnassa sen kuvake ei ole enää "suoritettava ohjelma"

Pitäisi raportoida tuo bugi, jos joku ei ole sitä jo tehnyt.

ja toinen asia, en tiedä liittyykö tähän mutta on ilmennyt toinenkin omituisuus.
Jos joku oma tekemä gtk+ ohjelma on jo käynnissäa niin jonkun toisen oman
ohjelman käynnistys avaa vain jo käynnissä olevan ohjelman toisen kopion
eikä sitä minkä käynnistin.

Päätteen kautta käynnistäessä varmaankin lähtee oikea ohjelma käyntiin?
Otsikko: Vs: gcc ihmettelyä
Kirjoitti: pere - 06.11.16 - klo:17.07
Ai, toimiihan se luulin vain että se on jotenkin väärin kun ennen aina oli tuo executable.
ja tiedoston hallinnassa sen kuvake ei ole enää "suoritettava ohjelma"

Pitäisi raportoida tuo bugi, jos joku ei ole sitä jo tehnyt.

ja toinen asia, en tiedä liittyykö tähän mutta on ilmennyt toinenkin omituisuus.
Jos joku oma tekemä gtk+ ohjelma on jo käynnissäa niin jonkun toisen oman
ohjelman käynnistys avaa vain jo käynnissä olevan ohjelman toisen kopion
eikä sitä minkä käynnistin.

Päätteen kautta käynnistäessä varmaankin lähtee oikea ohjelma käyntiin?

Tämä asia selvisi siten että olin jättänyt vahingossa kahteen ohjelmaan saman application_id:n
vaikka ohjelmatiedoston nimi oli eri.
Ja sillä -no-pie vipusella ohjelma on taas executable.