C++ Unix: аналог MoveFile

Тема в разделе "WASM.BEGINNERS", создана пользователем WaterGhost, 5 окт 2011.

  1. WaterGhost

    WaterGhost New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2007
    Сообщения:
    130
    Всем привет. Никак не могу найти аналоги MoveFile (заодно если знаете подскажите пожалуйста аналоги CopyFile, DeleteFile, RemoveDirectory и средств FindFirstFile\FindNextFile\FindClose. Я их пока не искал, может там и просто, но раз уж создал тему...) в Unix (CentOS 6.0). Все перерыл. Наткнулся на FileSystemObject (fso), но все никак не могу понять как его использовать и какие модули подключать для его работы. Помогите, пожалуйста. Спасибо
     
  2. Ezrah

    Ezrah Member

    Публикаций:
    0
    Регистрация:
    22 мар 2011
    Сообщения:
    411
    #include <stdio.h> не?
     
  3. WaterGhost

    WaterGhost New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2007
    Сообщения:
    130
    Подключал. Нет там объявления MoveFile().

    Еще одна проблема появилась. Подключен модуль #include <pthread.h>. На стадии линковки процесс компиляции прерывается и выдает:

    Код (Text):
    1. /home/waterghost/workspace/Test/Debug/../src/Thread_PreInstalledServersProvider.cpp:81: undefined reference to `pthread_attr_setstacksize'
    2. /home/waterghost/workspace/Test/Debug/../src/Thread_PreInstalledServersProvider.cpp:87: undefined reference to `pthread_create'
    Что не так ему?=\ Функции объявлены в модуле pthread и даже их объявления показываются при наведении на них.
    Компилирую при помощи Eclipse.
     
  4. Ezrah

    Ezrah Member

    Публикаций:
    0
    Регистрация:
    22 мар 2011
    Сообщения:
    411
    Серьёзно? А я-то думал API функции Windows доступны в любой системе.
    Могу сказать больше -- там нет ни одной Windows API функции, однако функции для работы с фалами там есть.
     
  5. zicker

    zicker Member

    Публикаций:
    0
    Регистрация:
    23 дек 2008
    Сообщения:
    132
  6. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    да ты что!? должна быть... эта наверное эклипс тупит)))

    libpthread.a
     
  7. WaterGhost

    WaterGhost New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2007
    Сообщения:
    130
    Как только проблема возникла сразу же проверил эту либу. Во всей файловой системе нет файла с названием libpthread.a.
     
  8. Microedition

    Microedition Active Member

    Публикаций:
    0
    Регистрация:
    5 июн 2008
    Сообщения:
    814
    См. syscalls.h, dirent.h
     
  9. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.323
    ну и что ты хочешь от нас? я вижу несколько решений:
    1) искать "во всей файловой системе" лучше...
    2) попробовать ключ -pthread вместо -lpthread, но я был уверен, что это аспект касается только FreeBSD и некоторых ее потомков...
    3) переустанавливать свои билд-тулзы из репозиториев...
    4) скачать libpthread.a откуда-нить при наличии libpthread.so "во всей файловой системе"...
     
  10. WaterGhost

    WaterGhost New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2007
    Сообщения:
    130
    Добавил к параметрам линковщика -lpthread и все заработало. Спасибо :) Буду химичить дальше