Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2009, 22:39   #1
Homer_J_Simpson
Пользователь
 
Аватар для Homer_J_Simpson
 
Регистрация: 15.11.2009
Сообщений: 16
По умолчанию Компиляция под Borland

Написал программу, в ней используется компонет, написанный мной, из стороннего пакета, опять же моего.
Когда стал компилировать релизную версию, компилятор стал ругаться
[ILINK32 Error] Error: Unresolved external 'TKeyEdit::setKey(System::UnicodeSt ring)' referenced from D:\MY DOCUMENTS\PROGRAMMING\C++ PROJECTS\RADIOSAPR_B10\RELEASE\MAIN FORM.OBJ
[ILINK32 Error] Error: Unresolved external 'TKeyEdit::getKey()' referenced from D:\MY DOCUMENTS\PROGRAMMING\C++ PROJECTS\RADIOSAPR_B10\RELEASE\MAIN FORM.OBJ
[ILINK32 Error] Error: Unresolved external 'TKeyEdit::' referenced from D:\MY DOCUMENTS\PROGRAMMING\C++ PROJECTS\RADIOSAPR_B10\RELEASE\MAIN FORM.OBJ
[ILINK32 Error] Error: Unable to perform link
Я понимаю, что он не может найти класс TKeyEdit, но как мне подключить его к проекту? Более того, попробовал вернуть все настройки к прежним, всё равно отказывается компилировать.
Homer_J_Simpson вне форума Ответить с цитированием
Старый 29.11.2009, 22:43   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Может быть, у вас просто не определены объявленные функции?
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 29.11.2009, 22:45   #3
Homer_J_Simpson
Пользователь
 
Аватар для Homer_J_Simpson
 
Регистрация: 15.11.2009
Сообщений: 16
По умолчанию

С методом всё ок. Всё работало до того как полез в релизную компиляцию.
Homer_J_Simpson вне форума Ответить с цитированием
Старый 29.11.2009, 23:13   #4
Homer_J_Simpson
Пользователь
 
Аватар для Homer_J_Simpson
 
Регистрация: 15.11.2009
Сообщений: 16
По умолчанию

Цитата:
Может быть, у вас просто не определены объявленные функции?
Действительно, видимо при компиляции пропали методы, я их восстановил, но все равно осталась
[ILINK32 Error] Error: Unresolved external 'TKeyEdit::' referenced from D:\MY DOCUMENTS\PROGRAMMING\C++ PROJECTS\RADIOSAPR_B10\RELEASE\MAIN FORM.OBJ
[ILINK32 Error] Error: Unable to perform link

С чем это может быть связано?
Homer_J_Simpson вне форума Ответить с цитированием
Старый 29.11.2009, 23:38   #5
Homer_J_Simpson
Пользователь
 
Аватар для Homer_J_Simpson
 
Регистрация: 15.11.2009
Сообщений: 16
По умолчанию

В общем тут дело было с конструктором. Пришлось в тупу. закомментить в хэдере объявление конструктора. Если честно даже не представляю как сейчас всё равботет, но на вид вроде работает.
Homer_J_Simpson вне форума Ответить с цитированием
Старый 07.07.2011, 11:45   #6
cvii
Новичок
Джуниор
 
Регистрация: 25.08.2010
Сообщений: 1
По умолчанию

Пожалуйста подскажите - почему выскакивает ошибка [ILINK32 Error] Error: Unable to perform link при использовании функции SHOpenFolderAndSelectItems?
Пишу на RAD Studio XE. Пробовал и 2010 и C++Builder6 - картина одинаковая. Спасибо.
cvii вне форума Ответить с цитированием
Старый 10.03.2012, 16:24   #7
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

А как компилировать реализную версию в Rad Studio??? Там всегда debug создаеться((((((
VintProg вне форума Ответить с цитированием
Старый 29.03.2012, 17:01   #8
Andersen1313
Пользователь
 
Регистрация: 26.05.2010
Сообщений: 68
По умолчанию У меня подобная ошибка при компиляции

При компиляции выскакивают вот эти ошибки:
[ILINK32 Error] Error: Unresolved external 'IntArray::IntArray(int *, int)' referenced from D:\RAD STUDIO\PROJECTS\INTARRAY2\DEBUG\FIL E1.OBJ
[ILINK32 Error] Error: Unresolved external 'IntArray:perator [](int)' referenced from D:\RAD STUDIO\PROJECTS\INTARRAY2\DEBUG\FIL E1.OBJ
[ILINK32 Error] Error: Unresolved external 'IntArray::IntArray(IntArray&)' referenced from D:\RAD STUDIO\PROJECTS\INTARRAY2\DEBUG\FIL E1.OBJ
[ILINK32 Error] Error: Unresolved external 'IntArray::IntArray(int)' referenced from D:\RAD STUDIO\PROJECTS\INTARRAY2\DEBUG\FIL E1.OBJ
[ILINK32 Error] Error: Unable to perform link


Вот заголовочный файл от куда беру описание класса:
Код:
#ifndef INTARRAY_H
#define INTARRAY_H
class IntArray
{
public:
        //Конструкторы класса
        explicit IntArray (int sz = DefaultArraySize);
        IntArray (int *array, int array_size);
        IntArray (const IntArray &rhs);

        //Деструктор класса
        ~IntArray() { delete[] ia; }

        //Операции сравнения:
        bool operator== (const IntArray&) const;
        bool operator!= (const IntArray&) const;
        int& operator[] (int index);

        //Операции присваиния:
        IntArray& operator= (const IntArray&);

        int size() const { return _size; }
        void sort();

        int min() const;
        int max() const;

        //функция find возвращает индекс первого
        //найденного элемента массива
        //или -1, если элемент не найден

        int find (int value) const;

private:
        static const int DefaultArraySize = 12;
        int _size;
        int *ia;

        void init (int sz,int *array);
};
#endif
Вот файл где описаны конструкторы и функции:
Код:
#include "IntArray.h"
#include <cassert>
void IntArray::init (int sz, int *array)
{
        _size = sz;
        ia = new int[_size];

        for (int ix=0; ix<_size; ++ix)
                if (!array)
                        ia[ix] = 0;
                else
                        ia[ix] = array[ix];
};

IntArray::IntArray (int sz) { init (sz,0); }
IntArray::IntArray (int *array, int array_size) { init (array_size,array); }
IntArray::IntArray (const IntArray &rhs) { init (rhs._size,rhs.ia); }

int& IntArray::operator[] (int index)
{
        assert (index >= 0 && index < _size);
        return ia[index];
}
А это программа при компиляции которой возникают ошибки:
Код:
//---------------------------------------------------------------------------

#pragma hdrstop

#include <tchar.h>
#include <iostream>
#include "IntArray.h"

using namespace std;

//---------------------------------------------------------------------------

#pragma argsused
int _tmain(int argc, _TCHAR* argv[])
{
	int i;
	int array0[10];
	IntArray array1(50);
	IntArray array2(array0,10);
	for (i = 0; i < 10; i++)
		array2[i]=i;
	IntArray array3=array2;
	IntArray array4(10);
	cout << "array1 size: " << array1.size() << "\n";
	cout << "array2 size: " << array2.size() << "\n";
	cout << "array3 size: " << array3.size() << "\n";
	cout << "array4 size: " << array4.size() << "\n";
	system("pause");
	return 0;
}
//---------------------------------------------------------------------------


Файлы положил как и в папку с проектом так и в debug! Почему не видит?!
Andersen1313 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка bmp. картинки под DOS в Borland C 3.1 antn-elf Общие вопросы C/C++ 2 17.11.2009 22:50
Графика в Borland C++ v3.1 под DOS egos Помощь студентам 0 25.06.2009 00:57
Помогите,как переделать текст проги Borland С++ Builder под Microsoft visual C++ 6.0 retpecub Visual C++ 9 15.06.2009 12:17
Графика в Borland C под DOS Goldmane Помощь студентам 0 09.04.2009 22:58
borland C++под DOS Xeon332 Помощь студентам 9 20.09.2008 20:50