|
|
|
Как использовать скомпилированную программу на cpp на другом сервере?
|
|||
|---|---|---|---|
|
#18+
Есть некая программа на срр, я ее компилировал у себя на локальном Линухе и полученный файл a.out прекрасно работает там же! Затем я перенес этот файл на хостинг моего провайдера - там он не пашет выдает синтаксическую ошибку! Перекомпиляцией исходника на сервере провайдера - полученный a.out работает прекрасно! Вопрос, почему не работал первый, скомпилированный у меня файл на сервере провайдера? Надо обязательно компилит по новой для другого Линукса? Разве полученный файл не бинарник, который должен работать на любом Линуксе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2007, 14:27:43 |
|
||
|
Как использовать скомпилированную программу на cpp на другом сервере?
|
|||
|---|---|---|---|
|
#18+
armix2000там он не пашет выдает синтаксическую ошибку! Перекомпиляцией исходника на сервере провайдера - полученный a.out работает прекрасно! Как это синтаксическую? Может Runtime error? Вы пробовали перекомпилировать исходник и по Вашим словам он удачно перекомпилировался, значит в коде не было синтаксических ошибок? Как бы то ни было, мы здесь не телепаты, приведите код ошибки, код программы, версии компиляторов установленных на Вашей локальной машине и на сервере. armix2000Надо обязательно компилит по новой для другого Линукса? Не обязательно. armix2000Разве полученный файл не бинарник, который должен работать на любом Линуксе? Теоретически должен. Нужно разбираться, возможно Вы что то делаете не правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2007, 14:55:02 |
|
||
|
Как использовать скомпилированную программу на cpp на другом сервере?
|
|||
|---|---|---|---|
|
#18+
Привести исходник не могу, могу лишь более подробно все описать! Итак, мы имеем некий my.cpp который использует класс class.cpp. Есть 2 сервера: SERVER1 - мой локальный Debiweb Linux сервер SERVER2 - сервер провайдера FreeBSD Linux сервер ДЕЙСТВИЕ - 1 Копирую на SERVER1 class.cpp и компоную class.o, затем компилирую с my.cpp - получаю a.out ВСЕ РАБОТАЕТ ХОРОШО. ДЕЙСТВИЕ - 2 Копирую на SERVER2 полученный на SERVER1 a.out получаю ошибку: $ ./a.out ELF binary type "0" not known. ./a.out: 14: Syntax error: ")" unexpected ДЕЙСТВИЕ - 3 Копирую на SERVER2 полученный на SERVER1 class.o, затем компилирую с my.cpp получаю ошибку (привожу небольшой кусок ради экономия места на форуме!): : undefined reference to `cout' class.o(.text+0x686): In function `Class::SetCodePage(Code) const': : undefined reference to `ostream::operator<<(char const *)' class.o(.text+0x69f): In function `Class::SetCodePage(Code) const': : undefined reference to `cout' class.o(.text+0x6a4): In function `Class::SetCodePage(Code) const': : undefined reference to `ostream::operator<<(char const *)' class.o(.text+0xbcb): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `cout' class.o(.text+0xbd0): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `ostream::operator<<(char const *)' class.o(.text+0xbe4): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `cout' class.o(.text+0xbe9): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `ostream::operator<<(char const *)' class.o(.text+0xbf4): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `ostream::operator<<(char const *)' class.o(.text+0xc04): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `cout' class.o(.text+0xc09): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `ostream::operator<<(char const *)' class.o(.text+0xc23): In function `Class::PrintBuffHexGetPost(void) const': : undefined reference to `cout' ДЕЙСТВИЕ - 4 Копирую на SERVER2 class.cpp и компоную class.o, затем компилирую с my.cpp - получаю a.out ВСЕ РАБОТАЕТ ХОРОШО. ДЕЙСТВИЕ - 5 Произвожу с полученными class.o, a.out на SERVER2 те же действия, только в обратном порядке на мой локальный Линукс сервер SERVER1 и получаю ошибки: $ ./a.out -bash: ./a.out: No such file or directory /tmp/ccpsgDbR.o: In function `main': /tmp/ccpsgDbR.o(.text+0x14): undefined reference to `Class::Class(void)' /tmp/ccpsgDbR.o(.text+0x28): undefined reference to `Class::SetCodePage(Code) const' /tmp/ccpsgDbR.o(.text+0x41): undefined reference to `Class::GetHttpHost(char *) const' class.o: In function `std::__verify_grouping(char const*, unsigned, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': class.o(.text+0xd): undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::size() const' class.o(.text+0x60): undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned) const' class.o(.text+0x9d): undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned) const' class.o(.text+0xc8): undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned) const' class.o: In function `Class::Class[not-in-charge]()': Как я мог понять, все зависит от разных Линукс серверов, но почему такое происходит я не могу понять! По идее, компилируется программа и ее бинарник должен работать на Любом Линуксе. ЗЫ я пробовал ДЕЙСТВИЕ - 3 на бесплатном хостинге h10.ru - там все сработало и нормально скомпилировало! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2007, 12:18:59 |
|
||
|
Как использовать скомпилированную программу на cpp на другом сервере?
|
|||
|---|---|---|---|
|
#18+
FreeBSD - это не linux, это - намного лучше. Но всё же: Если на провайдерском серевере не включена совместимость с бинарниками linux`a - то вам ничё не светит - тока подымить дома фрю и компилять по новой. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2007, 12:49:11 |
|
||
|
Как использовать скомпилированную программу на cpp на другом сервере?
|
|||
|---|---|---|---|
|
#18+
lissyara FreeBSD - это не linux, это - намного лучше. Но всё же: Если на провайдерском серевере не включена совместимость с бинарниками linux`a - то вам ничё не светит - тока подымить дома фрю и компилять по новой. Posted via ActualForum NNTP Server 1.3 На www.h10.ru стоял FreeBSD - там все нормально компилировалось! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2007, 13:58:47 |
|
||
|
|

start [/forum/topic.php?fid=25&msg=34241115&tid=1488626]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 356ms |

| 0 / 0 |
