Hello,
j'ai un petit oprogramme fortran qui compile mais qui ne passe pas l'édition des liens... J'ai identifié le bloc qui pose problème et c'est donc uniquement ce module que je poste, lorsque je l'enlève de mon programme l'édition des liens se fait normalement:
Module:
Le message obenu a l'édition des :liens:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 MODULE dde_particle_solver USE define_DDE USE DDE_SOLVER_M CONTAINS FUNCTION DDE_SIM(CT0, CTF, CNPART, CG, CSIGMA, COMEGA) IMPLICIT NONE ! Variable declaration INTEGER :: CNPART DOUBLE PRECISION :: CT0, CTF, CG DOUBLE PRECISION, DIMENSION(CNPART) :: CSIGMA, COMEGA INTEGER :: I, J INTEGER, DIMENSION(2) :: NVAR DOUBLE PRECISION, DIMENSION(1) :: DELAY DOUBLE PRECISION, DIMENSION(CNPART) :: HISTORY TYPE(DDE_SOL) :: DDE_SIM TYPE(DDE_OPTS) :: OPTS INTENT(IN) :: CT0, CTF, CNPART, CG, CSIGMA, COMEGA ! Variable initialisation G = CG SIGMA = CSIGMA OMEGA = COMEGA NEQN = CNPART NVAR(1) = NEQN NVAR(2) = NLAGS DELAY(1) = 1.0D0 DO I = 1,NEQN HISTORY(I) = 1.0D0 + 1.0D0/I ENDDO OPTS = DDE_SET(RE=1D-8,AE=1D-10,INTERPOLATION=.TRUE.) ! Simulation DDE_SIM = DDE_SOLVER(NVAR, DDES, DELAY, HISTORY, TSPAN=(/ 0.0D0, 200.0D0 /), OPTIONS=OPTS) RETURN END FUNCTION DDE_SIM END MODULE dde_particle_solver
Si quelqu'un a une idée (je débute en fortran dc désolé si l'erreur est bidon mais je sèche..).gfortran -c src/essai.f90 -o obj/essai.o
gcc -L/home/vince/gsl-1.9/lib -lm -lgsl -lgslcblas obj/main.o obj/utils.o obj/dde.o obj/essai.o -o bin/dde
obj/essai.o: In function `__dde_particle_solver__dde_sim':essai.f90.text+0x1ac): undefined reference to `_gfortran_internal_malloc'
:essai.f90.text+0x3d7): undefined reference to `__dde_solver_m__dde_set'
:essai.f90.text+0x5ab): undefined reference to `__dde_solver_m__dkl_4'
:essai.f90.text+0x5b9): undefined reference to `_gfortran_internal_free'
collect2: ld returned 1 exit status
Je me dit que c'est peut être parce que je fait l'édition des liens avec gcc (je dois interfacer du C et du fortran), mais comme ca marche lorsque je vire ce module...
Voila merci d'avance![]()
Partager