Форум программистов, компьютерный форум CyberForum.ru

[MPI] Ошибки линковки - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.68
Kill100
 Аватар для Kill100
356 / 245 / 32
Регистрация: 11.12.2010
Сообщений: 1,058
Завершенные тесты: 1
21.02.2013, 23:22     [MPI] Ошибки линковки #1
Надо было написать проект который складывает числа в массиве. И выводит сумму. Одно из требований использование MPI.
Но при компиляции выбивает ошибку.
Ошибка 1 error LNK1104: не удается открыть файл "libmmdd.lib" C:\PP\MPI\Project0\Project0\LINK Project0
C++
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
57
58
59
60
61
// Project0.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <omp.h>
#include <mpi.h>
using namespace std;
 
int main(int argc, char* argv[])
{
    setlocale( LC_ALL,"Russian" );
    int n;//Количество элементов в массиве  
    int myrank=0;//Свой номер в группе
    int ranksize =0;//кол-во процессов
    cout<<"введите количество элементов \n";
    cin>>n;
    int* Array = new int[n];
    //Считываем массив с консоли
    for (int i = 0; i < n; i++)
    {
        cin>>Array[i];
    }
    //инициализация куска MPI
    MPI_Init(&argc, &argv);
 
    //Определяем свой номер в группе:
    MPI_Comm_rank(MPI_COMM_WORLD, &myrank);
    //Определяем количество процессов
    MPI_Comm_size(MPI_COMM_WORLD, &ranksize);
 
    if(myrank==0)//если это главный процесс
    {
        //отправляем элементы массива
        for (int i =0; i<n;i++)
        {
            MPI_Send(&Array[i],1,MPI_INT,0,0,MPI_COMM_WORLD);
        }
    }
    else //иначе если это не главный то получаем
    {
        //число которое получили
        int chislo =0, summ=0;
        //Статус процесса получения
        MPI_Status status;
        //получаем
        MPI_Recv(&chislo, 1, MPI_INT, 0, 0,MPI_COMM_WORLD,&status);
        summ+=chislo;
        cout<<summ;
    }
    //Ждем все процессы
    MPI_Barrier(MPI_COMM_WORLD);    
    if(myrank==0)
    {
 
 
    }
    //Завершаем кусок MPI
    MPI_Finalize();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2013, 23:22     [MPI] Ошибки линковки
Посмотрите здесь:

Ошибка линковки C++
C++ Ошибка линковки
C++ ошибки линковки с++(...
C++ Ошибки линковки LNK2005, LNK1169
Ошибки на стадии линковки C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
winst2008
 Аватар для winst2008
2 / 2 / 0
Регистрация: 25.05.2012
Сообщений: 18
22.02.2013, 18:38     [MPI] Ошибки линковки #2
Студия 10?
Kill100
 Аватар для Kill100
356 / 245 / 32
Регистрация: 11.12.2010
Сообщений: 1,058
Завершенные тесты: 1
22.02.2013, 23:17  [ТС]     [MPI] Ошибки линковки #3
Цитата Сообщение от winst2008 Посмотреть сообщение
Студия 10?
Да. А есть существенная разница для HPC Pack 2008 ???

Добавлено через 1 час 24 минуты
Вроде бы от этой проблемы избавился но появилась.
1>------ Построение начато: проект: Project0, Конфигурация: Debug x64 ------
1> Project0.cpp
1> stdafx.cpp
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Send в функции main
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Recv в функции main
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Barrier в функции main
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Comm_size в функции main
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Comm_rank в функции main
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Init в функции main
1>Project0.obj : error LNK2019: ссылка на неразрешенный внешний символ MPI_Finalize в функции main
winst2008
 Аватар для winst2008
2 / 2 / 0
Регистрация: 25.05.2012
Сообщений: 18
25.02.2013, 16:50     [MPI] Ошибки линковки #4
В настройках визуалки добавлял путь к заголовочным файлам MS MPI?
как вариант Project — Options, и до*бавь*те msmpi.lib в спи*сок до*пол*ни*тель*ных фай*лов для ком*по*нов*ки
Kill100
 Аватар для Kill100
356 / 245 / 32
Регистрация: 11.12.2010
Сообщений: 1,058
Завершенные тесты: 1
25.02.2013, 22:36  [ТС]     [MPI] Ошибки линковки #5
Цитата Сообщение от winst2008 Посмотреть сообщение
В настройках визуалки добавлял путь к заголовочным файлам MS MPI?
как вариант Project — Options, и до*бавь*те msmpi.lib в спи*сок до*пол*ни*тель*ных фай*лов для ком*по*нов*ки
Проверял все 200 раз. В итоге установил еще несколько вариантов Microsoft HPC Pack 2008, вроде бы все нормально
aleks_up
0 / 0 / 0
Регистрация: 15.02.2015
Сообщений: 1
15.02.2015, 23:03     [MPI] Ошибки линковки #6
mpich error LNK2019: ссылка на неразрешенный внешний символ
Мне помогло это

[MPI] Ошибки линковки[MPI] Ошибки линковки[MPI] Ошибки линковки


(первый раз на форуме)
Yandex
Объявления
15.02.2015, 23:03     [MPI] Ошибки линковки
Ответ Создать тему
Опции темы

Текущее время: 00:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru