Python для KolibriOS

...
  • Ну если Hello World тянет, значит начать изучение можно))
    Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
  • Может ли кто?то допилить ввод в консоли и динамическую загрузку модулей на С?...
    to infinity and beyond
  • Сделал ввод с консоли (встроенная функция raw_input), SVN r3235.
    Над загрузкой модулей на C работаю.
  • Круто, молодец! У меня по Lua были наработки загрузки dll'ок, так что обращайся, если что.
  • Jaeger wrote:Сделал ввод с консоли (встроенная функция raw_input), SVN r3235.
    Над загрузкой модулей на C работаю.
    Спасибо огромнейшее, в ближайшие дни напишу парочку скриптиков.
    to infinity and beyond
  • Теперь надо разобраться со сборкой этого чуда.
    to infinity and beyond
  • make?
  • Я сначала хотел делать это под виндой, но потом пришел к выводу, что легче поставить linux и делать все из под нее.
    to infinity and beyond
  • Пожалуй, что так.
  • И снова я немогу его собрать. Сделал все по инструкции, а в ответ
    make: *** Нет правила для сборки цели `kolibri_init.c', требуемой для `kolibri_init.o'. Останов.
    to infinity and beyond
  • Ах да, собирал на Kubuntu 13.10 x86. Исходники все самые новые какие есть на svn.
    to infinity and beyond
  • kolibri_fs.c и kolibri_init.c -- символические ссылки

    kolibri_fs.c -> ../modules/kolibri/fs.c
    kolibri_init.c -> ../modules/kolibri/init.c

    Если файловая система, где создаётся рабочая копия SVN, не поддерживает символические ссылки, придётся скопировать эти файлы.
  • Всеравно не хочет собирать
    Spoiler:punk_joker@punk-joker-K54HR:~/KolibriOS/tinypy/tinypy$ make
    ../../menuetlibc/linuxtools/mgcc kolibri_net.c kolibri_net.o -I. -mpreferred-stack-boundary=2 -mincoming-stack-boundary=2
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:42:0: warning: "AF_INET6" redefined [enabled by default]
    #define AF_INET6 28 // IPv6 (not supported yet)
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:120:0: note: this is the location of the previous definition
    #define AF_INET6 10 /* IP version 6 */
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:50:0: warning: "AI_PASSIVE" redefined [enabled by default]
    #define AI_PASSIVE 1
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:324:0: note: this is the location of the previous definition
    #define AI_PASSIVE 4
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:52:0: warning: "AI_NUMERICHOST" redefined [enabled by default]
    #define AI_NUMERICHOST 4
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:322:0: note: this is the location of the previous definition
    #define AI_NUMERICHOST 1
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:69:0: warning: "MSG_PEEK" redefined [enabled by default]
    #define MSG_PEEK 0x02
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:174:0: note: this is the location of the previous definition
    #define MSG_PEEK 2
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:77:8: error: redefinition of ‘struct sockaddr’
    struct sockaddr {
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:62:8: note: originally defined here
    struct sockaddr {
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:89:8: error: redefinition of ‘struct addrinfo’
    struct addrinfo {
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:292:8: note: originally defined here
    struct addrinfo {
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:100:0: warning: "EAI_ADDRFAMILY" redefined [enabled by default]
    #define EAI_ADDRFAMILY 1
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:315:0: note: this is the location of the previous definition
    #define EAI_ADDRFAMILY -6
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:101:0: warning: "EAI_AGAIN" redefined [enabled by default]
    #define EAI_AGAIN 2
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:319:0: note: this is the location of the previous definition
    #define EAI_AGAIN -10
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:102:0: warning: "EAI_BADFLAGS" redefined [enabled by default]
    #define EAI_BADFLAGS 3
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:312:0: note: this is the location of the previous definition
    #define EAI_BADFLAGS -3
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:103:0: warning: "EAI_FAIL" redefined [enabled by default]
    #define EAI_FAIL 4
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:318:0: note: this is the location of the previous definition
    #define EAI_FAIL -9
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:104:0: warning: "EAI_FAMILY" redefined [enabled by default]
    #define EAI_FAMILY 5
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:310:0: note: this is the location of the previous definition
    #define EAI_FAMILY -1
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:105:0: warning: "EAI_MEMORY" redefined [enabled by default]
    #define EAI_MEMORY 6
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:317:0: note: this is the location of the previous definition
    #define EAI_MEMORY -8
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:106:0: warning: "EAI_NONAME" redefined [enabled by default]
    #define EAI_NONAME 8
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:313:0: note: this is the location of the previous definition
    #define EAI_NONAME -4
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:107:0: warning: "EAI_SERVICE" redefined [enabled by default]
    #define EAI_SERVICE 9
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:314:0: note: this is the location of the previous definition
    #define EAI_SERVICE -5
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:108:0: warning: "EAI_SOCKTYPE" redefined [enabled by default]
    #define EAI_SOCKTYPE 10
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:311:0: note: this is the location of the previous definition
    #define EAI_SOCKTYPE -2
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:134:5: error: conflicting types for ‘bind’
    int bind(int sockfd, struct sockaddr *my_addr, int addrlen);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:261:5: note: previous declaration of ‘bind’ was here
    int bind(int sockfd, const struct sockaddr *my_addr, socklen_t addrlen) ;
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:136:5: error: conflicting types for ‘connect’
    int connect(int sockfd, const struct sockaddr *serv_addr, int addrlen);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:260:5: note: previous declaration of ‘connect’ was here
    int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen) ;
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:137:5: error: conflicting types for ‘accept’
    int accept(int s, struct sockaddr *addr, int *addrlen);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:259:5: note: previous declaration of ‘accept’ was here
    int accept(int s, struct sockaddr *addr, socklen_t *addrlen) ;
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:138:5: error: conflicting types for ‘send’
    int send(int s, const void *buf, int len, int flags);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:265:5: note: previous declaration of ‘send’ was here
    int send(int s, const void *msg, size_t len, int flags) ;
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:139:5: error: conflicting types for ‘recv’
    int recv(int sockfd, void *buf, int len, int flags);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:262:5: note: previous declaration of ‘recv’ was here
    int recv(int s, void *buf, size_t len, int flags) ;
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:144:26: error: ‘freeaddrinfo’ redeclared as different kind of symbol
    extern void (* __stdcall freeaddrinfo)(struct addrinfo* ai);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:307:6: note: previous declaration of ‘freeaddrinfo’ was here
    void freeaddrinfo(struct addrinfo *res) ;
    ^
    In file included from kolibri_net.c:2:0:
    ../../menuetlibc/include/menuet/net.h:145:25: error: ‘getaddrinfo’ redeclared as different kind of symbol
    extern int (* __stdcall getaddrinfo)( const char* hostname, const char* servname, const struct addrinfo* hints, struct addrinfo **res);
    ^
    In file included from kolibri_net.c:1:0:
    ../../menuetlibc/include/sys/socket.h:305:5: note: previous declaration of ‘getaddrinfo’ was here
    int getaddrinfo(const char *node, const char *service, const struct
    ^
    In file included from kolibri_net.c:4:0:
    kolibri_net.c: In function ‘inet_pton’:
    tp.h:190:5: warning: ‘return’ with a value, in function returning void [enabled by default]
    return r; \
    ^
    kolibri_net.c:125:17: note: in expansion of macro ‘tp_raise’
    tp_raise(tp_None, "ValueError: number > 255 in IP address", tp_None);
    ^
    tp.h:190:5: warning: ‘return’ with a value, in function returning void [enabled by default]
    return r; \
    ^
    kolibri_net.c:132:17: note: in expansion of macro ‘tp_raise’
    tp_raise(tp_None, "ValueError: bad char in IP address, digit expected", tp_None);
    ^
    tp.h:190:5: warning: ‘return’ with a value, in function returning void [enabled by default]
    return r; \
    ^
    kolibri_net.c:142:13: note: in expansion of macro ‘tp_raise’
    tp_raise(tp_None, "ValueError: bad IP address", tp_None);
    ^
    make: *** [kolibri_net.o] Ошибка 1
    punk_joker@punk-joker-K54HR:~/KolibriOS/tinypy/tinypy$
    Хотя в прошлый раз все нормально собралось, правда в Xubuntu дело было
    to infinity and beyond
  • menuetlibc правильно собрана?
    Такое впечатление, что ../../menuetlibc/linuxtools/mgcc -- это ссылка на gcc, а не скомпилированный ../../menuetlibc/linuxtools/mgcc.c
  • Who is online

    Users browsing this forum: No registered users and 2 guests