/usr/bin/ld: ne peut trouver -lcudart

Je reçois le message suivant, tout en essayant de compiler un programme CUDA:

/usr/bin/ld: ne peut trouver -lcudart

N'a jamais eu ce genre d'erreur avant. Est-ce un problème avec mon CHEMIN?

Voici la commande de la compilation:

gfortran -g -O2 -ffree-la longueur de la ligne-aucun -I../shared/-o
../../bin/xspecfem3D ../../obj/spec/program_specfem3D.o
../../obj/spec/specfem3D_par.o ../../obj/spec/PML_init.o
../../obj/spec/compute_boundary_kernel.o
../../obj/spec/compute_kernels.o
../../obj/spec/compute_forces_acoustic.o
../../obj/spec/compute_forces_acoustic_pot.o
../../obj/spec/compute_forces_acoustic_PML.o
../../obj/spec/compute_forces_elastic.o
../../obj/spec/compute_forces_elastic_Dev.o
../../obj/spec/compute_forces_elastic_noDev.o
../../obj/spec/compute_forces_elastic_Dev_openmp.o
../../obj/spec/compute_add_sources_acoustic.o
../../obj/spec/compute_add_sources_elastic.o
../../obj/spec/compute_coupling_acoustic_el.o
../../obj/spec/compute_coupling_elastic_ac.o
../../obj/spec/compute_stacey_acoustic.o
../../obj/spec/compute_stacey_elastic.o
../../obj/spec/compute_gradient.o
../../obj/spec/compute_interpolated_dva.o
../../obj/spec/initialize_simulation.o
../../obj/spec/read_mesh_databases.o ../../obj/spec/setup_GLL_points.o
../../obj/spec/write_movie_output.o
../../obj/spec/create_color_image.o ../../obj/spec/write_seismograms.o
../../obj/spec/write_output_ASCII.o
../../obj/spec/detect_mesh_surfaces.o
../../obj/spec/setup_movie_meshes.o
../../obj/spec/read_topography_bathymetry.o
../../obj/spec/setup_sources_receivers.o
../../obj/spec/prepare_timerun.o ../../obj/spec/iterate_time.o
../../obj/spec/finalize_simulation.o
../../obj/spec/save_adjoint_kernels.o ../../obj/spec/specfem3D.o
../../obj/spec/assemble_MPI_vector.o ../../obj/spec/make_gravity.o
../../obj/spec/noise_tomography.o ../../lib/libspecfem.un
../../obj/spec/check_fields_cuda.cuda.o
../../obj/spec/compute_add_sources_acoustic_cuda.cuda.o
../../obj/spec/compute_add_sources_elastic_cuda.cuda.o
../../obj/spec/compute_coupling_cuda.cuda.o
../../obj/spec/compute_forces_acoustic_cuda.cuda.o
../../obj/spec/compute_forces_elastic_cuda.cuda.o
../../obj/spec/compute_kernels_cuda.cuda.o
../../obj/spec/compute_stacey_acoustic_cuda.cuda.o
../../obj/spec/compute_stacey_elastic_cuda.cuda.o
../../obj/spec/it_update_displacement_cuda.cuda.o
../../obj/spec/noise_tomography_cuda.cuda.o
../../obj/spec/prepare_mesh_constants_cuda.cuda.o
../../obj/spec/transfer_fields_cuda.cuda.o
../../obj/spec/write_seismograms_cuda.cuda.o
../../obj/spec/save_and_compare_cpu_vs_gpu.cudacc.o
../../obj/spec/série.o -lcuda -lcudart -lcublas

/usr/bin/ld: ne peut trouver -lcudart

collect2: ld a retourné 1 code de sortie

Edit:

J'ai changé le lien de commande à

gfortran -g -O2 -ffree-la longueur de la ligne-aucun -I../shared/-L$CUDA_HOME/lib [reste suit]

Et tous mes Chemins semble être OK, mais j'ai encore la même erreur.

Edit2:

L'erreur est que le code j'ai essayé de compiler était en 64 bits, j'ai donc besoin de donner le chemin d'accès d'un diferent ensemble de .alors , qui sont situés sur

/usr/local/cuda/lib64

Maintenant la compilation marche bien et sans aucun problème.

Vous pouvez poster la commande de la compilation ou makefile vous êtes en utilisant pour cela?
Bien sûr, mais c'est vraiment un peu gros...
Avez-vous le CUDA toolkit installé ?
Bien sûr, je l'ai installé à côté de la CUDA lui-même

OriginalL'auteur Imperian | 2012-03-09