ВНИМАНИЕ! На форуме завершено голосование в конкурсе - астрофотография месяца - АПРЕЛЬ!
0 Пользователей и 1 Гость просматривают эту тему.
Переменные окружения, необходимые для компилятора, прописаны? Попробуйте скомпилировать всё же компилятором для С++, который зовётся g++И полезная ссылка по теме: http://stackoverflow.com/questions/329059/what-is-gxx-personality-v0-for
/*This program is free software; you can redistribute it and/or modifyit under the terms of the GNU Library General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Copyright (C) 2003 Liam Girdwood <liam@gnova.org>A simple example showing some solar calculations.*/#include <stdio.h>#include <libnova/solar.h>#include <libnova/julian_day.h>#include <libnova/rise_set.h>#include <libnova/transform.h>void print_date (char * title, struct ln_zonedate* date){ printf ("\n%s\n",title); printf (" Year : %d\n", date->years); printf (" Month : %d\n", date->months); printf (" Day : %d\n", date->days); printf (" Hours : %d\n", date->hours); printf (" Minutes : %d\n", date->minutes); printf (" Seconds : %f\n", date->seconds);}int main (int argc, char * argv[]){ struct ln_equ_posn equ; struct ln_rst_time rst; struct ln_zonedate rise, set, transit; struct ln_lnlat_posn observer; struct ln_helio_posn pos; double JD; /* observers location (Edinburgh), used to calc rst */ observer.lat = 55.92; /* 55.92 N */ observer.lng = -3.18; /* 3.18 W */ /* get Julian day from local time */ JD = ln_get_julian_from_sys(); printf ("JD %f\n", JD); /* geometric coordinates */ ln_get_solar_geom_coords (JD, &pos); printf("Solar Coords longitude (deg) %f\n", pos.L); printf(" latitude (deg) %f\n", pos.B); printf(" radius vector (AU) %f\n", pos.R); /* ra, dec */ ln_get_solar_equ_coords (JD, &equ); printf("Solar Position RA %f\n", equ.ra); printf(" DEC %f\n", equ.dec); /* rise, set and transit */ if (ln_get_solar_rst (JD, &observer, &rst) == 1) printf ("Sun is circumpolar\n"); else { ln_get_local_date (rst.rise, &rise); ln_get_local_date (rst.transit, &transit); ln_get_local_date (rst.set, &set); print_date ("Rise", &rise); print_date ("Transit", &transit); print_date ("Set", &set); } return 0;}
:~/Portable/libnova> gcc sun.c -lnovagasha@almukantarat:~/Portable/libnova> ./a.outJD 2456378.004995Solar Coords longitude (deg) 5.810619 latitude (deg) 0.000375 radius vector (AU) 0.997644Solar Position RA 5.337263 DEC 2.309609Rise Year : 2013 Month : 3 Day : 27 Hours : 9 Minutes : 56 Seconds : 3.719434Transit Year : 2013 Month : 3 Day : 27 Hours : 16 Minutes : 17 Seconds : 21.341391Set Year : 2013 Month : 3 Day : 27 Hours : 22 Minutes : 39 Seconds : 52.871337
:~/Portable/sofa/20120301_a/c/src> makegcc -c -pedantic -Wall -W -O -o iauA2af.o a2af.cgcc -c -pedantic -Wall -W -O -o iauA2tf.o a2tf.cgcc -c -pedantic -Wall -W -O -o iauAf2a.o af2a.cgcc -c -pedantic -Wall -W -O -o iauAnp.o anp.cgcc -c -pedantic -Wall -W -O -o iauAnpm.o anpm.cgcc -c -pedantic -Wall -W -O -o iauBi00.o bi00.cgcc -c -pedantic -Wall -W -O -o iauBp00.o bp00.cgcc -c -pedantic -Wall -W -O -o iauBp06.o bp06.cgcc -c -pedantic -Wall -W -O -o iauBpn2xy.o bpn2xy.cgcc -c -pedantic -Wall -W -O -o iauC2i00a.o c2i00a.cgcc -c -pedantic -Wall -W -O -o iauC2i00b.o c2i00b.cgcc -c -pedantic -Wall -W -O -o iauC2i06a.o c2i06a.cgcc -c -pedantic -Wall -W -O -o iauC2ibpn.o c2ibpn.cgcc -c -pedantic -Wall -W -O -o iauC2ixy.o c2ixy.cgcc -c -pedantic -Wall -W -O -o iauC2ixys.o c2ixys.cgcc -c -pedantic -Wall -W -O -o iauC2s.o c2s.cgcc -c -pedantic -Wall -W -O -o iauC2t00a.o c2t00a.cgcc -c -pedantic -Wall -W -O -o iauC2t00b.o c2t00b.cgcc -c -pedantic -Wall -W -O -o iauC2t06a.o c2t06a.cgcc -c -pedantic -Wall -W -O -o iauC2tcio.o c2tcio.cgcc -c -pedantic -Wall -W -O -o iauC2teqx.o c2teqx.cgcc -c -pedantic -Wall -W -O -o iauC2tpe.o c2tpe.cgcc -c -pedantic -Wall -W -O -o iauC2txy.o c2txy.cgcc -c -pedantic -Wall -W -O -o iauCal2jd.o cal2jd.cgcc -c -pedantic -Wall -W -O -o iauCp.o cp.cgcc -c -pedantic -Wall -W -O -o iauCpv.o cpv.cgcc -c -pedantic -Wall -W -O -o iauCr.o cr.cgcc -c -pedantic -Wall -W -O -o iauD2dtf.o d2dtf.cgcc -c -pedantic -Wall -W -O -o iauD2tf.o d2tf.cgcc -c -pedantic -Wall -W -O -o iauDat.o dat.cgcc -c -pedantic -Wall -W -O -o iauDtdb.o dtdb.cgcc -c -pedantic -Wall -W -O -o iauDtf2d.o dtf2d.cgcc -c -pedantic -Wall -W -O -o iauEe00.o ee00.cgcc -c -pedantic -Wall -W -O -o iauEe00a.o ee00a.cgcc -c -pedantic -Wall -W -O -o iauEe00b.o ee00b.cgcc -c -pedantic -Wall -W -O -o iauEe06a.o ee06a.cgcc -c -pedantic -Wall -W -O -o iauEect00.o eect00.cgcc -c -pedantic -Wall -W -O -o iauEform.o eform.cgcc -c -pedantic -Wall -W -O -o iauEo06a.o eo06a.cgcc -c -pedantic -Wall -W -O -o iauEors.o eors.c gcc -c -pedantic -Wall -W -O -o iauEpb.o epb.c gcc -c -pedantic -Wall -W -O -o iauEpb2jd.o epb2jd.c gcc -c -pedantic -Wall -W -O -o iauEpj.o epj.c gcc -c -pedantic -Wall -W -O -o iauEpj2jd.o epj2jd.c gcc -c -pedantic -Wall -W -O -o iauEpv00.o epv00.c gcc -c -pedantic -Wall -W -O -o iauEqeq94.o eqeq94.c gcc -c -pedantic -Wall -W -O -o iauEra00.o era00.c gcc -c -pedantic -Wall -W -O -o iauFad03.o fad03.c gcc -c -pedantic -Wall -W -O -o iauFae03.o fae03.c gcc -c -pedantic -Wall -W -O -o iauFaf03.o faf03.c gcc -c -pedantic -Wall -W -O -o iauFaju03.o faju03.c gcc -c -pedantic -Wall -W -O -o iauFal03.o fal03.c gcc -c -pedantic -Wall -W -O -o iauFalp03.o falp03.c gcc -c -pedantic -Wall -W -O -o iauFama03.o fama03.c gcc -c -pedantic -Wall -W -O -o iauFame03.o fame03.c gcc -c -pedantic -Wall -W -O -o iauFane03.o fane03.c gcc -c -pedantic -Wall -W -O -o iauFaom03.o faom03.c gcc -c -pedantic -Wall -W -O -o iauFapa03.o fapa03.c gcc -c -pedantic -Wall -W -O -o iauFasa03.o fasa03.c gcc -c -pedantic -Wall -W -O -o iauFaur03.o faur03.c gcc -c -pedantic -Wall -W -O -o iauFave03.o fave03.c gcc -c -pedantic -Wall -W -O -o iauFk52h.o fk52h.c gcc -c -pedantic -Wall -W -O -o iauFk5hip.o fk5hip.c gcc -c -pedantic -Wall -W -O -o iauFk5hz.o fk5hz.c gcc -c -pedantic -Wall -W -O -o iauFw2m.o fw2m.c gcc -c -pedantic -Wall -W -O -o iauFw2xy.o fw2xy.c gcc -c -pedantic -Wall -W -O -o iauGc2gd.o gc2gd.c gcc -c -pedantic -Wall -W -O -o iauGc2gde.o gc2gde.c gcc -c -pedantic -Wall -W -O -o iauGd2gc.o gd2gc.c gcc -c -pedantic -Wall -W -O -o iauGd2gce.o gd2gce.c gcc -c -pedantic -Wall -W -O -o iauGmst00.o gmst00.c gcc -c -pedantic -Wall -W -O -o iauGmst06.o gmst06.c gcc -c -pedantic -Wall -W -O -o iauGmst82.o gmst82.c gcc -c -pedantic -Wall -W -O -o iauGst00a.o gst00a.c gcc -c -pedantic -Wall -W -O -o iauGst00b.o gst00b.c gcc -c -pedantic -Wall -W -O -o iauGst06.o gst06.c gcc -c -pedantic -Wall -W -O -o iauGst06a.o gst06a.cgcc -c -pedantic -Wall -W -O -o iauGst94.o gst94.cgcc -c -pedantic -Wall -W -O -o iauH2fk5.o h2fk5.cgcc -c -pedantic -Wall -W -O -o iauHfk5z.o hfk5z.cgcc -c -pedantic -Wall -W -O -o iauIr.o ir.cgcc -c -pedantic -Wall -W -O -o iauJd2cal.o jd2cal.cgcc -c -pedantic -Wall -W -O -o iauJdcalf.o jdcalf.cgcc -c -pedantic -Wall -W -O -o iauNum00a.o num00a.cgcc -c -pedantic -Wall -W -O -o iauNum00b.o num00b.cgcc -c -pedantic -Wall -W -O -o iauNum06a.o num06a.cgcc -c -pedantic -Wall -W -O -o iauNumat.o numat.cgcc -c -pedantic -Wall -W -O -o iauNut00a.o nut00a.cgcc -c -pedantic -Wall -W -O -o iauNut00b.o nut00b.cgcc -c -pedantic -Wall -W -O -o iauNut06a.o nut06a.cgcc -c -pedantic -Wall -W -O -o iauNut80.o nut80.cgcc -c -pedantic -Wall -W -O -o iauNutm80.o nutm80.cgcc -c -pedantic -Wall -W -O -o iauObl06.o obl06.cgcc -c -pedantic -Wall -W -O -o iauObl80.o obl80.cgcc -c -pedantic -Wall -W -O -o iauP06e.o p06e.cgcc -c -pedantic -Wall -W -O -o iauP2pv.o p2pv.cgcc -c -pedantic -Wall -W -O -o iauP2s.o p2s.cgcc -c -pedantic -Wall -W -O -o iauPap.o pap.cgcc -c -pedantic -Wall -W -O -o iauPas.o pas.cgcc -c -pedantic -Wall -W -O -o iauPb06.o pb06.cgcc -c -pedantic -Wall -W -O -o iauPdp.o pdp.cgcc -c -pedantic -Wall -W -O -o iauPfw06.o pfw06.cgcc -c -pedantic -Wall -W -O -o iauPlan94.o plan94.cgcc -c -pedantic -Wall -W -O -o iauPm.o pm.cgcc -c -pedantic -Wall -W -O -o iauPmat00.o pmat00.cgcc -c -pedantic -Wall -W -O -o iauPmat06.o pmat06.cgcc -c -pedantic -Wall -W -O -o iauPmat76.o pmat76.cgcc -c -pedantic -Wall -W -O -o iauPmp.o pmp.cgcc -c -pedantic -Wall -W -O -o iauPn.o pn.cgcc -c -pedantic -Wall -W -O -o iauPn00.o pn00.cgcc -c -pedantic -Wall -W -O -o iauPn00a.o pn00a.cgcc -c -pedantic -Wall -W -O -o iauPn00b.o pn00b.cgcc -c -pedantic -Wall -W -O -o iauPn06.o pn06.cgcc -c -pedantic -Wall -W -O -o iauPn06a.o pn06a.cgcc -c -pedantic -Wall -W -O -o iauPnm00a.o pnm00a.cgcc -c -pedantic -Wall -W -O -o iauPnm00b.o pnm00b.cgcc -c -pedantic -Wall -W -O -o iauPnm06a.o pnm06a.cgcc -c -pedantic -Wall -W -O -o iauPnm80.o pnm80.cgcc -c -pedantic -Wall -W -O -o iauPom00.o pom00.cgcc -c -pedantic -Wall -W -O -o iauPpp.o ppp.cgcc -c -pedantic -Wall -W -O -o iauPpsp.o ppsp.cgcc -c -pedantic -Wall -W -O -o iauPr00.o pr00.cgcc -c -pedantic -Wall -W -O -o iauPrec76.o prec76.cgcc -c -pedantic -Wall -W -O -o iauPv2p.o pv2p.cgcc -c -pedantic -Wall -W -O -o iauPv2s.o pv2s.cgcc -c -pedantic -Wall -W -O -o iauPvdpv.o pvdpv.cgcc -c -pedantic -Wall -W -O -o iauPvm.o pvm.cgcc -c -pedantic -Wall -W -O -o iauPvmpv.o pvmpv.cgcc -c -pedantic -Wall -W -O -o iauPvppv.o pvppv.cgcc -c -pedantic -Wall -W -O -o iauPvstar.o pvstar.cgcc -c -pedantic -Wall -W -O -o iauPvu.o pvu.cgcc -c -pedantic -Wall -W -O -o iauPvup.o pvup.cgcc -c -pedantic -Wall -W -O -o iauPvxpv.o pvxpv.cgcc -c -pedantic -Wall -W -O -o iauPxp.o pxp.cgcc -c -pedantic -Wall -W -O -o iauRm2v.o rm2v.cgcc -c -pedantic -Wall -W -O -o iauRv2m.o rv2m.cgcc -c -pedantic -Wall -W -O -o iauRx.o rx.cgcc -c -pedantic -Wall -W -O -o iauRxp.o rxp.cgcc -c -pedantic -Wall -W -O -o iauRxpv.o rxpv.cgcc -c -pedantic -Wall -W -O -o iauRxr.o rxr.cgcc -c -pedantic -Wall -W -O -o iauRy.o ry.cgcc -c -pedantic -Wall -W -O -o iauRz.o rz.cgcc -c -pedantic -Wall -W -O -o iauS00.o s00.cgcc -c -pedantic -Wall -W -O -o iauS00a.o s00a.cgcc -c -pedantic -Wall -W -O -o iauS00b.o s00b.cgcc -c -pedantic -Wall -W -O -o iauS06.o s06.cgcc -c -pedantic -Wall -W -O -o iauS06a.o s06a.cgcc -c -pedantic -Wall -W -O -o iauS2c.o s2c.cgcc -c -pedantic -Wall -W -O -o iauS2p.o s2p.cgcc -c -pedantic -Wall -W -O -o iauS2pv.o s2pv.cgcc -c -pedantic -Wall -W -O -o iauS2xpv.o s2xpv.cgcc -c -pedantic -Wall -W -O -o iauSepp.o sepp.cgcc -c -pedantic -Wall -W -O -o iauSeps.o seps.cgcc -c -pedantic -Wall -W -O -o iauSp00.o sp00.cgcc -c -pedantic -Wall -W -O -o iauStarpm.o starpm.cgcc -c -pedantic -Wall -W -O -o iauStarpv.o starpv.cgcc -c -pedantic -Wall -W -O -o iauSxp.o sxp.cgcc -c -pedantic -Wall -W -O -o iauSxpv.o sxpv.cgcc -c -pedantic -Wall -W -O -o iauTaitt.o taitt.cgcc -c -pedantic -Wall -W -O -o iauTaiut1.o taiut1.cgcc -c -pedantic -Wall -W -O -o iauTaiutc.o taiutc.cgcc -c -pedantic -Wall -W -O -o iauTcbtdb.o tcbtdb.cgcc -c -pedantic -Wall -W -O -o iauTcgtt.o tcgtt.cgcc -c -pedantic -Wall -W -O -o iauTdbtcb.o tdbtcb.cgcc -c -pedantic -Wall -W -O -o iauTdbtt.o tdbtt.cgcc -c -pedantic -Wall -W -O -o iauTf2a.o tf2a.cgcc -c -pedantic -Wall -W -O -o iauTf2d.o tf2d.cgcc -c -pedantic -Wall -W -O -o iauTr.o tr.cgcc -c -pedantic -Wall -W -O -o iauTrxp.o trxp.cgcc -c -pedantic -Wall -W -O -o iauTrxpv.o trxpv.cgcc -c -pedantic -Wall -W -O -o iauTttai.o tttai.cgcc -c -pedantic -Wall -W -O -o iauTttcg.o tttcg.cgcc -c -pedantic -Wall -W -O -o iauTttdb.o tttdb.cgcc -c -pedantic -Wall -W -O -o iauTtut1.o ttut1.cgcc -c -pedantic -Wall -W -O -o iauUt1tai.o ut1tai.cgcc -c -pedantic -Wall -W -O -o iauUt1tt.o ut1tt.cgcc -c -pedantic -Wall -W -O -o iauUt1utc.o ut1utc.cgcc -c -pedantic -Wall -W -O -o iauUtctai.o utctai.cgcc -c -pedantic -Wall -W -O -o iauUtcut1.o utcut1.cgcc -c -pedantic -Wall -W -O -o iauXy06.o xy06.cgcc -c -pedantic -Wall -W -O -o iauXys00a.o xys00a.cgcc -c -pedantic -Wall -W -O -o iauXys00b.o xys00b.cgcc -c -pedantic -Wall -W -O -o iauXys06a.o xys06a.cgcc -c -pedantic -Wall -W -O -o iauZp.o zp.cgcc -c -pedantic -Wall -W -O -o iauZpv.o zpv.cgcc -c -pedantic -Wall -W -O -o iauZr.o zr.car ru libsofa_c.a iauA2af.o iauA2tf.o iauAf2a.o iauAnp.o iauAnpm.o iauBi00.o iauBp00.o iauBp06.o iauBpn2xy.o iauC2i00a.o iauC2i00b.o iauC2i06a.o iauC2ibpn.o iauC2ixy.o iauC2ixys.o iauC2s.o iauC2t00a.o iauC2t00b.o iauC2t06a.o iauC2tcio.o iauC2teqx.o iauC2tpe.o iauC2txy.o iauCal2jd.o iauCp.o iauCpv.o iauCr.o iauD2dtf.o iauD2tf.o iauDat.o iauDtdb.o iauDtf2d.o iauEe00.o iauEe00a.o iauEe00b.o iauEe06a.o iauEect00.o iauEform.o iauEo06a.o iauEors.o iauEpb.o iauEpb2jd.o iauEpj.o iauEpj2jd.o iauEpv00.o iauEqeq94.o iauEra00.o iauFad03.o iauFae03.o iauFaf03.o iauFaju03.o iauFal03.o iauFalp03.o iauFama03.o iauFame03.o iauFane03.o iauFaom03.o iauFapa03.o iauFasa03.o iauFaur03.o iauFave03.o iauFk52h.o iauFk5hip.o iauFk5hz.o iauFw2m.o iauFw2xy.o iauGc2gd.o iauGc2gde.o iauGd2gc.o iauGd2gce.o iauGmst00.o iauGmst06.o iauGmst82.o iauGst00a.o iauGst00b.o iauGst06.o iauGst06a.o iauGst94.o iauH2fk5.o iauHfk5z.o iauIr.o iauJd2cal.o iauJdcalf.o iauNum00a.o iauNum00b.o iauNum06a.o iauNumat.o iauNut00a.o iauNut00b.o iauNut06a.o iauNut80.o iauNutm80.o iauObl06.o iauObl80.o iauP06e.o iauP2pv.o iauP2s.o iauPap.o iauPas.o iauPb06.o iauPdp.o iauPfw06.o iauPlan94.o iauPm.o iauPmat00.o iauPmat06.o iauPmat76.o iauPmp.o iauPn.o iauPn00.o iauPn00a.o iauPn00b.o iauPn06.o iauPn06a.o iauPnm00a.o iauPnm00b.o iauPnm06a.o iauPnm80.o iauPom00.o iauPpp.o iauPpsp.o iauPr00.o iauPrec76.o iauPv2p.o iauPv2s.o iauPvdpv.o iauPvm.o iauPvmpv.o iauPvppv.o iauPvstar.o iauPvu.o iauPvup.o iauPvxpv.o iauPxp.o iauRm2v.o iauRv2m.o iauRx.o iauRxp.o iauRxpv.o iauRxr.o iauRy.o iauRz.o iauS00.o iauS00a.o iauS00b.o iauS06.o iauS06a.o iauS2c.o iauS2p.o iauS2pv.o iauS2xpv.o iauSepp.o iauSeps.o iauSp00.o iauStarpm.o iauStarpv.o iauSxp.o iauSxpv.o iauTaitt.o iauTaiut1.o iauTaiutc.o iauTcbtdb.o iauTcgtt.o iauTdbtcb.o iauTdbtt.o iauTf2a.o iauTf2d.o iauTr.o iauTrxp.o iauTrxpv.o iauTttai.o iauTttcg.o iauTttdb.o iauTtut1.o iauUt1tai.o iauUt1tt.o iauUt1utc.o iauUtctai.o iauUtcut1.o iauXy06.o iauXys00a.o iauXys00b.o iauXys06a.o iauZp.o iauZpv.o iauZr.oar: создаётся libsofa_c.a*** Now type 'make test' to install the library and run tests ***
:~/Portable/swe_unix_src_1.78.00/src> makecc -c -g -O9 -Wall swetest.c swetest.c: In function ‘main’:swetest.c:2080:9: warning: ‘ecl_type’ may be used uninitialized in this function [-Wmaybe-uninitialized]swetest.c:1983:20: note: ‘ecl_type’ was declared herecc -c -g -O9 -Wall swedate.c swedate.c: In function ‘swe_jdet_to_utc’:swedate.c:530:16: warning: ‘dret’ may be used uninitialized in this function [-Wmaybe-uninitialized]cc -c -g -O9 -Wall swehouse.c swehouse.c: In function ‘sidereal_houses_ssypl’:swehouse.c:359:39: warning: variable ‘epst0’ set but not used [-Wunused-but-set-variable]cc -c -g -O9 -Wall swejpl.c cc -c -g -O9 -Wall swemmoon.c cc -c -g -O9 -Wall swemplan.c cc -c -g -O9 -Wall swepcalc.c swepcalc.c: In function ‘nacalc’:swepcalc.c:141:49: warning: ‘rspeed’ may be used uninitialized in this function [-Wmaybe-uninitialized]cc -c -g -O9 -Wall sweph.c sweph.c: In function ‘swecalc’:sweph.c:2686:8: warning: ‘xxsp[2]’ may be used uninitialized in this function [-Wmaybe-uninitialized]sweph.c:2550:19: note: ‘xxsp[2]’ was declared heresweph.c:2686:8: warning: ‘xxsp[1]’ may be used uninitialized in this function [-Wmaybe-uninitialized]sweph.c:2550:19: note: ‘xxsp[1]’ was declared heresweph.c:2686:8: warning: ‘xxsp[0]’ may be used uninitialized in this function [-Wmaybe-uninitialized]sweph.c:2550:19: note: ‘xxsp[0]’ was declared herecc -c -g -O9 -Wall swepdate.c cc -c -g -O9 -Wall swephlib.c cc -c -g -O9 -Wall swecl.c swecl.c: In function ‘eclipse_where’:swecl.c:607:10: warning: variable ‘xssv’ set but not used [-Wunused-but-set-variable]swecl.c:606:23: warning: variable ‘erm’ set but not used [-Wunused-but-set-variable]swecl.c: In function ‘eclipse_how’:swecl.c:932:10: warning: variable ‘mdd’ set but not used [-Wunused-but-set-variable]swecl.c: In function ‘swe_rise_trans_true_hor’:swecl.c:3659:11: warning: variable ‘do_calc_twilight’ set but not used [-Wunused-but-set-variable]swecl.c: In function ‘swe_sol_eclipse_when_glob’:swecl.c:1336:20: warning: ‘dt2’ may be used uninitialized in this function [-Wmaybe-uninitialized]swecl.c:1335:20: warning: ‘dt1’ may be used uninitialized in this function [-Wmaybe-uninitialized]swecl.c: In function ‘swe_lun_occult_when_glob’:swecl.c:1724:20: warning: ‘dt2’ may be used uninitialized in this function [-Wmaybe-uninitialized]swecl.c:1723:20: warning: ‘dt1’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c: In function ‘swe_lun_eclipse_when’: swecl.c:3276:20: warning: ‘dt2’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c:3275:20: warning: ‘dt1’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c: In function ‘swe_lun_occult_when_loc’: swecl.c:2421:17: warning: ‘dt2’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c:2222:15: note: ‘dt2’ was declared here swecl.c:2420:17: warning: ‘dt1’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c:2222:10: note: ‘dt1’ was declared here swecl.c: In function ‘swe_sol_eclipse_when_loc’: swecl.c:2132:17: warning: ‘dt2’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c:1936:15: note: ‘dt2’ was declared here swecl.c:2131:17: warning: ‘dt1’ may be used uninitialized in this function [-Wmaybe-uninitialized] swecl.c:1936:10: note: ‘dt1’ was declared here cc -c -g -O9 -Wall swehel.c swehel.c: In function ‘SunRA’: swehel.c:529:10: warning: variable ‘tjd_tt’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘swe_heliacal_pheno_ut’: swehel.c:1813:10: warning: variable ‘OldestDeltaAlt’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘moon_event_arc_vis’: swehel.c:2061:53: warning: variable ‘i’ set but not used [-Wunused-but-set-variable] swehel.c:2061:25: warning: variable ‘eventtype’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘heliacal_ut_arc_vis’: swehel.c:2163:45: warning: variable ‘VR’ set but not used [-Wunused-but-set-variable] swehel.c:2163:41: warning: variable ‘RH’ set but not used [-Wunused-but-set-variable] swehel.c:2157:46: warning: variable ‘DayStep0’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘get_heliacal_day’: swehel.c:2709:20: warning: variable ‘tsave’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘time_limit_invisible’: swehel.c:2956:32: warning: variable ‘tjd_save’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘get_acronychal_day’: swehel.c:2997:44: warning: variable ‘dtret_save’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘moon_event_vis_lim’: swehel.c:3210:25: warning: variable ‘eventtype’ set but not used [-Wunused-but-set-variable] swehel.c:3210:16: warning: variable ‘Daystep’ set but not used [-Wunused-but-set-variable] swehel.c: In function ‘get_heliacal_day’: swehel.c:2825:23: warning: ‘direct_time’ may be used uninitialized in this function [-Wmaybe-uninitialized] swehel.c:2780:22: warning: ‘direct_day’ may be used uninitialized in this function [-Wmaybe-uninitialized]swehel.c:385:10: warning: ‘is_rise_or_set’ may be used uninitialized in this function [-Wmaybe-uninitialized]swehel.c:2707:9: note: ‘is_rise_or_set’ was declared hereswehel.c: In function ‘swe_heliacal_pheno_ut’:swehel.c:1995:12: warning: ‘MinTAV’ may be used uninitialized in this function [-Wmaybe-uninitialized]ar r libswe.a swedate.o swehouse.o swejpl.o swemmoon.o swemplan.o swepcalc.o sweph.o swepdate.o swephlib.o swecl.o swehel.oar: создаётся libswe.acc -g -O9 -Wall -o swetest swetest.o -L. -lswe -lmgasha@almukantarat:~/Portable/swe_unix_src_1.78.00/src> ./swetest ./swetest Date ?date (dmy) 1.1.1900 greg. 0:00:00 ET version 1.78.00ET: 2415020.50000000000Epsilon (true) 23°27' 5.9497Nutation 0° 0'17.4334 -0° 0' 2.2902Sun 280° 9'12.1822 0° 0' 0.2041 0.983266267 1° 1'11.4514Moon 272°25' 0.1581 1° 6'30.3755 0.002462502 14°19'21.9967Mercury 258°59'52.0883 1° 7'35.0715 1.142066975 1°16'35.7403Venus 306°22'28.1243 -1°40'59.1483 1.464596025 1°14'36.6242Mars 283°52' 3.9298 -0°55'31.4716 2.400963605 0°46'13.5220Jupiter 241° 8' 9.2798 0°48'51.3604 6.113063963 0°11'44.2376Saturn 267°43' 0.5218 1° 0'27.5983 11.024663757 0° 6'58.8954Uranus 250° 8'21.1174 0° 3'48.2169 19.837816493 0° 3'19.2932Neptune 85°13' 7.5043 -1°17'58.6637 28.920301444 -0° 1'37.9239Pluto 75°15' 4.9136 -9°46'36.9420 46.078928294 -0° 1' 2.1633mean Node 259° 9'40.7012 0° 0' 0.0000 0.002569555 -0° 3'10.4602true Node 260°16' 2.2792 0° 0' 0.0000 0.002487206 -0° 0'56.0681mean Apogee 154°19'57.9707 -4°58'29.6724 0.002710625 0° 6'43.3085warning: SwissEph file 'sepl_18.se1' not found in PATH '.:/users/ephe2/:/users/ephe/' using Moshier eph.; Date ?
t:~/Portable/swe_unix_src_1.78.00/src> gcc -lm swetest.c libswe.a :~/Portable/swe_unix_src_1.78.00/src>
if (OutFile.is_open());//cout = OutFile;а это что такое? Открыли файл - и фиг с ним?
"/usr/bin/gmake" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-confgmake[1]: Вход в каталог `/home/gasha/NetBeansProjects/libAPC/Numint'"/usr/bin/gmake" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/numintgmake[2]: Вход в каталог `/home/gasha/NetBeansProjects/libAPC/Numint'mkdir -p build/Debug/GNU-Linux-x86rm -f build/Debug/GNU-Linux-x86/Numint.o.dg++ -c -g -MMD -MP -MF build/Debug/GNU-Linux-x86/Numint.o.d -o build/Debug/GNU-Linux-x86/Numint.o Numint.cppNumint.cpp: In function ‘int main(int, char**)’:Numint.cpp:341:98: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]mkdir -p dist/Debug/GNU-Linux-x86g++ -o dist/Debug/GNU-Linux-x86/numint build/Debug/GNU-Linux-x86/Numint.o ../APC/dist/Debug/GNU-Linux-x86/libapc.agmake[2]: Выход из каталога `/home/gasha/NetBeansProjects/libAPC/Numint'gmake[1]: Выход из каталога `/home/gasha/NetBeansProjects/libAPC/Numint'СОБРАТЬ SUCCESSFUL (общее время: 566ms)
"/usr/bin/gmake" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-confgmake[1]: Вход в каталог `/home/gasha/NetBeansProjects/libAPC/Numint'"/usr/bin/gmake" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/numintgmake[2]: Вход в каталог `/home/gasha/NetBeansProjects/libAPC/Numint'mkdir -p build/Debug/GNU-Linux-x86rm -f build/Debug/GNU-Linux-x86/Numint.o.dg++ -c -g -MMD -MP -MF build/Debug/GNU-Linux-x86/Numint.o.d -o build/Debug/GNU-Linux-x86/Numint.o Numint.cppNumint.cpp: In function ‘int main(int, char**)’:Numint.cpp:341:98: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]/usr/include/c++/4.7/bits/ios_base.h: In member function ‘std::basic_ios<char>& std::basic_ios<char>::operator=(const std::basic_ios<char>&)’:In file included from /usr/include/c++/4.7/ios:43:0, from /usr/include/c++/4.7/istream:40, from /usr/include/c++/4.7/fstream:40, from Numint.cpp:20:/usr/include/c++/4.7/bits/ios_base.h:791:5: error: ‘std::ios_base& std::ios_base::operator=(const std::ios_base&)’ is privateIn file included from /usr/include/c++/4.7/ios:45:0, from /usr/include/c++/4.7/istream:40, from /usr/include/c++/4.7/fstream:40, from Numint.cpp:20:/usr/include/c++/4.7/bits/basic_ios.h:64:11: error: within this context/usr/include/c++/4.7/ostream: In member function ‘std::basic_ostream<char>& std::basic_ostream<char>::operator=(const std::basic_ostream<char>&)’:In file included from /usr/include/c++/4.7/istream:41:0, from /usr/include/c++/4.7/fstream:40, from Numint.cpp:20:/usr/include/c++/4.7/ostream:56:11: note: synthesized method ‘std::basic_ios<char>& std::basic_ios<char>::operator=(const std::basic_ios<char>&)’ first required here Numint.cpp: In function ‘int main(int, char**)’:Numint.cpp:359:35: note: synthesized method ‘std::basic_ostream<char>& std::basic_ostream<char>::operator=(const std::basic_ostream<char>&)’ first required here gmake[2]: *** [build/Debug/GNU-Linux-x86/Numint.o] Ошибка 1gmake[2]: Выход из каталога `/home/gasha/NetBeansProjects/libAPC/Numint'gmake[1]: *** [.build-conf] Ошибка 2gmake[1]: Выход из каталога `/home/gasha/NetBeansProjects/libAPC/Numint'gmake: *** [.build-impl] Ошибка 2СОБРАТЬ FAILED (значение выхода 2,, общее время: 372ms)
Если обычно для вывода на экран используется конструкция cout << что-то, то здесь подразумевается подмена cout на поток, связанный с открытым файлом. Если комментарий снять, то куча ошибок и ничего не компилируется.
При таком раскладе, если Numint запускается без параметров, то расчёт выводится на экран, если с параметрами (./Numint Numint.dat Numint.txt), то в консоли пусто и вся информация в файле Numint.txt
Чтобы организовать вывод в файл, нужно подключить #include <fstream>, объявить поток для записи ofstream OutFile и привязать поток к файлу OutFile.open(OutputFile).
С одной стороны задача решена. Но хотелось бы, чтобы и на экран тоже выводилось. И не хотелось бы дублировать код.
Цитата: gasha от 13 Апр 2013 [12:05:23]Чтобы организовать вывод в файл, нужно подключить #include <fstream>, объявить поток для записи ofstream OutFile и привязать поток к файлу OutFile.open(OutputFile). Необязательно знание Си для вывода в файл. Можно просто работать как с DOS-программой и функцией Shell (запуск DOS-программы). Необязательно и управление потоками. Вот как это делалось в VB: MainID = Shell("cmd.exe /k numint.exe >111.txt", 1) ' с выводом в файл >111.txtПросто-напросто используются возможности cmd.exe, встроенной в Windows
/* * File: Ephemeris.cpp * Author: gasha * * Created on 15 Апрель 2013 г., 15:59 */#include <iostream>#include "./swephexp.h"using namespace std;/* * */int main(int argc, char** argv) { swe_set_ephe_path("./"); //Тут мы указали программе, что файлы с эфемеридами надо искать в той же директории, где и сама программа swe_set_jpl_file("lnxm3000p3000.406"); //Показали программе какой файл с JPL надо использовать char *sp, sdate[AS_MAXCH], snam[40], serr[AS_MAXCH]; int jday = 15, jmon = 4, jyear = 2013; double jut = 0.0; double tjd_ut, te, x2[6]; long iflag, iflgret; int p=SE_SUN; //Просим сделать расчёт для Солнца iflag = SEFLG_JPLEPH|SEFLG_SPEED|SEFLG_EQUATORIAL; //Говорим, что надо использовать именно JPL, а также расчитать и компоненты скорости. И пусть всё будет в экваториальных координатах. tjd_ut = swe_julday(jyear,jmon,jday,jut,SE_GREG_CAL); //Вычисляем юлианскую дату iflgret = swe_calc_ut(tjd_ut, p, iflag, x2, serr); void swe_close(void); //Собственно расчёт cout << "" << endl; cout << tjd_ut << endl; cout << "" << endl; cout << " R.A. " << " Dec " << " R " << endl; cout << " " << x2[0] << " " << x2[1] << " " << x2[2] << endl; return 0;}
:~/NetBeansProjects/astro.com> g++ Ephemeris.cpp -L. -lswe -o testEphemeris.cpp: In function ‘int main(int, char**)’:Ephemeris.cpp:18:27: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]Ephemeris.cpp:20:41: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
:~/NetBeansProjects/astro.com> ./test 2.4564e+06 R.A. Dec R 23.3425 9.74587 1.00326
Такие настройки форматирования при выводе, очевидно.